Zestaw 1 - biały
1. Algorytm- określa sposób rozwiązywania pierwszego problemu czyli osiągania określonego celu.
2. Na czym polega metoda tworzenia algorytmu.
Problem - Algorytm - Program - Dane - Wykonywanie programu - Wynik
3. Do czego służą schematy blokowe. Jak oznaczamy na schemacie blokowym obloki: operacyjny, podprogram funkcji, kolekcyjny.
Schemat blokowy - jest to graficzny zapis algorytmu, pokazuje następstwo działań, nazywany sumacją działań.
4. Zintegrowane środowisko pracy w C++:
- Edytor C++ (*.cpp)
- kompilator (*.exe, *.lib)
- konsolidator (*.obj)
5. Typy całkowite - skończone, policzalne podzbiory zbiorów całkowitych.
Słowa kluczowe określające liczby całkowite:
Char - typ znakowy
Int - typ całkowity
Long - typ tzw. długich liczb całkowitych
Signal - liczby ze znakiem
Short - typ tzw. krótkie liczby całkowite
Unsignal - liczby bez znaku
Typy rzeczywiste - skończone, przeliczalne podzbiory zbioru liczb rzeczywistych
Słowa kluczowe określające liczby rzeczywiste:
Float
Double
Long double
6. Deklaracja i inicjacja zmiennej całkowitej i rzeczywistej:
float suma=0;
char a,b ='F';
int x,y=z;
long k;
wartość zainicjowana
identyfikator
7. Deklaracja stałych:
#define M 5
const int W=56;
char const * imie=”Andrzej”;
8.
a+=b a=a+b
a%=b a=a%b
a++ a=a+1
a==b a=b
a!b negacja (nierówna się)
9. Pętla powtórzeń
np.: for(1=0;i<=10;i++)
{
suma=suma+1;
}
Schemat blokowy do FOR:
10. BREAK - pozwala na opuszczenie aktualnie wykonywanej pętli for, while,do-while i przejście do instrukcji znajdującej się po zakończonej pętli.
CONTINIUE - pozwala na zakończenie bieżącej iteracji wykonywanej pętli fir, while,do-while i przejście do następnej iteracji.
RETURN - („zwróć wartość i powróć”) napotkanie instrukcji powoduje zakończenie wykonywania funkcji. Może zwracać wartość do programu głównego głównego funkcji rekurencyjnej.
11. Wartością wskaźnika jest jej adres czyli początek obszaru pamięci gdzie przechowywane są dane. Deklaracja zmiennej wskaźnikowej: int *numer; numer=&zmienna;
Aby zmienna wskaźnikowa podawała adres konkretnej zmiennej, na którą ma ona wskazywać należy użyć operatora adresowego (referencji) &, który przypisze odpowiedni adres zmiennej.
Int *zyga;
12. float a(float x,float y, float z, float q)
13. W jaki sposób mogą być przekazywane parametry do funkcji?
Parametry możemy przekazywać do funkcji przez:
- wartość - polega na skopiowaniu wartości argumentów aktualnych do pamięci argumentów formalnych;
- wskaźnik - funkcja otrzymuje kopię wartości wskaźnika;
- referencje - przekazywane przez zmienną
14. Podaj kod źródłowy funkcji do zmiany wartości między zmiennymi x i y.
void swap (int &a, int &b)
{ int c=a; a=b; b=c; }
15. Na czym polegają algorytmy przeszukiwania liniowego i binarnego.
Wyszukiwanie binarne: przykład funkcji
lewy=0
prawy=n-1
wynik=0
do{
srodek=(lewy+prawy)
if(x[srodek]==liczba
wynik=1
else
(x[srodek]<liczba>)
lewy=srodek+1
else
prawy=srodek-1
Wyszukiwanie liniowe - jest bardziej czasochłonne np. jeśli w tablicy jest 2000 elementów to: -2000 porównań liniowych; - 14 porównań binarnych
16. Jaka jest organizacja ekranu w trybie tekstowym?
17. Podaj składnię funkcji do inicjacji i zamknięcia trybu graficznego C++.
Inicjacja -
#include <graphics.h> // dodanie biblioteki graficznej
Zamknięcie -
closegraph(); // zamkniecie trybu graficznego
18. Do czego służą funkcje; setbkcolor, line, rectangle, outtextxy.
- setbkcolor - !określ kolor ramki!, - line - rysuj linię,
- rectangle - rysuj kolo,
- outtextxy - wyświetlanie tekstu
Zestaw 2 - żółty
1. Wymień dwie metody tworzenia algorytmów.
Algorytmy możemy tworzyć w postaci: graficznej oraz tekstowej.
2. Z opisu jakich elementów składa się algorytm.
Algorytm składa się z następujących elementów: - blok początkowy, blok operacyjny, blok warunkowy, blok wyboru, blok programu, blok końcowy.
3. Do czego służą schematy blokowe. Jak oznaczamy na schemacie blokowym bloki: początkowy i końcowy, wejściowy i wyjściowy.
Schematy blokowe służą do przedstawienia algorytmu programu.
4. Jaka jest ogólna struktura budowy programu w C++:?
# dyrektywy preprocesora
#include - dołącza pliki bibliotek
#include - definiuje stałe
main() - funkcja główna start programu
{
deklaracja zmiennych i ciąg instrukcji realizujących program
}
5. Typy danych z C++:
- proste
- strukturalne
- całkowite
- rzeczywiste
- referencyjne
- wskaźnikowe
6. Deklaracja i inicjacja zmiennej całkowitej:
char a,b ='F';
int x,y=z;
long k;
wartość zainicjowana
identyfikator
7. Słowa kluczowe są specjalnymi identyfikatorami zarezerwowanymi dla ściśle określonych celów i mogą być wykorzystywane tylko zgodnie z ich przeznaczeniem.
8.
a-=b a=a-b
a/=b a=a/b
a- a=a-1
a>=b a≥b
a&& koniunkcja
9. Składnia funkcji wyboru:
swith(zmienna)
{
case 1:…
break;
}
{
case 2:…
break;
}
default:…
}
10.
GOTO (idź do) - umozliwia przeniesienie sterownia do określonego miejsca we wnętrzu funkcji main()
CONTINIUE - pozwala na zakończenie bieżącej iteracji wykonywanej pętli fir, while,do-while i przejście do następnej iteracji.
RETURN - („zwróć wartość i powróć”) napotkanie instrukcji powoduje zakończenie wykonywania funkcji. Może zwracać wartość do programu głównego głównego funkcji rekurencyjnej.
11. Wartością wskaźnika jest jej adres czyli początek obszaru pamięci gdzie przechowywane są dane. Deklaracja zmiennej wskaźnikowej: int *numer; numer=&zmienna;
Aby zmienna wskaźnikowa podawała adres konkretnej zmiennej, na którą ma ona wskazywać należy użyć operatora adresowego (referencji) &, który przypisze odpowiedni adres zmiennej.
Int * zyga;
12. Napisać prototyp funkcji zwracającej wartości całkowite i przyjmującej dwa parametry
int a(int x,int y)
13. Podaj różnicę między parametrami(argumentami) formalnymi i aktualnymi.
14. Podaj funkcję rekurencyjną do obliczania silni.
Unsigned long int silnia(int x)
{
if(x=0)
return 1;
else
return x*silnia(x-1);
15. Na czym polega algorytm sortowania szybkiego.
Procedura sortowania dzieli się: - część służąca do całkowitego sortowania która nic nie robi tylko wywołuje samą siebie zapewniając sklejenie wyników cząstkowych ; - procedurą(rozdzielenie elementów tablicy względem prawej komórki służącej za oś podziału).
16. Jakimi parametrami (atrybutami) znaków można sterować w trybie tekstowym.
17. Jaka jest struktura programu działającego w trybie graficznym w C++.
#include <graphics.h> // dodanie biblioteki graficznej
int main(void)
{
int gdriver = DETECT, gmode; // detekcja karty graficznej
initgraph(&gdriver,&gmode,""); // inicjacja grafiki
closegraph(); // zamkniecie trybu graficznego
return 0;
}
18. Do czego służą funkcje: setcolor, lineto, arc, outtextxy.
- setcolor - podaj kolor pisania, - lineto koniec linii, - arc -rysowanie katow - outtextxy - wyświetlenie tekstu w trybie graficznym.
Zestaw 3 - niebieski
1. Definicja algorytmu.
Algorytm- określa sposób wykonywania pewnego zadania, rozwiązania określonego problemu, czy osiągnięcia zamierzonego celu. Jest to też przepis, rozwiązanie danego problemu w skończonej liczbie kroków.
Algorytm składa się z opisu:
- obiektów, na których wykonuje się działania,
- działania realizowane przez algorytm,
- kolejność działań.
2. Algorytm od ogółu do szczegółu.
Polega na ogólnym zapisaniu całego problemu bez szczegółowego analizowania jego fragmentów. Po otrzymaniu podstawowego algorytmu należy przystąpić do podobnej analizy poszczególnych fragmentów.
3. Schemat blokowy, co to jest, narysować schemat blokowy warunku wyboru.
Schemat blokowy - jest graficznym zapisem algorytmu, pokazuje następstwo działań. Schemat blokowy (sieć działania) mogą opisywać algorytm na wielu poziomach szczegółowości:
- ogólne logiczne sieci działań ( pokazują tylko jakie funkcje wykonują algorytm)
- szczegółowe logiczne sieci działań (pokazuje sposób realizacji funkcji wykonywanych przez logarytm)
- programowanie sieci działań (pokazuje sposób realizacji funkcji algorytmu w wybranym języku programowania)
4. Procesor w C++.
Zadania preprocesora:
- definiowanie makrodefinicji upraszczających postać kodu źródłowego
- włąnczanie tekstów innych plików
- sterowanie procesem kompilacji.
5. Typy danych w C++ z przykładami:
- proste
- strukturalne
- całkowite int s=5;
- rzeczywiste float d;
- referencyjne
- wskaźnikowe
6. Deklaracja i inicjalizacja wartości początkowych w tablicach - rzeczywiste lub całkowite.
float tablica1[n][m][w];
int tab[]={122,45,6765,324,324324,4355};
7.
a*=b a=a*b
a+b a+b
++a a=a+1
a||b alternatywa (a lub b)
8. Instrukcja warunkowa.
Instrukcja warunkowa - pozwala na zbadanie warunku w programie, a bastępnie na kontynuowanie obliczeń zaleznie od spełnienia tego warunku. Komputer w ten sposób podejmuje decyzje.
IF(warunek)
{
…
else
…
}
9. Funkcja While do while - schematy blokowe.
10. Zmienne referencyjne - deklaracja zmiennych referencyjnych.
Zmienne typu referencyjnego - służą do reprezentacji innych zmiennych w programie, czyli wartością zmiennej typu referencyjnego jest inna zmienna.
Deklaracja zm. Referencyjnej:
Int x,&rx=xxx; , gdzie &rx jest to operator i nazwa zm. Referencyjnej, a =x to inicjacja zmiennej referencyjnej.
11. Prototyp funkcji nie zawierającej wartości przyjmującej 3 punkty.
void drukuj(int c)
12. Przekazywanie parametru przez wartość.
Przekazywanie przez wartość - polega na kopiowaniu wartości argumentów aktualnych do pamięci argumentów formalnych, czyli funkcja nigdy nie ma dostępu do swoich argumentów aktualnych (do oryginałów). Zawartość argumentów aktualnych przekazywanych przez wartości jie ulega zmianie. Ograniczenie, gdy przekazywany argument zajmuje duzy obszar pamieci o dy wartości argumentu muszą być zmieniane przez funkcję.
13. Funkcja rekurencyjna
int szukaj_rec(int +tab, int x, int lewa, int prawa)
{
if(lewa>prawa) return-1;
else
{
int srodek_(lewa+prawa)/2;
if(tab[srodek]==x)return srodek;
else
if(x<tab[srodek])return szukaj_rec(tab x, lewa, srodek-1);
else
return szukaj_rec(tab x, srodek+1,prawa);
}
}
14. Algorytm sortowania bombelkowego.
void bombelki(int * tab)
{
for(int i=1; i<n; i++)
{
for(int j=n-1; j>=i; j--)
if (tab[j]<tab[j-1]);
{
int tmp=tab[j-1];
tab [j-1]=tab[j];
tab[j=tmp];
}
}
}