Funkcje. Funkcje. liczba rzeczywista r punkt, w którym wartość wielomianu nas interesuje. Szukane: liczba rzeczywista

Wielkość: px
Rozpocząć pokaz od strony:

Download "Funkcje. Funkcje. liczba rzeczywista r punkt, w którym wartość wielomianu nas interesuje. Szukane: liczba rzeczywista"

Transkrypt

1 Funkcje Przykład: (wartość wielomianu w punkcie) M Dane: liczba naturalna N liczba współczynników wielomianu (= stopień wielomianu +1) tablicaliczbrzeczywistycha 0,a 1,a 2,...,a N 1 współczynnikiwielomianu liczba rzeczywista r punkt, w którym wartość wielomianu nas interesuje Szukane: liczba rzeczywista N 1 i=0 a i r i =a 0 +a 1 r+a 2 r a N 1 r N 1 Funkcje Wykład 6. FUNKCJE, str. 2 Przykład: (wartość wielomianu w punkcie) M #definen6 main(){ double a[n],r,wart; inti; /*wczytanietablicy a orazliczby r */ wart=0.0; for(i=0; i<n; i=i+1) wart = wart + a[i]*potega(r,i); /*wydrukliczby wart */ Jakzrobić,żeby potega(r,i) prawidłowoobliczałar i?

2 Funkcje Przykład: (definicja funkcji realizującej potęgowanie) M nagłówek ciało wartość wynikowa doublepotega(doubler,inti) { double p; p=1.0; while(i>0) { p=p*r;i=i-1; return p; Nagłówek: typ wynikowy, nazwa, deklaracje parametrów. Ciało: deklaracje lokalne, komendy. Wynik: wyrażenie, którego wartość ma być wartością wywołania. Funkcje Wykład 6. FUNKCJE, str. 4 Fragmenty obliczeń można wyodrębnić w t.zw. funkcje. Definicja funkcji składa się z nagłówka postaci typ nazwa( deklaracje parametrów) (lista parametrów może być pusta), ciała składającego się z deklaracji zmiennych lokalnych oraz instrukcji, nadania wartości. Funkcjestosujesiępoto,żeby: niepisaćwprogramiewielerazytegosamegokodu, rozdzielić problem na mniejsze, logicznie zamknięte fragmenty, móc te fragmenty użyć ponownie, w innym programie.

3 Funkcje definicja a wywołania Nagłówek definicji funkcji: parametry są zawsze zmiennymi. Wywołanie funkcji w programie: argumenty są wyrażeniami. Liczba i typy argumentów wywołania muszą zgadzać się z liczbą i typami parametrów definicji. Przykład: MNagłówek definicji: double aaa(int n+1) ZŁY parametrmusibyćzmiennąawyrażenien+1niąniejest Nagłówek definicji: double bbb(int n, double x) DOBRY Wywołanie: bbb(5) ZŁE w definicji są dwa parametry a w wywołaniu jeden argument Wywołanie: bbb(5.3*pi,-2) ZŁE pierwszy argument wywołania jest rzeczywisty a zgodnie z definicją miał być całkowity Wywołanie: bbb(-2, 5.3*pi) DOBRE Funkcje definicja a wywołania Wykład 6. FUNKCJE, str. 6 Typwartościfunkcjimożebyćm.in. int, double, char. Funkcja nie może mieć wartości typu tablicowego. Typ wyrażenia nadającego wartość(komenda return) musi być taki sam jak typ funkcji w nagłówku. Funkcję można wywołać tylko w takim miejscu programu, gdzie dopuszczalne jest wyrażenie tego typu. Przykład: MDefinicja: char ccc(int n) {...return 2.0*x; ZŁA typ funkcji(char) nie jest taki sam jak typ nadania wartości(double) Definicja: double ddd(int n) {...return 2.0*x; DOBRA Wywołanie: printf("%c",ddd(2)); ZŁE ddd(2) jest rzeczywiste, nie można go drukować w formacie znakowym Wywołanie: tab[12] = ddd(2*n)/ddd(7); DOBRE

4 Układ programu z funkcjami Postać definicji funkcji: typ nazwa(listaparametrów){ ciało funkcji return wyrażenie; definicjafunkcji 1 definicjafunkcji 2 definicjafunkcji n main(){ program główny Układ programu z funkcjami Wykład 6. FUNKCJE, str. 8 deklaracje zm. globalnych definicja funkcji 1 definicja funkcji 2 definicja funkcji n main() { deklaracje zm. lokalnych instrukcje zmienne globalne są widoczne w programie głównym i we wszystkich definicjach funkcji o ile nie zostały zasłonięte przez deklaracje lokalne; zmienne lokalne są widoczne tylko w programie głównym; zmienne zadeklarowane w ciele funkcjisąwidocznetylkowtejfunkcji; parametry funkcji również są widoczne tylko w tej funkcji; mainjestjednązfunkcji.

5 Funkcje zasłanianie zmiennych deklaracja globalna x; funkcja1(...) { deklaracja lokalna x;...x...; funkcja2(...) { deklaracja lokalna x;...x...; funkcja3(...) { deklaracja lokalna x;...x...; Zmienna, której nazwy użyto w ciele funkcji, pochodzi z deklaracji lokalnej w ciele (lub w nagłówku) tej funkcji. Jeśli zmienna nie posiada deklaracji lokalnej, to pochodzi z deklaracji globalnej na początku programu. Jeśli zmienna nie posiada deklaracji lokalnej ani globalnej, to jest niezadeklarowana; w wielu językach (np. w C) kompilator sygnalizuje wtedy błąd. Funkcje eksponens Wykład 6. FUNKCJE, str. 10 Przykład: MWiadomo z analizy, że e x = + i=0 x i i! Możemy policzyć przybliżoną wartość tej funkcji, urywając obliczenie na jakiejś skończonej liczbie składników: e x n 1 i=0 x i i! Im większe n tym lepsza dokładność.

6 Funkcje eksponens int silnia(int n){ int i,s; s=1; for(i=2; i<=n; i=i+1) s=s*i; return s; doublepot(doublex,intn){ inti;doublep; p=1.0; for(i=0; i<n; i=i+1) p=p*x; return p; main(){ double x, suma; int n,i; printf("przyblizone e^x\n"); printf("podajx:"); scanf("%lf",&x); printf("ileskladnikow?"); scanf("%i",&n); suma=0.0; for(i=0; i<n; i=i+1) suma = suma + pot(x,i)/silnia(i); printf("\ne^%lf =~=%lf\n\n", x,suma); Uwaga Wykład 6. FUNKCJE, str. 12 Uwaga: Oba podane wyżej programy na wartość wielomianu w punkcie, oraz naprzybliżonąwartośće x zostały napisane bardzo nieoptymalnie.

7 Oszczędniejszy eksponens suma=0.0;skladnik=1.0; // skladnik= x0 0! for(i=0;i<n;i=i+1) { i 1 x j // suma= & skladnik= xi j=0j! i! suma=suma+skladnik; skladnik=skladnik*x/(i+1); Funkcje organizują program i ułatwiają programiście panowanie nad nim. Ale nieostrożne użycie funkcji może prowadzić do nieoptymalności. Rekursja Wykład 6. FUNKCJE, str. 14

8 Rekursja double potega(doublea,intn){ if(n==0) return1.0; else return a* potega(a, n-1); main(){ printf("%lf\n",potega(4.0,3)); potega(4.0, 3) = 4.0 potega(4.0, 2) = potega(4.0,1) = potega(4.0,0) = =64.0 Rekursja Wykład 6. FUNKCJE, str. 16 W ciele definicji funkcji może znajdować się wywołanie tej samej funkcji. Definicję zawierającą takie wywołanie nazywa się rekursywną. Wykonanie funkcji zdefiniowanej rekursywnie odbywa się tak, jakby każde wywołanie wewnątrz ciała było zastąpione całym ciałem definicji z parametrami odpowiednio zastąpionymi przez argumenty wywołania. Uwaga: Obliczenie funkcji zdefiniowanej rekursywnie może nigdy się nie skończyć: Przykład: Mdoublepotega(doublea,intn){ if(n==0) return 1.0; else return a*potega(a,n-1); potega(4.0, 1) =4.0 potega(4.0, 2) = potega(4.0, 3) =

9 Rekursja Przykład: (potęga binarna) double potega2(double a, int n) { if(n==0) return 1.0; else if(n%2==0)/*czylinjestparzyste*/ M return potega2(a*a, n/2); else return a* potega2(a, n-1); potega2(2.0, 22) = potega2(4.0, 11) = 4.0 potega2(4.0, 10) =4.0 potega2(16.0,5)= potega2(16.0,4) =64.0 potega2(256.0,2)=64.0 potega2( ,1) = potega2( ,0) = = Rekursja Wykład 6. FUNKCJE, str. 18 Przykład: (wieże w Hanoi) M mamy przełożyć wszystkie krążki z pałeczki 1 na pałeczkę 3, używając pomocniczo pałeczki 2, na raz wolno przełożyć tylko jeden krążek, nigdy nie wolno kłaść krążka większego na mniejszy.

10 Rekursja Przykład: (wieże w Hanoi) M void Hanoi(intn,inta,intb,intc) { /*nkrążkówzpałeczkianapałeczkęc*/ if(n>0) { Hanoi(n-1, a, c, b); przełóżkrążekzanac; Hanoi(n-1, b, a, c); Rekursja Wykład 6. FUNKCJE, str. 20 Przykład: (wieże w Hanoi) M Hanoi(3,1,2,3) = Hanoi(2,1,3,2); Hanoi(2,2,1,3); = Hanoi(1,1,2,3); 1 2; Hanoi(1,3,1,2); Hanoi(1,2,3,1); 2 3; Hanoi(1,1,2,3); = Hanoi(0,1,3,2); Hanoi(0,2,1,3); 1 2; Hanoi(0,3,2,1); 3 2; Hanoi(0,1,3,2); Hanoi(0,2,1,3); 2 1; Hanoi(0,3,2,1); 2 3; Hanoi(0,1,3,2); Hanoi(0,2,1,3); = 1 2; 3 2; 2 1; 2 3;

11 Rekursja Przykład: (wieże w Hanoi) MIle ruchów potrzeba, żeby przełożyć n krążków? { R(0)=0 R(n+1)=R(n)+1+R(n) Łatwo sprawdzić przez indukcję, że te dwie równości są spełnione przez funkcję R(n) def =2 n 1 Jeśli ruch trwa sekundę a krążków jest 64, to przekładanie trwa 2 64 sek sek lat = lat (wiekwszechwiata lat) Rekursja Wykład 6. FUNKCJE, str. 22 Przykład: (funkcja Ackermanna) M int Ack(intm,intn) { if(m==0) returnn+1; else if(n==0) return Ack(m-1,1); else return Ack(m-1, Ack(m,n-1)); to jest przykład funkcji zdefiniowanej rekursywnie, bardzo szybko rosnącej.

12 Rekursja Przykład: (funkcja Ackermanna) MAck(0,n)=n+1 Ack(1,0)=Ack(0,1)=2 Ack(1,1)=Ack(0,Ack(1,0))=Ack(0,2)=3 Ack(1,2)=Ack(0,Ack(1,1))=Ack(0,3)=4 Ack(1,n)=n+2 Ack(2,0)=Ack(1,1)=3 Ack(2,1)=Ack(1,Ack(2,0))=Ack(1,3)=5 Ack(2,2)=Ack(1,Ack(2,1))=Ack(1,5)=7 Ack(2,n)=2n+3 Ack(3,0)=Ack(2,1)=5 Ack(3,1)=Ack(2,Ack(3,0))=Ack(2,5)=13 Ack(3,2)=Ack(2,Ack(3,1))=Ack(2,13)=29 Ack(3,n)=2 (n+3) 3 Ack(4,n)= n+3dwójki

Programowanie komputerowe. Zajęcia 2

Programowanie komputerowe. Zajęcia 2 Programowanie komputerowe Zajęcia 2 Funkcje Funkcje są podstawowym składnikiem programów w C++. Każda funkcja jest fragmentem programu, który można używać wielokrotnie i niezależnie od pozostałych funkcji.

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania wykład 8 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Podprogramy Czasami wygodnie jest wyodrębnić jakiś fragment programu jako pewną odrębną całość umożliwiają to podprogramy.

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo

W większości języków programowania(nie we wszystkich) wymaga się, żeby użyte w programie zmienne były wcześniej zadeklarowane:

W większości języków programowania(nie we wszystkich) wymaga się, żeby użyte w programie zmienne były wcześniej zadeklarowane: Deklaracje W większości języków programowania(nie we wszystkich) wymaga się, żeby użyte w programie zmienne były wcześniej zadeklarowane: int i,j,n; double x, tab[1000]; przykładowe deklaracje w C Pierwsze

Bardziej szczegółowo

Deklaracje. W większości języków programowania(nie we wszystkich) wymaga się, żeby użyte w programie zmienne były wcześniej zadeklarowane:

Deklaracje. W większości języków programowania(nie we wszystkich) wymaga się, żeby użyte w programie zmienne były wcześniej zadeklarowane: Deklaracje Wykład5TYPYDANYCH,str1 W większości języków programowania(nie we wszystkich) wymaga się, żeby użyte w programie zmienne były wcześniej zadeklarowane: int i,j,n; double x, tab[1000]; } przykładowe

Bardziej szczegółowo

ZAAWANSOWANE JĘZYKI PROGRAMOWANIA

ZAAWANSOWANE JĘZYKI PROGRAMOWANIA Stefan Sokołowski ZAAWANSOWANE JĘZYKI PROGRAMOWANIA Inst. Informatyki, UG Gdańsk, 2015/2016 Zaawansowane Języki Programowania Wykład1,str.1 Na http://sigma.ug.edu.pl/ stefan/dydaktyka/zaawjezprog będą

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania wykład 10 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Przesyłanie argumentów - cd Przesyłanie argumentów do funkcji - tablice wielowymiarowe Przekazywanie tablic wielowymiarowych

Bardziej szczegółowo

Rekurencja. Przygotowała: Agnieszka Reiter

Rekurencja. Przygotowała: Agnieszka Reiter Rekurencja Przygotowała: Agnieszka Reiter Definicja Charakterystyczną cechą funkcji (procedury) rekurencyjnej jest to, że wywołuje ona samą siebie. Drugą cechą rekursji jest jej dziedzina, którą mogą być

Bardziej szczegółowo

Programowanie strukturalne i obiektowe. Funkcje

Programowanie strukturalne i obiektowe. Funkcje Funkcje Często w programach spotykamy się z sytuacją, kiedy chcemy wykonać określoną czynność kilka razy np. dodać dwie liczby w trzech miejscach w programie. Oczywiście moglibyśmy to zrobić pisząc trzy

Bardziej szczegółowo

Błędy leksykalne są na ogół nietrudne do znalezienia.

Błędy leksykalne są na ogół nietrudne do znalezienia. Rodzaje błędów w programach Wykład9.UWAGIOGÓLNE,str.1 Błąd leksykalny pojedyncza jednostka leksykalna(operator, słowo kluczowe, liczba itp.), której nie przewiduje definicja języka. Mn:=1; Sygn. błędu

Bardziej szczegółowo

Rodzaje błędów w programach. Wykład9.UWAGIOGÓLNE,str.1

Rodzaje błędów w programach. Wykład9.UWAGIOGÓLNE,str.1 Wykład9.UWAGIOGÓLNE,str.1 Wykład9.UWAGIOGÓLNE,str.1 Błąd leksykalny pojedyncza jednostka leksykalna(operator, słowo kluczowe, liczba itp.), której nie przewiduje definicja języka. Wykład9.UWAGIOGÓLNE,str.1

Bardziej szczegółowo

Programowanie - wykład 4

Programowanie - wykład 4 Programowanie - wykład 4 Filip Sośnicki Wydział Fizyki Uniwersytet Warszawski 20.03.2019 Przypomnienie Prosty program liczący i wyświeltający wartość silni dla wprowadzonej z klawiatury liczby: 1 # include

Bardziej szczegółowo

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p. Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Funkcje w języku C Zasięg zmiennych Przekazywanie

Bardziej szczegółowo

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch Wykład 8 Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. Smok podsuszony zmok (patrz: Zmok). Zmok zmoczony smok (patrz: Smok). L. Peter Deutsch Stanisław Lem Wizja lokalna J. Cichoń, P. Kobylański

Bardziej szczegółowo

12. Rekurencja. UWAGA Trzeba bardzo dokładnie ustalić <warunek>, żeby mieć pewność, że ciąg wywołań się zakończy.

12. Rekurencja. UWAGA Trzeba bardzo dokładnie ustalić <warunek>, żeby mieć pewność, że ciąg wywołań się zakończy. 12. Rekurencja. Funkcja rekurencyjna funkcja, która wywołuje samą siebie. Naturalne postępowanie: np. zbierając rozsypane pionki do gry podnosi się zwykle pierwszy, a potem zbiera się resztę w ten sam

Bardziej szczegółowo

4. Funkcje. Przykłady

4. Funkcje. Przykłady 4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni

Bardziej szczegółowo

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Anatomia definicji rekursywnej. Anatomia definicji rekursywnej. int silnia(intn){ if(n==0) return 1; else return n*silnia(n-1); }

Anatomia definicji rekursywnej. Anatomia definicji rekursywnej. int silnia(intn){ if(n==0) return 1; else return n*silnia(n-1); } Anatomia definicji rekursywnej int silnia(intn){ if(n==0) return 1; else return n*silnia(n-1); PRZYPADEK BAZOWY PRZYPADEK REKURSYWNY Definicja rekursywna musi zawierać przypadek bazowy, czyli kod bez wywołania

Bardziej szczegółowo

Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur.

Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur. Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur. 1. Identyfikator funkcji,

Bardziej szczegółowo

Programowanie komputerowe. Zajęcia 1

Programowanie komputerowe. Zajęcia 1 Programowanie komputerowe Zajęcia 1 Code::Blocks - tworzenie projektu Create New Project Console Application -> C++ Wybierz nazwę projektu Stworzy się nowy projekt z wpisaną funkcją main Wpisz swój program

Bardziej szczegółowo

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych

Bardziej szczegółowo

Podstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/

Podstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Podstawy programowania C dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Tematy Struktura programu w C Typy danych Operacje Instrukcja grupująca Instrukcja przypisania Instrukcja warunkowa Struktura

Bardziej szczegółowo

Poprawność semantyczna

Poprawność semantyczna Poprawność składniowa Poprawność semantyczna Poprawność algorytmu Wypisywanie zdań z języka poprawnych składniowo Poprawne wartościowanie zdań języka, np. w języku programowania skutki wystąpienia wyróżnionych

Bardziej szczegółowo

Funkcje. Deklaracja funkcji. Definicja funkcji. Wykorzystanie funkcji w programie.

Funkcje. Deklaracja funkcji. Definicja funkcji. Wykorzystanie funkcji w programie. Funkcje Deklaracja funkcji typ funkcji identyfikator_funkcji(lista parametrów formalnych); Typ funkcji określa typ wartości zwracanej przez funkcję (typ zdefiniowany pierwotnie jak int, typ zdefiniowany

Bardziej szczegółowo

W2 Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy :

W2 Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy : Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy : class nazwa_klasy prywatne dane i funkcje public: publiczne dane i funkcje lista_obiektów;

Bardziej szczegółowo

5. Rekurencja. Przykłady

5. Rekurencja. Przykłady 5. Rekurencja Uwaga! W tym rozdziale nie są omówione żadne nowe konstrukcje języka C++. Omówiona jest za to technika wykorzystująca funkcje, która pozwala na rozwiązanie pewnych nowych rodzajów zadań.

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Rekurencja, metoda dziel i zwyciężaj Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk(Wydział Fizyki) WP w. VIII Jesień 2014 1 / 27 Rekurencja Recursion See Recursion. P. Daniluk(Wydział

Bardziej szczegółowo

Podstawy programowania skrót z wykładów:

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty) Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty) // to jest pojedynczy komentarz (1-linijkowy) to jest wielolinijkowy komentarz Budowa "czystego" skryptu PHP (tak

Bardziej szczegółowo

typ_zwracanej_wartości nazwa_funkcji(lista deklaracji argumentów) { ciało(treść) funkcji return Val; //zwracana wartość }

typ_zwracanej_wartości nazwa_funkcji(lista deklaracji argumentów) { ciało(treść) funkcji return Val; //zwracana wartość } Języki i paradygmaty programowania studia stacjonarne 208/9 Lab 3. Funkcje, argumenty funkcji, wskaźniki, adresy.. Podstawowe pojęcia: Funkcja w C (czasami nazywana podprogramem, rzadziej procedurą) to

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Tablice, funkcje - wprowadzenie

Tablice, funkcje - wprowadzenie Tablice, funkcje - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 5 25 marca 2019 (Wykład 5) Tablice, funkcje - wprowadzenie 25 marca 2019 1 / 12 Outline 1 Tablice jednowymiarowe 2 Funkcje (Wykład

Bardziej szczegółowo

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij. Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice

Bardziej szczegółowo

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors. Wykład 3 ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors. Waldi Ravens J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 75 / 146 deklaracje zmiennych instrukcja podstawienia

Bardziej szczegółowo

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,

Bardziej szczegółowo

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński WYKŁAD 8 Funkcje i algorytmy rekurencyjne Proste przykłady Programy: c3_1.c..., c3_6.c Tomasz Zieliński METODY REKURENCYJNE (1) - program c3_1 ======================================================================================================

Bardziej szczegółowo

Etapy kompilacji. Wykład 7. Przetwarzanie wstępne, str. 1. #define ILE for(i=0; i<ile; i++)...

Etapy kompilacji. Wykład 7. Przetwarzanie wstępne, str. 1. #define ILE for(i=0; i<ile; i++)... Etapy kompilacji Wykład 7 Przetwarzanie wstępne, str 1 #define ILE 100 for(i=0; i

Bardziej szczegółowo

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu

Bardziej szczegółowo

7. Pętle for. Przykłady

7. Pętle for. Przykłady . Pętle for Przykłady.1. Bez użycia pętli while ani rekurencji, napisz program, który wypisze na ekran kolejne liczby naturalne od 0 do pewnego danego n. 5 int n; 6 cin >> n; 8 for (int i = 0; i

Bardziej szczegółowo

Wstęp do informatyki- wykład 11 Funkcje

Wstęp do informatyki- wykład 11 Funkcje 1 Wstęp do informatyki- wykład 11 Funkcje Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum

Bardziej szczegółowo

5 Przygotował: mgr inż. Maciej Lasota

5 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 5 1/6 Język C Instrukcja laboratoryjna Temat: Funkcje, parametry linii poleceń, typ wyliczeniowy. 5 Przygotował: mgr inż. Maciej Lasota 1) Parametry linii poleceń. Język C oprócz wprowadzania

Bardziej szczegółowo

Wstęp do informatyki- wykład 9 Funkcje

Wstęp do informatyki- wykład 9 Funkcje 1 Wstęp do informatyki- wykład 9 Funkcje Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum

Bardziej szczegółowo

Język C zajęcia nr 11. Funkcje

Język C zajęcia nr 11. Funkcje Język C zajęcia nr 11 Funkcje W języku C idea podprogramów realizowana jest wyłącznie poprzez definiowanie i wywołanie funkcji. Każda funkcja musi być przed wywołaniem zadeklarowana. Deklaracja funkcji

Bardziej szczegółowo

Wskaźniki w C. Anna Gogolińska

Wskaźniki w C. Anna Gogolińska Wskaźniki w C Anna Gogolińska Zmienne Zmienną w C można traktować jako obszar w pamięci etykietowany nazwą zmiennej i zawierający jej wartość. Przykład: kod graficznie int a; a a = 3; a 3 Wskaźniki Wskaźnik

Bardziej szczegółowo

Klasa jest nowym typem danych zdefiniowanym przez użytkownika. Najprostsza klasa jest po prostu strukturą, np

Klasa jest nowym typem danych zdefiniowanym przez użytkownika. Najprostsza klasa jest po prostu strukturą, np Klasy Klasa jest nowym typem danych zdefiniowanym przez użytkownika Wartości takiego typu nazywamy obiektami Najprostsza klasa jest po prostu strukturą, np struct Zespolona { Klasy jako struktury z operacjami

Bardziej szczegółowo

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Tablice (jedno i wielowymiarowe), łańcuchy znaków Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie

Bardziej szczegółowo

Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie Krzysztof Banaś Podstawy programowania 1 są sposobem na przechowywanie w ramach pojedynczej zmiennej zestawu zmiennych różnych typów,

Bardziej szczegółowo

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018 Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy

Bardziej szczegółowo

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Zajęcia nr 2 Programowanie strukturalne dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Pętla while #include using namespace std; int main ()

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, a/15

Matematyka dyskretna. Andrzej Łachwa, UJ, a/15 Matematyka dyskretna Andrzej Łachwa, UJ, 2017 andrzej.lachwa@uj.edu.pl 3a/15 Indukcja matematyczna Zasada Minimum Dowolny niepusty podzbiór S zbioru liczb naturalnych ma w sobie liczbę najmniejszą. Zasada

Bardziej szczegółowo

Zmienne, stałe i operatory

Zmienne, stałe i operatory Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6 JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania

Bardziej szczegółowo

Ćwiczenie nr 3. Temat: Definicje i wykorzystanie funkcji, parametry funkcji

Ćwiczenie nr 3. Temat: Definicje i wykorzystanie funkcji, parametry funkcji Ćwiczenie nr 3 Temat: Definicje i wykorzystanie funkcji, parametry funkcji Zagadnienia: Definicja funkcji składnia podstawowa. Sposoby przekazania parametrów (argumentów) funkcji: przez wartość, przez

Bardziej szczegółowo

Wskaznik. Przekazywanie wyniku funkcji przez return. Typy i zmienne wskaznikowe. Zmienna wskazywana. typ * nazwa_wkaznika

Wskaznik. Przekazywanie wyniku funkcji przez return. Typy i zmienne wskaznikowe. Zmienna wskazywana. typ * nazwa_wkaznika Wyklad 6 Typy i zmienne: wskaznikowe, referencyjne Funkcje deklaracja, definicja. Zasieg deklaracji i widocznosc zmiennych Przekazywanie parametrów przez wartosc, referencje i wskaznik Przekazywanie wyniku

Bardziej szczegółowo

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania Wykład: 6 Tablice statyczne 1 dr Artur Bartoszewski - programowania, sem 1 - WYKŁAD programowania Tablice 2 Tablice Klasyfikacja zmiennych statycznych prosty porządkowy rzeczywisty całkowity

Bardziej szczegółowo

Lab 9 Podstawy Programowania

Lab 9 Podstawy Programowania Lab 9 Podstawy Programowania (Kaja.Gutowska@cs.put.poznan.pl) Wszystkie kody/fragmenty kodów dostępne w osobnym pliku.txt. Materiały pomocnicze: Wskaźnik to specjalny rodzaj zmiennej, w której zapisany

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

część 8 wskaźniki - podstawy Jarosław Gramacki Instytut Informatyki i Elektroniki Podstawowe pojęcia

część 8 wskaźniki - podstawy Jarosław Gramacki Instytut Informatyki i Elektroniki Podstawowe pojęcia Język ANSI C część 8 wskaźniki - podstawy Jarosław Gramacki Instytut Informatyki i Elektroniki Podstawowe pojęcia najbardziej podstawowe operacje na wskaźnikach int x = 1, y = 2, Tab[10]; int *ip; // czy

Bardziej szczegółowo

Wstęp do Programowania, laboratorium 02

Wstęp do Programowania, laboratorium 02 Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite

Bardziej szczegółowo

Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium:

Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium: Zakres laboratorium: definiowanie struktur terminologia obiektowa definiowanie klas funkcje składowe klas programy złożone z wielu plików zadania laboratoryjne Laboratorium nr 12 Temat: Struktury, klasy.

Bardziej szczegółowo

Funkcje przeciążone, konstruktory kopiujące, argumenty domyślne

Funkcje przeciążone, konstruktory kopiujące, argumenty domyślne Funkcje przeciążone, konstruktory kopiujące, argumenty domyślne Przeciążenie funkcji polega na użyciu funkcji z tą samą nazwą, które mają różne listy argumentów(różne typy, różna ilość lub to i inne).

Bardziej szczegółowo

Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe

Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe Podstawy programowania Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe 1 Podstawy programowania Część I Łańcuchy znaków 2 I. Zmienne łańcuchowe Klasyfikacja zmiennych statycznych

Bardziej szczegółowo

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41 Programowanie w C++ Wykład 2 Katarzyna Grzelak 5 marca 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41 Reprezentacje liczb w komputerze K.Grzelak (Wykład 1) Programowanie w C++ 2 / 41 Reprezentacje

Bardziej szczegółowo

Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u

Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji

Bardziej szczegółowo

Programowanie Obiektowe i C++

Programowanie Obiektowe i C++ Programowanie Obiektowe i C++ Marcin Benke Instytut Informatyki UW 2.10.2006 Marcin Benke (IIUW) Programowanie Obiektowe i C++ 2.10.2006 1 / 38 Podstawowe elementy proceduralne w C++ Program i wyjście

Bardziej szczegółowo

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1 Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).

Bardziej szczegółowo

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja Opis zagadnieo 1-3 Iteracja, rekurencja i ich realizacja Iteracja Iteracja to czynnośd powtarzania (najczęściej wielokrotnego) tej samej instrukcji (albo wielu instrukcji) w pętli. Mianem iteracji określa

Bardziej szczegółowo

Programowanie komputerowe. Zajęcia 3

Programowanie komputerowe. Zajęcia 3 Programowanie komputerowe Zajęcia 3 Instrukcje przypisania Poza zwykłą instrukcją przypisania, powodującą ustawienie wartości zmiennej na podane wyrażenie, istnieje wiele innych, np. += dodaj, a+=b jest

Bardziej szczegółowo

Funkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów

Funkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów Funkcje. Spotkanie 5 Dr inż. Dariusz JĘDRZEJCZYK Tworzenie i używanie funkcji Przekazywanie argumentów do funkcji Domyślne wartości argumentów Przeładowanie nazw funkcji Dzielenie programu na kilka plików

Bardziej szczegółowo

Wykład 5: Klasy cz. 3

Wykład 5: Klasy cz. 3 Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu

Bardziej szczegółowo

Tablice, funkcje, wskaźniki - wprowadzenie

Tablice, funkcje, wskaźniki - wprowadzenie Tablice, funkcje, wskaźniki - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 4 19 listopada 2018 (Wykład 4) Tablice, funkcje, wskaźniki - wprowadzenie 19 listopada 2018 1 / 37 Outline 1 Tablice

Bardziej szczegółowo

Język C, tablice i funkcje (laboratorium, EE1-DI)

Język C, tablice i funkcje (laboratorium, EE1-DI) Język C, tablice i funkcje (laboratorium, EE1-DI) Opracował: Tomasz Mączka (tmaczka@kia.prz.edu.pl) Wstęp (tablice) Tablica to uporządkowany ciąg elementów tego samego typu, zajmujących ciągły obszar pamięci.

Bardziej szczegółowo

Język C++ zajęcia nr 2

Język C++ zajęcia nr 2 Język C++ zajęcia nr 2 Inicjalizacja Definiowanie obiektu może być połączone z nadaniem mu wartości początkowej za pomocą inicjalizatora, który umieszczany jest po deklaratorze obiektu. W języku C++ inicjalizator

Bardziej szczegółowo

Programowanie Komputerów

Programowanie Komputerów Programowanie Komputerów Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Wykład 30 godzin, Laboratoria 30 godzin 2012/ Strona 1 z 17 1. Typy i zmienne Jak wiemy, komputer

Bardziej szczegółowo

Podstawy programowania. Wykład 3 Konstrukcje sterujące. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład 3 Konstrukcje sterujące. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład 3 Konstrukcje sterujące Krzysztof Banaś Podstawy programowania 1 Kod źródłowy i wykonanie programu Kod źródłowy w języku programowania zawiera przepis wykonania programu

Bardziej szczegółowo

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

Bardziej szczegółowo

3. Instrukcje warunkowe

3. Instrukcje warunkowe . Instrukcje warunkowe Przykłady.1. Napisz program, który pobierze od użytkownika liczbę i wypisze na ekran słowo ujemna lub nieujemna, w zależności od tego czy dana liczba jest ujemna czy nie. 1 #include

Bardziej szczegółowo

Przekazywanie argumentów wskaźniki

Przekazywanie argumentów wskaźniki Przekazywanie argumentów wskaźniki klasyczne wywołanie wyliczenie i zwrotne przekazanie tylko jednej wielkości moŝliwość uŝycia zmiennych globalnych niebezpieczeństwa z tym związane wyjście wywołanie funkcji

Bardziej szczegółowo

Język ludzki kod maszynowy

Język ludzki kod maszynowy Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza

Bardziej szczegółowo

ALGORYTMY I STRUKTURY DANYCH

ALGORYTMY I STRUKTURY DANYCH KATEDRASYSTEMÓWOBLICZENIOWYCH ALGORYTMY I STRUKTURY DANYCH 1.Rekurencja Rekurencja inaczej rekursja (ang. recursion) to wywołanie z poziomu metody jej samej. Programowanie z wykorzytaniem rekurencji pozwala

Bardziej szczegółowo

Pojęcie szeregu nieskończonego:zastosowania do rachunku prawdopodobieństwa wykład 1

Pojęcie szeregu nieskończonego:zastosowania do rachunku prawdopodobieństwa wykład 1 Pojęcie szeregu nieskończonego:zastosowania do rachunku prawdopodobieństwa wykład dr Mariusz Grządziel 5 lutego 04 Paradoks Zenona z Elei wersja uwspółcześniona Zenek goni Andrzeja; prędkość Andrzeja:

Bardziej szczegółowo

main( ) main( void ) main( int argc, char argv[ ] ) int MAX ( int liczba_1, liczba_2, liczba_3 ) źle!

main( ) main( void ) main( int argc, char argv[ ] ) int MAX ( int liczba_1, liczba_2, liczba_3 ) źle! Funkcja wysoce niezależny blok definicji i instrukcji programu (podprogram) Każdy program napisany w języku C/C++ zawiera przynajmniej jedną funkcję o predefiniowanej nazwie: main( ). Najczęściej wykorzystuje

Bardziej szczegółowo

Laboratorium nr 10. Temat: Funkcje cz.2.

Laboratorium nr 10. Temat: Funkcje cz.2. Zakres laboratorium: Laboratorium nr 10 Temat: Funkcje cz.2. przeciążanie nazw funkcji argumenty domyślne funkcji przekazywanie danych do funkcji przez wartość, wskaźnik i referencję przekazywanie tablic

Bardziej szczegółowo

C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU

C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU Inicjalizacja agregatowa zmiennej tablicowej int a[5] = 1,2,3,4,5 INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU Struktury są również agregatami, dlatego: struct X double f; char c; X x1 = 1, 2.2, 'c' Ale

Bardziej szczegółowo

Podstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania Wykład: 7 Funkcje Przekazywanie argumentów do funkcji 1 dr Artur Bartoszewski - programowania, sem 1 - WYKŁAD programowania w C++ Funkcje 2 dr Artur Bartoszewski - programowania sem. 1 -

Bardziej szczegółowo

Personal Home Page PHP: Hypertext Preprocessor

Personal Home Page PHP: Hypertext Preprocessor Języki, które już znacie Wykład9PodstawyPHP,str1 język polski język angielski język C język preprocesora C język bash-a język HTML kolejny język: PHP Język PHP Wykład9PodstawyPHP,str2 Personal Home Page

Bardziej szczegółowo

Rekurencja (rekursja)

Rekurencja (rekursja) Rekurencja (rekursja) Rekurencja wywołanie funkcji przez nią samą wewnątrz ciała funkcji. Rekurencja może być pośrednia funkcja jest wywoływana przez inną funkcję, wywołaną (pośrednio lub bezpośrednio)

Bardziej szczegółowo

Szablony funkcji i szablony klas

Szablony funkcji i szablony klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Programowanie obiektowe w C++ Wykład 12

Programowanie obiektowe w C++ Wykład 12 Programowanie obiektowe w C++ Wykład 12 dr Lidia Stępień Akademia im. Jana Długosza w Częstochowie L. Stępień (AJD) 1 / 22 Zakresowe pętle for double tab[5] {1.12,2.23,3.33,4.12,5.22 for(double x: tab)

Bardziej szczegółowo

Różne właściwości. Różne właściwości. Różne właściwości. C++ - klasy. C++ - klasy C++ - KLASY

Różne właściwości. Różne właściwości. Różne właściwości. C++ - klasy. C++ - klasy C++ - KLASY Różne właściwości Funkcje tak samo jak zmienne mają swoje miejsce w pamięci, gdzie są zapisane. Można więc uzyskać ich adres. Podobnie jak adres tablicy jest zwracany przez jej nazwę, podaną bez nawiasu

Bardziej szczegółowo

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów

Bardziej szczegółowo

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Programowanie w C++ Wykład 2 Katarzyna Grzelak 4 marca 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Na poprzednim wykładzie podstawy C++ Każdy program w C++ musi mieć funkcję o nazwie main Wcięcia

Bardziej szczegółowo

ZAAWANSOWANEJĘZYKI PROGRAMOWANIA

ZAAWANSOWANEJĘZYKI PROGRAMOWANIA Stefan Sokołowski ZAAWANSOWANEJĘZYKI PROGRAMOWANIA Inst. Informatyki, UG Gdańsk, 2016/2017 Zaawansowane Języki Programowania Wykład1,str.1 Na http://inf.ug.edu.pl/ stefan/dydaktyka/zaawjezprog będą się

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Instytut Mechaniki i Inżynierii Obliczeniowej  Wydział Mechaniczny Technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Wskaźniki. Informatyka

Wskaźniki. Informatyka Materiały Wskaźniki Informatyka Wskaźnik z punktu widzenia programisty jest grupą komórek pamięci (rozmiar wskaźnika zależy od architektury procesora, najczęściej są to dwa lub cztery bajty ), które mogą

Bardziej szczegółowo

Sposoby przekazywania parametrów w metodach.

Sposoby przekazywania parametrów w metodach. Temat: Definiowanie i wywoływanie metod. Zmienne lokalne w metodach. Sposoby przekazywania parametrów w metodach. Pojcia klasy i obiektu wprowadzenie. 1. Definiowanie i wywoływanie metod W dotychczas omawianych

Bardziej szczegółowo