Podstawy programowania sem.ii. Laboratorium nr 1

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

Download "Podstawy programowania sem.ii. Laboratorium nr 1"

Transkrypt

1 Podstawy programowania sem.ii Laboratorium nr 1 Wprowadzenie do środowiska Dev C++ i arytmetyki 1. Utworzyć katalog dla nowego projektu. Stworzyć nowy projekt konsolowy dla języka C. Napisać program drukujący dwie linie tekstu z zatrzymaniem wyświetlania w oknie ( system("pause") ). Przeprowadzić kompilację, usunąć ewentualne błędy i uruchomić program. Zapisać projekt, zamknąć i otworzyć ponownie. 2. Zdefiniować dwie zmienne typu int, przypisać im wartości, obliczyć ich sumę i wydrukować. Wczytać i wydrukować dwie zmienne a, b typu int. Obliczyć i wydrukować a+b, a-b, a*b, a/b i a modulo b. 3. Zdefiniować zmienne typu float, double i long double, wczytać z klawiatury i wydrukować. Zdefiniować zmienne x i y typu double. Obliczyć i wydrukować a+b, a-b, a*b i a/b. 4. Wprowadzić zabezpieczenie formatu przy wczytywaniu zmiennych np. do { printf("\n Podaj x:"); k=scanf("%lf", &x); if ( k= =0) printf("\n Blad formatu "); fflush(stdin); } while (k= =0); 5. Napisać fragment programu obliczający następujące wyrażenie dla zmiennych x,y typu int i przeanalizować obliczanie wyrażenia dla x=12 i y=5, 2 x x + + x y 5 w =. x 3 + y x + y

2 Laboratorium nr 2 1. Wczytać dwie zmienne typu x,y typu double i obliczyć wartość następującego wyrażenia: 2 x 3 x + + x x + y w = y 3 + y x x x + y Podstawić do wyrażenia x=2 i y=3 i porównać z wynikiem z programu dla tych wartości. 4. Zmodyfikować program wprowadzając sprawdzenie wartości każdego z mianowników przy użyciu instrukcji if i zakończenie programu, jeżeli jakiś mianownik jest równy 0, np. if (x-y= =0) { printf("\n x-y=0"); getch(); return 1;} Zrealizować wielokrotne wykonanie programu przy użyciu pętli while (1). 5. Zmodyfikować pętlę while w taki sposób, aby można było sterować ilością wykonań programu' Laboratorium nr 3 Operatory relacyjne i logiczne. Wyrażenia relacyjne i logiczne 1. Wczytać dwie zmienne typu a,b typu int, obliczyć wydrukować wartości następujących wyrażeń relacyjnych a>b, a>=b, a<b,a<=b, a= = b, a!=b. 2. Wczytać dwie zmienne a,b,c typu int, obliczyć i wydrukować wartości następujących wyrażeń a&&b,a b,!a,!b,a<=b, a= = b, a!=b, a&&b c,!a&&b a&&!b dla wszystkich kombinacji zmiennych a,b,c. 3. Dana jest funkcja logiczna trzech zmiennych mająca wartość 1, gdy dwie z trzech zmiennych mają wartość 1. Zapisać funkcję w postaci SOP ( suma iloczynów) i zrealizować programowo. 4. Napisać funkcje logiczne realizujące sumator 1-bitowy ( sumę i przeniesienie) i zastosować je do symulacji programowej 4-bitowego sumatora szeregowego.

3 Laboratorium nr 4 Instrukcje if, if else, switch 1.Napisać program realizujący rozwiązanie równania kwadratowego dla współczynników a,b,c wczytywanych z klawiatury. Program powinien uwzględniać wszystkie możliwe przypadki dla współczynników i drukować rozwiązania rzeczywiste lub zespolone. 2. Zastosować instrukcję switch do drukowania liczby całkowitej w postaci słownej. Laboratorium nr 5 Instrukcje if, if else, switch Instrukcje iteracyjne n a i i= 1 1. Napisać program obliczający wartość wyrażenia y = wprowadzanych z klawiatury, wykorzystać pętlę for. dla danego n oraz a i 2. Napisać program wypisujący zestawienie temperatur Fahrenheita i odpowiadających im temperatur Celsjusza dla temperatur Fahrenheita w zakresie 20,...,300 stopni, przyjąć przeliczenie temp_celsjusz=5(temp_fahrenheit-32)/9, zastosować pętlę while. 3. Napisać program obliczający n! w dwóch wersjach ( wersja z for i wersja z while). 4. Napisać program inicjalizujący generator liczb pseudolosowych przy zastosowaniu funkcji srand( ), następnie generujący przy użyciu funkcji rand( ) 6 liczb pseudolosowych z zakresu (1,49), oraz 10 liczb pseudolosowych z zakresu (0,100> przy użyciu funkcji random(). (należy włączyć plik nagłówkowy stdlib.h) 5. Korzystając z dwóch pętli for napisać program wyświetlający prostokąt o zadanej liczbie wierszy oraz punktów w wierszu, np. lw=4, pw=4.

4 * * * * * * * * * * * * * * * * 6. Korzystając z dwóch pętli for napisać program wyświetlający trójkąt o zadanej liczbie wierszy lw=4. * * * * * * * * * * Laboratorium nr 6 Typy rzeczywiste 1. Napisać program wczytujący z klawiatury zmienne x i y typu double i obliczający następujące wyrażenie: 3 x y x + x + y x y, x 1 y 100 przy wczytywaniu danych zastosować sprawdzanie formatu i dziedziny. 2. Dane jest wyrażenie log y = 2 ( x 1) + 3 x tgx + log sin x + π ctgx + 3 a) określić dziedzinę, b) określić zakres x ze względu na zakres typu double, c) napisać program obliczający wartość wyrażenia, zastosować kontrolę wejścia ze względu na format typu double, zakres typu double oraz dziedzinę. 3. Napisać program obliczający wartości rozwinięć w szereg Maclaurina następujących funkcji dla zadanego x i zadanego n wprowadzanego z klawiatury i porównać z wartościami otrzymywanymi przy użyciu odpowiednich funkcji z biblioteki standardowej ( math.h) x + e 3 x a) n e x x = n= 0 n!, b ) 2n+ 1 sin x n x = ( 1) n + = 0 (2n 1)!, c) cos x = n = 0 ( 1) n 2n x (2n)!

5 n n+ 1 x < 1 d) ln(1 + ) = ( 1) n= 1 x n x, e) 2n+ 1 n x arctgx = ( 1). n= 0 2n + 1 Laboratorium nr 7 Tablice jednowymiarowe 1. Zainicjować 5-elementową tablicę liczb typu int i wydrukować. 2. Wczytać z klawiatury 6-elementową tablicę liczb typu int z zabezpieczeniem formatu i wydrukować. 3. Uzupełnić program opracowany w pkt.2 o obliczanie sumy elementów tablicy, sumy elementów parzystych i elementów nieparzystych. 4. Napisać program wczytujący z klawiatury 8-elementową tablicę liczb typu double, następnie obliczyć a) sumy elementów dodatnich i ujemnych, b) sumę elementów o wartościach należących do przedziału [a,b], granice przedziału należy wczytać z klawiatury z zabezpieczeniem formatu i spełniające warunek a<b, c) sumę elementów, których indeksy należą do zadanego przedziału indeksów [ind1,ind2], indeksy należy wczytać z klawiatury z zabezpieczeniem formatu i spełniające warunki ind 1 0, ind 2 0 i ind 1 7, ind Wczytać 5-elementową liczb typu double, następnie zamienić w niej elementy o zadanych indeksach, wartości indeksów zainicjalizować, wydrukować tablicę przed zamianą elementów i po zamianie. 6. Napisać program znajdujący we wczytanej tablicy liczb typu int wartości minimalną i maksymalną. 7. Napisać program odwracający kolejność elementów w tablicy. 8. Napisać program przesuwający cyklicznie w prawo o zadaną liczbę pozycji ( przesunięcie takie oznacza, że element o indeksie n-1 wchodzi na pozycję o indeksie 0).

6 Zadania domowe 1. Napisać program drukujący elementy, które się nie powtarzają. 2. Napisać program generujący liczb pseudolosowych z przedziału [0,50) i wyznaczający częstości wystąpień poszczególnych liczb. Laboratorium nr 8 Typ znakowy 1. Wczytać znak przy użyciu każdej z funkcji scanf, getchar i getch, następnie wydrukować stosując funkcje printf, putc i putchar. 2. Napisać program drukujący tabelę kodów ASCII o kodach z przedziału [32-255]. 3. Wydrukować napis " W łańcuchu znaków mogą się znaleźć znaki drukowalne i kody sterujące" stosując kody oktalne polskich liter. 4. Napisać program wczytujący znak i realizujący klasyfikację znaku przy użyciu funkcji isalnum, isalpha, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit. 5. Napisać program wczytujący literę małą i dużą i zamieniający odpowiednio na dużą i małą. 6. Napisać program wczytujący hasło 5-znakowe i podający informacje czy hasło jest prawidłowe, program powinien dopuszczać 3-krotne podanie hasła. 7. Napisać program przepisujący znaki z wejścia na wyjście, aż do podania znaku EOF. 8. Napisać program przepisujący z wejścia na wyjście tylko litery i cyfry, aż do podania znaku EOF. Litery należy zamieniać na duże. 9. Napisać program zliczający wiersze wejściowe ( wiersz- ciąg znaków zakończony '\n').

7 Laboratorium nr 9 Funkcje cz. I 1.Napisać następujące funkcje: // nadd - dodającą dwa argumenty typu int // nsubtract, - odejmującą dwa argumenty typu int // nmultiply, - obliczajacą iloczyn dwóch argumentów typu int //ndivide, - obliczajacą iloraz dwóch argumentów typu int //nresidue - obliczajacą resztę z dzielenia pierwszego argumentu // przez drugi. Defnicje funkcji umieścić po funkcji main(). Każdą z funkcji należy wywołać w main() dla dwóch par argumentów. 2. Napisać funkcję silnia i zastosować do obliczenia n k. 3. Napisać funkcję pierw3 obliczającą pierwiastek 3-go stopnia z liczby typu double. Uwzględnić, że funkcja pow nie może być użyta dla argumentów ujemnych. Zastosować funkcję dla obliczenia pierwiastków 3- stopnia z elementów zainicjowanej tablicy x[9]= {-2, -1.5, -1, -0.5, 0, 0.5,1, 1.5, 2}. Wyniki umieścić w tablicy y, następnie wydrukować tę tablicę. 4. Napisać program realizujący kalkulator czterodziałaniowy wykorzystujący funkcje z zadania 1. Program powinien umożliwiać wprowadzanie operandów typu double z zabezpieczeniem formatu oraz wybór rodzaju działania poprzez podanie symbolu ( '+'-dodawanie, '-' - odejmowanie, '*' -mnożenie oraz ':' - dzielenie. Zakończenie działania programu - ESC (ASCII 27). Tylko te symbole powinny być akceptowane przez program. Gdy dane działanie nie jest wykonalne, powinien się pojawić odpowiedni komunikat.

8 Laboratorium nr 10 Tablice znakowe cz. I 1. Wczytać tablice znaków: tablicę s1[6] przy użyciu scanf, tablicę s2[8] przy użyciu gets, oraz s3[10] stosując fgets, następnie wydrukować poszczególne tablice stosując odpowiednio printf, puts i fputs. 2. Wczytać tablicę znakową 10-elementową, następnie wydrukować 3 pierwsze znaki i 3 ostatnie znaki tablicy, następnie skrócić łańcuch do 6 znaków, wydrukować długości łańcucha przed skróceniem i po skróceniu. 3. Zamienić wszystkie wystąpienia zadanego znaku w tablicy na inny zadany. 4. Zrealizować następujące kopiowania tablic znakowych: a) do tablicy znaków s4[5] skopiować tablicę znaków s5[5]="1234". b) do tablicy znaków s6[5] skopiować trzy ostatnie znaki z tablicy s7[8]="tekst". Wydrukować tablice s6 i s7. 5. Wczytać z klawiatury tablice znakowe nazwisko[10] i imie[10], następnie wykonać następujące działania. c) zamienić wszystkie litery w obu tablicach na małe d) utworzyć tablicę znakową będącą połączeniem obu łańcuchów rozdzielonych jedna spacją e) zmienić w każdej z tablic pierwszą literę na dużą i następnie utworzyć tablicę znakową będącą połączeniem obu tablic 6. Wczytać z klawiatury tablicę znaków lan1, następnie pojedynczy znak oraz tablicę znakową lan2 składającą się z trzech znaków. Sprawdzić przy użyciu funkcji czy zadany znak (funkcja strchr) i lan2 (funkcja strstr) występują w tablicy lan1. 7. Wczytać dwie tablice znaków i wydrukować je w kolejności alfabetycznej. 8. Zrealizować następujące konwersje tablica znaków/ liczba i liczba/ tablica znaków a) wczytać liczbę całkowitą w postaci tablicy znaków i zamienić na postać numeryczną ( funkcja atoi)

9 b) wczytać liczbę rzeczywistą w postaci tablicy znaków i zamienić na postać numeryczną (funkcja atof) Zadania domowe. 1. Napisać program trim usuwający z tablicy znakowej spacje początkowe i spacje końcowe. 2. Napisać program wczytujący tablicę łańcuchów ( tablic znakowych) i posortować je alfabetycznie. 3. Napisać program usuwający komentarze z programu w języku ANSI C i zamieniający wszystkie białe znaki (poza wnętrzem tablic znakowych) na pojedyncze spacje. Laboratorium nr 11 Funkcje cz. II n 1. Napisać funkcje obliczające x, n x, log n x. 5 n xi 2. Napisać program obliczający sumę i =. Zastosować funkcję wczytującą 1 i! tablicę jednowymiarową wczyt1d, funkcję obliczającą silnię, funkcję obliczającą pierwiastek 5-tego stopnia oraz funkcję suma obliczającą sumę. W funkcji main() wywołać funkcję wczyt1d oraz funkcję suma. 3. Napisać funkcję wczytującą tablicę jednowymiarową, funkcję drukującą tablicę jednowymiarową, funkcję przekazującą do funkcji wywołującej sumę elementów z wybranego zakresu indeksów oraz sumę wszystkich elementów tablicy. 4. Napisać funkcję wczytującą tablicę dwuwymiarową oraz funkcję drukującą tablicę dwuwymiarową. Zadanie domowe. 1. Napisać funkcję transpose transponującą macierz 3x3 oraz funkcję compute_row_col obliczającą sumę elementów wybranego wiersza i sumę elementów wybranej kolumny. 2. Napisać funkcję zamien_kol zmieniającą w macierzy miejscami dwie wybrane kolumny

10 oraz funkcję zamien_wiersze zamieniającą dwa wybrane wiersze. 3. Napisać funkcję obliczającą wyznacznik macierzy 4x4 przy zastosowaniu funkcji obliczającej wyznacznik 3x3 metodą Sarrusa. Laboratorium nr 12 Wskaźniki i dynamiczna alokacja pamięci w C, cz. I W ramach przygotowania teoretycznego należy wydrukować plik Wskazniki.pdf oraz strony z WykladAnsiCbeztla.pdf. I. Część teoretyczna. 1. Wyjaśnić następujące pojęcia a) wskaźnik b) operator adresowy c) operator dereferencji II. Wyjaśnić następujące konstrukcje programowe związane ze wskaźnikami, opisy umieścić w sprawozdaniu z laboratorium. 1. int * px,*py;*pa, x=5,y=10, a[20]; 2. double * pd; 3. px=&x; 4. py=&y; 5. y=*px; 6. x=*py; 7. py=px; 8. *px=20; 9. *px=*py+5; Tablice i wskaźniki 10. pa=a; 11.*(pa+1)=10; 12. pa[2]=15; 13,pa++; 14. pa=pa-1; 15 *pa++=30; 16. *++pa=35;

11 III Wyjaśnić pojęcia i konstrukcje programowe związane z dynamiczną alokacją pamięci, opisy umieścić w sprawozdaniu z laboratorium. 1. Alokacja pamięci na etapie kompilacji 2. Dynamiczna alokacja pamieci 3. Funkcje malloc, calloc, free. 4. int * px; 5. double *py; 6. px=(int) malloc( sizeof(int)); 7. py=calloc(5, sizeof(double)); 8. free(px); free(py); Zadanie1. Zdefiniować zmienne x typu int oraz y typu double i zmienne wskaźnikowe px typu wskaźnik do int oraz py typu wskaźnik do double. Wczytać z klawiatury wartości x i y przy użyciu wskaźników, następnie wydrukować bezpośrednio i przy użyciu wskaźników. Zadanie 2. Zdefiniować tablicę tab typu double oraz wskaźnik pa do typu double. Wczytać i wydrukować tablicę tab z użyciem pa. Zadanie 3. Napisać funkcję wymieniającą swoje argumenty typu int. Zadanie 4. Napisać program wyszukujący w tablicy liczb typu int wartości min i max przy użyciu wskaźnika. Zadanie 5. Utworzyć zmienne dynamiczne typu char, int i double, następnie wczytać i wydrukować. Zadanie 6. Alokować pamięć dla 10-elementowych tablic tab1 i tab2 liczb typu int, wczytać tablicę i posortować tab1 niemalejąco przy zastosowaniu algorytmu sortowania bąbelkowego oraz tab2 stosując algorytm prostego wybierania. Laboratorium nr 13 Operatory bitowe w C/C++ Zadanie 1. Napisać program realizujący negację bitów liczby dodatniej x=6 typu char przy użyciu operatora '~ ' i drukujący otrzymany wynik. Następnie zrealizować sprawdzenie

12 poprzez utworzenie 8-bitowej reprezentacji liczby x w kodzie U2 i zanegowanie jej bitów. Wykazać, że otrzymany ciąg bitowy reprezentuje liczbę -7 w 8-bitowym kodzie U2. char x=6,y; y=~x; printf("\n y=%d",y); getch(); Zadanie 2. Napisać program realizujący negację bitów liczby ujemnej x=-7 typu char przy użyciu operatora' ~ ' i drukujący otrzymany wynik. Zrealizować sprawdzenie: utworzyć 8-bitową reprezentację liczby -x w kodzie U2 i zanegować jej bity. Sprawdzić, czy otrzymany ciąg reprezentuje liczbę 6 w 8-bitowym kodzie U2. unsigned char x_=-7,y_; y_=~x_; printf("\n y_=%d",y_); getch(); Zadanie 3 Program realizujący konwersję liczby dziesiętnej na postać binarną. unsigned char liczba=15; int i,mask=1; printf("\n liczba=%d",liczba); int b[8]; for (i=0;i<8;i++) { if (liczba&mask) b[i]=1; else b[i]=0;// mask<<=1; } printf("\n"); for (i=7;i>=0;i--) printf(" %d ", b[i]); lub b[i]= liczba&mask?1:0; // skrócony zapis instrukcji mask=mask<<2; Zadanie 4 Napisać program tworzący maskę bitową zawierającą same zera poza wybranym k-tym bitem równym 1. Wydrukować maskę. unsigned char k=3,maska; maska=1<<k; // maska jest liczbą typu 2^ k. printf("\n maska z k-tym bitem rownym 1 = %d",maska); Zadanie 5 Napisać program tworzący maskę bitową zawierającą same jedynki poza wybranym k-tym bitem równym 1. Wydrukować maskę.

13 maska=~(1<<k); // maska jest liczbą typu 2^8-2^k. printf("\n maska z k-tym bitem rownym 0 = %u",maska); Zadanie 6 Program wyznaczający wartość dziesiętną grupy n bitów w słowie 8-bitowym począwszy od pozycji p. int n=4,p; x=31; p=4; unsigned char w; w=x>>p+1-n &~(~0<<n); printf("\n Wartosc dziesietna grupy %d bitow od pozycji %d=%d",n,p,w); Zadanie 7 Program zmieniający wartość n-tego bitu liczby ( jeżeli bit równy 1 to zmiana na 0, a jeżeli 1 to zmiana na 0) x=31; n=4; w=x^(1<<n); printf("\n Wartosc liczby po zmianie bitu %d =%d",n,w); Zadanie 8 a) Ustawianie najstarszego bitu liczby na 1. x=15; w=x 1<<7; printf("\n Wartosc liczby %d po zmianie bitu x+128 =%d",x,w); b) Ustawianie najstarszego bitu liczby na 0. x=228; w=x&~(1<<7); printf("\n Wartosc liczby %d po zmianie bitu x-128 =%d",x,w); Laboratorium nr 14 Pliki

14 1. Utworzyć plik liczby1.dat w katalogu bieżącym, następnie zapisać do pliku stosując funkcję fprintf liczbę typu int, typu float oraz typu double oddzielając poszczególne liczby spacjami. Odczytać plik przy użyciu fscanf Utworzyć tablicę wartości funkcji f ( x) = x dla x=0.0, 0.5,..., 9.5, zapisać do pliku i odczytać plik. Zastosować fscanf i fprintf. 3. Zdefiniować dwuwymiarową tablicę znaków wyniki[10][80], zapisać do poszczególnych wierszy w postaci łańcuchów znaków x i f(x). Tablicę zapisać do pliku przy zastosowaniu fputs, następnie odczytać stosując fgets. 4. Zapisać do pliku binarnego liczby2.dat pięć liczb typu int przy użyciu fwrite, odczytać stosując fread. 5. Napisać program obliczający sumę liczb w pliku liczby2.dat. 6. Zamienić w pliku miejscami dwa elementy ( fseek). 7. Wykonać kopię pliku liczby2.dat w katalogu bieżącym, następnie przepisać liczby ujemne do pliku liczby3.dat. 8. Znaleźć maksymalny i minimalny element w pliku. 9. Przepisać plik 1 do pliku 2 w odwrotnej kolejności elementów. 10. Posortować plik liczb typu double niemalejąco. Laboratorium nr 15 Działania na strukturach 1. Zdefiniować typ strukturowy student o polach nazwisko (char [20]), imie (char[20]), rok_studiow(int), wydzial(char [20]). Zdefiniować dwie zmienne strukturowe typu student, student1 i student2, polom zmiennej student1 nadać wartości stosując instrukcje podstawienia i kopiowanie łańcuchów, dla zmiennej typu student2 pola wczytać z klawiatury. Wydrukować obie zmienne. 2. Zdefiniować tablicę struktur struktur studenci typu student, wczytać z klawiatury i wydrukować. 3. Zdefiniować typ zagnieżdżony pracownik o polach nazwisko (char [20]), imie (char[20]),

15 staz_pracy (int), firmal(char [20]) i polu strukturowym typu adres ( ulica (char [20]), nr_domu (int), kod (char [8]), miasto (char [20]). Zdefiniować tablicę dwóch struktur typu pracownik, wczytać z klawiatury i wydrukować. 4. Zdefiniować wskaźnik do struktur typu student, alokować dynamicznie jedną strukturę, wczytać z klawiatury i wydrukować. Laboratorium nr 16 Działania na strukturach i plikach 1. Wczytać z klawiatury zadaną tablicę zadanej liczby struktur typu student, zapisać do pliku studenci.dat, odczytać plik i wydrukować. 2. Napisać funkcję wyszukującą w pliku studenci.dat studenta o zadanym nazwisku. 3. Napisać funkcję sortującą plik studenci.dat alfabetycznie według pola nazwisko. 4. Dany jest plik studenci.dat zawierający dane pewnej liczby studentów, przepisać do osobnych plików dane studentów wg roku studiów. Wydrukować poszczególne pliki.

I. Podstawy języka C powtórka

I. Podstawy języka C powtórka I. Podstawy języka C powtórka Zadanie 1. Utwórz zmienne a = 730 (typu int), b = 106 (typu long long), c = 123.45 (typu double) Wypisz następujące komunikaty: Dane sa liczby: a = 730, b = 106 i c = 123.45.

Bardziej szczegółowo

Podstawy Programowania Podstawowa składnia języka C++

Podstawy Programowania Podstawowa składnia języka C++ Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include

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

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

Proste programy w C++ zadania

Proste programy w C++ zadania Proste programy w C++ zadania Zbiór zadao do samodzielnego rozwiązania stanowiący powtórzenie materiału. Podstawy C++ Budowa programu w C++ Dyrektywy preprocesora Usunięcie dublujących się nazw Częśd główna

Bardziej szczegółowo

C++ wprowadzanie zmiennych

C++ wprowadzanie zmiennych C++ wprowadzanie zmiennych Każda zmienna musi być zadeklarowana, należy określić jej nazwę (identyfikator) oraz typ. Opis_typu lista zmiennych Dla każdej zmiennej rezerwowany jest fragment pamięci o określonym

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

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można

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

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

PROGRAMOWANIE W C++ ZADANIA

PROGRAMOWANIE W C++ ZADANIA PROGRAMOWANIE W C++ ZADANIA Włodzimierz Gajda Rozdział 7 PĘTLE 7.1 PĘTLA FOR: rysowanie wzorków. ZADANIE 7.1.1 Napisz program drukujący na ekranie 19 gwiazdek: ******************* ZADANIE 7.1.2 Napisz

Bardziej szczegółowo

INFORMATYKA Studia Niestacjonarne Elektrotechnika

INFORMATYKA Studia Niestacjonarne Elektrotechnika INFORMATYKA Studia Niestacjonarne Elektrotechnika Wydział Elektrotechniki i Informatyki dr inż. Michał Łanczont Wydział Elektrotechniki i Informatyki p. E419 tel. 81-538-42-93 m.lanczont@pollub.pl http://lanczont.pollub.pl

Bardziej szczegółowo

Warszawa dnia 2 stycznia 2011 r. Zbiór zadań z programowania w języku C do samodzielnego wykonania

Warszawa dnia 2 stycznia 2011 r. Zbiór zadań z programowania w języku C do samodzielnego wykonania Warszawa dnia 2 stycznia 2011 r. Przedmioty: Wstęp do programowania Wstęp do informatyki Zbiór zadań z programowania w języku C do samodzielnego wykonania Prowadzący; dr inż. Stanisław Wszelak Ćwiczenie

Bardziej szczegółowo

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: 1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: * Jan Kowalski * * ul. Zana 31 * 3. Zadeklaruj zmienne przechowujące

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

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

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

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 11. Elektrotechnika, semestr II rok akademicki 2008/2009

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 11. Elektrotechnika, semestr II rok akademicki 2008/2009 Informatyka 1 zajęcia nr 11 Elektrotechnika, semestr II rok akademicki 2008/2009 mgr inż.. Paweł Myszkowski Plan dzisiejszych zajęć 1. Łańcuchy znaków 2. Wprowadzanie i wyprowadzanie znaków w i łańcuchów

Bardziej szczegółowo

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); } OPERACJE WEJŚCIA / WYJŚCIA Funkcja: printf() biblioteka: wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout) int printf ( tekst_sterujący, argument_1, argument_2,... ) ;

Bardziej szczegółowo

Programowanie strukturalne i obiektowe

Programowanie strukturalne i obiektowe Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie

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

Pliki. Informacje ogólne. Obsługa plików w języku C

Pliki. Informacje ogólne. Obsługa plików w języku C Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych (np. dysku twardym, pendrive, płycie DVD itp.). Może posiadać określone atrybuty, a odwołanie do niego

Bardziej szczegółowo

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy, Lista 3 Zestaw I Zadanie 1. Zaprojektować i zaimplementować funkcje: utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy, zapisz

Bardziej szczegółowo

1 Powtórzenie wiadomości

1 Powtórzenie wiadomości 1 Powtórzenie wiadomości Zadanie 1 Napisać program, który w trybie dialogu z użytkownikiem przyjmie liczbę całkowitą, a następnie wyświetli informację czy jest to liczba parzysta czy nieparzysta oraz czy

Bardziej szczegółowo

3. Opracować program kodowania/dekodowania pliku tekstowego. Algorytm kodowania:

3. Opracować program kodowania/dekodowania pliku tekstowego. Algorytm kodowania: Zadania-7 1. Opracować program prowadzący spis pracowników firmy (max.. 50 pracowników). Każdy pracownik opisany jest za pomocą struktury zawierającej nazwisko i pensję. Program realizuje następujące polecenia:

Bardziej szczegółowo

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

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 12. Karol Tarnowski A-1 p. Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 12 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Obsługa łańcuchów znakowych getchar(), putchar()

Bardziej szczegółowo

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119 Tablice Tablica to struktura danych, która może przechowywać wiele wartości tego samego typu. Na przykład tablica może zawierać: 10 wartości typu int opisujących liczbę studentów przyjętych na kierunek

Bardziej szczegółowo

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 4. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 4. Karol Tarnowski A-1 p. Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy Wykład 4 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Tablice Wskaźniki Adresy pamięci Operator adresu

Bardziej szczegółowo

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Temat 1: Podstawowe pojęcia: program, kompilacja, kod Temat 1: Podstawowe pojęcia: program, kompilacja, kod wynikowy. Przykłady najprostszych programów. Definiowanie zmiennych. Typy proste. Operatory: arytmetyczne, przypisania, inkrementacji, dekrementacji,

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

do instrukcja while (wyrażenie);

do instrukcja while (wyrażenie); Instrukcje pętli -ćwiczenia Instrukcja while Pętla while (póki) powoduje powtarzanie zawartej w niej sekwencji instrukcji tak długo, jak długo zaczynające pętlę wyrażenie pozostaje prawdziwe. while ( wyrażenie

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

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

Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski 7 kwietnia 2014 1. Wprowadzenie Pierwsza część instrukcji zawiera informacje

Bardziej szczegółowo

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40 Programowanie w C++ Wykład 5 Katarzyna Grzelak 26 marca 2018 9 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40 Pojęcia z poprzedniego wykładu Podział programu na funkcje podział na niezależne

Bardziej szczegółowo

Inicjacja tablicy jednowymiarowej

Inicjacja tablicy jednowymiarowej TABLICE C++ Inicjacja tablicy jednowymiarowej typ_komórek_tablicy nazwa_tablicy [ ilość elementów tablicy ] ; np.: int tablica[1000]; czyli tablica, która może przechowywać tysiąc elementów typu całkowitego,

Bardziej szczegółowo

1. Wprowadzanie danych z klawiatury funkcja scanf

1. Wprowadzanie danych z klawiatury funkcja scanf 1. Wprowadzanie danych z klawiatury funkcja scanf Deklaracja int scanf ( const char *format, wskaźnik, wskaźnik,... ) ; Biblioteka Działanie stdio.h Funkcja scanf wczytuje kolejne pola (ciągi znaków),

Bardziej szczegółowo

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Załóżmy, że uprawiamy jogging i chcemy monitorować swoje postępy. W tym celu napiszemy program, który zlicza, ile czasu

Bardziej szczegółowo

Napisz program wypisujący na standardowym wyjściu następujący napis: Napis zawierający różne dziwne znaczki // \ \$ &%.

Napisz program wypisujący na standardowym wyjściu następujący napis: Napis zawierający różne dziwne znaczki // \ \$ &%. ZADANIE 1. ZADANIE 2. ZADANIE 3. ZADANIE 4. ZADANIE 5. ZADANIE 6. ZADANIE 7. ZADANIE 8. ZADANIE 9. ZADANIE 10. ZADANIE 11. Napisz program wypisujący na standardowym wyjściu następujący napis: Napis zawierający

Bardziej szczegółowo

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p. Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Wskaźnik do pliku Dostęp do pliku: zapis, odczyt,

Bardziej szczegółowo

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); } OPERACJE WEJŚCIA / WYJŚCIA Funkcja: printf() biblioteka: wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout) int printf ( tekst_sterujący, argument_1, argument_2,... ) ;

Bardziej szczegółowo

Pytania sprawdzające wiedzę z programowania C++

Pytania sprawdzające wiedzę z programowania C++ Pytania sprawdzające wiedzę z programowania C++ Wstęp 1. Zaprezentuj mechanikę tworzenia programu napisanego w języku C++. 2. Co to jest kompilacja? 3. Co to jest konsolidacja? 4. Co to jest kod wykonywalny?

Bardziej szczegółowo

Podstawy programowania w języku C i C++

Podstawy programowania w języku C i C++ Podstawy programowania w języku C i C++ Część czwarta Operatory i wyrażenia Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,

Bardziej szczegółowo

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja; INSTRUKCJE ITERACYJNE WHILE, DO WHILE, FOR Instrukcje iteracyjne pozwalają powtarzać daną instrukcję programu określoną liczbę razy lub do momentu osiągnięcia określonego skutku. Pętla iteracyjna while

Bardziej szczegółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu. Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą

Bardziej szczegółowo

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p. Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy

Bardziej szczegółowo

Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski

Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski Programowanie w C/C++ Instrukcje - konstrukcje powtórka LABORKA Piotr Ciskowski zadanie 1. Licz się ze sobą Napisz funkcję bez argumentów i bez wyniku, która za każdym wywołaniem będzie podawała, ile razy

Bardziej szczegółowo

Ćwiczenia podstawowe, zestaw 5, część 1

Ćwiczenia podstawowe, zestaw 5, część 1 Ćwiczenia podstawowe, zestaw 5, część 1 1 Napisz zestaw funkcji identyfikujących rodzaj znaku Należy napisać funkcje, pozwalające na identyfikowanie typu znaku przekazanego parametrem. Załóżmy, że tworzymy

Bardziej szczegółowo

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja Pętle W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. Instrukcja for ma następującą postać: for (w1;w2;w3) instrukcja w1, w2, w3 są wyrażeniami Schemat blokowy

Bardziej szczegółowo

Zaprojektować i zaimplementować algorytm realizujący następujące zadanie.

Zaprojektować i zaimplementować algorytm realizujący następujące zadanie. Lista 1 Utworzenie tablicy jest równoznaczne z alokacją pamięci na elementy tablicy (utworzeniem dynamicznej tablicy). W zadaniach należy pamiętać o zwolnieniu zasobów przydzielonych na stercie. Zabronione

Bardziej szczegółowo

wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,

wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury, , Programowanie, uzupełnienie notatek: dr Jerzy Białkowski , 1 2 3 4 , Wczytywanie liczb , Wczytywanie liczb 1 #include 2 #include < s t d l i b. h> 3 4 int main ( ) { 5 int rozmiar, numer

Bardziej szczegółowo

Podstawy Informatyki

Podstawy Informatyki Podstawy Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 3 Bożena Woźna-Szcześniak (AJD) Podstawy Informatyki Wykład 3 1 / 42 Reprezentacja liczb całkowitych

Bardziej szczegółowo

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH ĆWICZENIE NR 9 WYRAŻENIA LOGICZNE, INSTRUKCJE WARUNKOWE I INSTRUKCJE ITERACYJNE W PROGRAMIE KOMPUTEROWYM MATLAB Dr inż. Sergiusz Sienkowski ĆWICZENIE NR

Bardziej szczegółowo

Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1

Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1 Operatory Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1 Przypomnienie: operatory Operator przypisania = przypisanie x = y x y Operatory arytmetyczne

Bardziej szczegółowo

DYNAMICZNE PRZYDZIELANIE PAMIECI

DYNAMICZNE PRZYDZIELANIE PAMIECI DYNAMICZNE PRZYDZIELANIE PAMIECI Pamięć komputera, dostępna dla programu, dzieli się na cztery obszary: kod programu, dane statyczne ( np. stałe i zmienne globalne programu), dane automatyczne zmienne

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

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja; INSTRUKCJE ITERACYJNE WHILE, DO WHILE, FOR Instrukcje iteracyjne pozwalają powtarzać daną instrukcję programu określoną liczbę razy lub do momentu osiągnięcia określonego skutku. Pętla iteracyjna while

Bardziej szczegółowo

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym

Bardziej szczegółowo

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4 Dr inż. Dariusz JĘDRZEJCZYK Wskaźniki Dynamiczna alokacja pamięci Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Wskaźnik to

Bardziej szczegółowo

Język C zajęcia nr 5

Język C zajęcia nr 5 Język C zajęcia nr 5 Instrukcja wyboru switch switch ( wyr ) inst Głównym przeznaczeniem instrukcji switch jest rozgałęzianie wykonania programu na wiele różnych ścieżek w zależności od wartości pewnego

Bardziej szczegółowo

Język ANSI C tablice wielowymiarowe

Język ANSI C tablice wielowymiarowe Język ANSI C tablice wielowymiarowe Gdy tablica wielowymiarowa jest parametrem funkcji, to w standardzie ANSI C konieczne jest podanie wszystkich wymiarów poza pierwszym. Przykład. Napisać program wczytujący

Bardziej szczegółowo

tablica: dane_liczbowe

tablica: dane_liczbowe TABLICE W JĘZYKU C/C++ tablica: dane_liczbowe float dane_liczbowe[5]; dane_liczbowe[0]=12.5; dane_liczbowe[1]=-0.2; dane_liczbowe[2]= 8.0;... 12.5-0.2 8.0...... 0 1 2 3 4 indeksy/numery elementów Tablica

Bardziej szczegółowo

Pliki. Informacje ogólne. Obsługa plików w języku C

Pliki. Informacje ogólne. Obsługa plików w języku C Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych. Może posiadać określone atrybuty, a odwołanie do niego odbywa się poprzez nazwę. Każdy plik ma skończoną

Bardziej szczegółowo

n, m : int; S, a, b : double. Gdy wartości sumy składowej nie można obliczyć, to przyjąć Sij = 1.03 Dla obliczenia Sij zdefiniować funkcję.

n, m : int; S, a, b : double. Gdy wartości sumy składowej nie można obliczyć, to przyjąć Sij = 1.03 Dla obliczenia Sij zdefiniować funkcję. Zadania-6 1 Opracować program obliczający wartość sumy: S n m ai bj i 1 j 1 ln( bi j a) n, m : int; S, a, b : double Gdy wartości sumy składowej nie można obliczyć, to przyjąć Sij = 103 Dla obliczenia

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

Funkcje zawarte w bibliotece < io.h >

Funkcje zawarte w bibliotece < io.h > PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece

Bardziej szczegółowo

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] 3-2 5 8 12-4 -26 12 45-76

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] 3-2 5 8 12-4 -26 12 45-76 . p. 1 Algorytmem nazywa się poddający się interpretacji skończony zbiór instrukcji wykonania zadania mającego określony stan końcowy dla każdego zestawu danych wejściowych W algorytmach mogą występować

Bardziej szczegółowo

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char Programowanie C++ Informacje wstępne #include - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char = -128 do 127, unsigned char = od

Bardziej szczegółowo

IX. Wskaźniki.(3 godz.)

IX. Wskaźniki.(3 godz.) Opracowała: dr inż. Anna Dubowicka Uczelniane Centrum Komputerowe PK IX. Wskaźniki.(3 godz.) Wskaźnik jest zmienną, która zawiera adres innej. 1. Definiowanie wskaźników. typ * nazwa ; gdzie: znak * informuje

Bardziej szczegółowo

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Pzetestuj działanie pętli while i do...while na poniższym przykładzie: Pzetestuj działanie pętli while i do...while na poniższym przykładzie: Zadania pętla while i do...while: 1. Napisz program, który wczytuje od użytkownika liczbę całkowitą, dopóki podana liczba jest mniejsza

Bardziej szczegółowo

Laboratorium nr 1. i 2.

Laboratorium nr 1. i 2. Laboratorium nr 1. i 2. Celem laboratorium jest zapoznanie się ze zintegrowanym środowiskiem programistycznym, na przykładzie podstawowych aplikacji z obsługą standardowego wejścia wyjścia, podstawowych

Bardziej szczegółowo

wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis

wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis i cz. 2 Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 i cz. 2 2 i cz. 2 3 Funkcje i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje instrukcje } i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje

Bardziej szczegółowo

Języki i metodyka programowania. Wprowadzenie do języka C

Języki i metodyka programowania. Wprowadzenie do języka C Literatura: Brian W. Kernighan, Dennis M. Ritchie Język Ansi C, Wydawnictwa Naukowo - Techniczne, 2007 http://cm.bell-labs.com/cm/cs/cbook/index.html Scott E. Gimpel, Clovis L. Tondo Język Ansi C. Ćwiczenia

Bardziej szczegółowo

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Pętla while Pętla while Pętla

Bardziej szczegółowo

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Typ znakowy Typ znakowy Typ wyliczeniowy # include

Bardziej szczegółowo

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki Wykład 2 - podstawy języka C++ Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu. Zmienne i ich nazwy, podstawowe typy: całkowite, rzeczywiste, znakowe i napisowe. Instrukcje:

Bardziej szczegółowo

Programowanie obiektowe - zadania

Programowanie obiektowe - zadania Programowanie obiektowe - zadania Elementy języka Java Zad.1. Napisz program, który sprawdza, czy dana liczba całkowita jest parzysta. Zad.2. Napisz program, który sumuje dane dwie liczby tylko w przypadku,

Bardziej szczegółowo

Funkcje zawarte w bibliotece < io.h >

Funkcje zawarte w bibliotece < io.h > PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece

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

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Cechy C++ Język ogólnego przeznaczenia Można programować obiektowo i strukturalnie Bardzo wysoka wydajność kodu wynikowego

Bardziej szczegółowo

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 9 - sem.iii. Dr inż. M. Czyżak

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 9 - sem.iii. Dr inż. M. Czyżak Katedra Elektrotechniki Teoretycznej i Informatyki wykład 9 - sem.iii Dr inż. M. Czyżak Język ANSI C tablice znaków Tablice znaków (łańcuchy) Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej

Bardziej szczegółowo

Zadania język C++ Zad. 1. Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy.

Zadania język C++ Zad. 1. Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy. Zadania język C++ Zad. 1 Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy. (Być moŝe są w tym samym wieku. Zrób w programie warunek,

Bardziej szczegółowo

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 7- sem.iii. M. Czyżak

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 7- sem.iii. M. Czyżak Katedra Elektrotechniki Teoretycznej i Informatyki wykład 7- sem.iii M. Czyżak Język C tablice znaków Tablice znaków (łańcuchy) Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej przetwarzanie

Bardziej szczegółowo

4. Napisz program wyznaczający wartość funkcji. f (x) = x cos x + e 4x 7. w zadanym punkcie.

4. Napisz program wyznaczający wartość funkcji. f (x) = x cos x + e 4x 7. w zadanym punkcie. Zadania 1. Napisz program, który wyświetla na ekranie komunikat Witaj. 2. Napisz program przeliczający wielkość kąta wyrażoną w stopniach na radiany według wzoru π Rad = St 180. Liczba π ma w języku C++

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

PRZYKŁADY OPERACJI PLIKOWYCH z wykorzystaniem biblioteki <stdio.h>

PRZYKŁADY OPERACJI PLIKOWYCH z wykorzystaniem biblioteki <stdio.h> PRZYKŁADY OPERACJI PLIKOWYCH z wykorzystaniem biblioteki Pliki TEKSTOWE zawierające ciągi liczb: TXT- 1: Kalkulator sumowanie dwóch liczb zapisanych w pliku tekstowym ( fopen, fscanf, fprintf,

Bardziej szczegółowo

Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja!

Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja! Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja! Krzysztof Grudzień kgrudzi@kis.p.lodz.pl! Zbigniew Chaniecki zch@kis.p.lodz.pl 1 program zajęć - wykład Podstawowe pojęcia

Bardziej szczegółowo

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Dr inż. Grażyna KRUPIŃSKA Grazyna.Krupinska@fis.agh.edu.pl D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Wyrażenia 2 Wyrażenia w języku C są bardziej elastyczne niż wyrażenia w jakimkolwiek innym języku

Bardziej szczegółowo

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia. ARYTMETYKA BINARNA ROZWINIĘCIE DWÓJKOWE Jednym z najlepiej znanych sposobów kodowania informacji zawartej w liczbach jest kodowanie w dziesiątkowym systemie pozycyjnym, w którym dla przedstawienia liczb

Bardziej szczegółowo

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO Rozdział 1. Wybór i instalacja kompilatora języka Pascal 1.1. Współczesne wersje kompilatorów Pascala 1.2. Jak zainstalować

Bardziej szczegółowo

۰ Elementem jednostkowym takiego pliku jest bajt. ۰ Format pliku binarnego: [bajty pliku][eof]

۰ Elementem jednostkowym takiego pliku jest bajt. ۰ Format pliku binarnego: [bajty pliku][eof] 1 Plik jest wydzielonym fragmentem pamięci (najczęściej dyskowej) posiadającym nazwę. Z punktu widzenia C plik jest ciągiem bajtów, z których każdy może zostać oddzielnie odczytany. Zgodnie ze standardem

Bardziej szczegółowo

Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop

Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop. 2016 Spis treści Wprowadzenie 11 Adresaci książki 12 Co wyróżnia tę książkę na

Bardziej szczegółowo

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania Rok akademicki 2013/2014, Pracownia nr 10 2/20 Informatyka 1 Tablica elementów ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu Politechnika Białostocka - Wydział Elektryczny Elektrotechnika,

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

Metody numeryczne Laboratorium 2

Metody numeryczne Laboratorium 2 Metody numeryczne Laboratorium 2 1. Tworzenie i uruchamianie skryptów Środowisko MATLAB/GNU Octave daje nam możliwość tworzenia skryptów czyli zapisywania grup poleceń czy funkcji w osobnym pliku i uruchamiania

Bardziej szczegółowo

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015 POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015 Język programowania: Środowisko programistyczne: C/C++ Qt Wykład 4 : Napisy. Tablice dwuwymiarowe. Formaty

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

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

Biblioteka standardowa - operacje wejścia/wyjścia

Biblioteka standardowa - operacje wejścia/wyjścia Biblioteka standardowa - operacje wejścia/wyjścia Przemysław Gawroński D-10, p. 234 Wykład 6 15 stycznia 2019 (Wykład 6) Biblioteka standardowa - operacje wejścia/wyjścia 15 stycznia 2019 1 / 14 Outline

Bardziej szczegółowo

( wykł. dr Marek Piasecki )

( wykł. dr Marek Piasecki ) INE 1007 Informatyka 1 Język programowania C++ ( wykł. dr Marek Piasecki ) Literatura: dowolny podręcznik do języka C++ (na laboratoriach Borland C++ 3.1) Robert Lafore Jerzy Grębosz Andrzej Zalewski Programowanie

Bardziej szczegółowo