Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Programowanie imperatywne i język C

Коpie: 1
Programowanie imperatywne i język C Copyright, 2005 © Jerzy R. Nawrocki Wstęp.

Podobne prezentacje


Prezentacja na temat: "Programowanie imperatywne i język C"— Zapis prezentacji:

1 Programowanie imperatywne i język C
(c) Jerzy Nawrocki Wykł. 2 Wstęp do informatyki Wykład 2 Programowanie imperatywne i język C Copyright, 2005 © Jerzy R. Nawrocki Wstęp do informatyki

2 Pierwszy Imperator Rzymu
Imperatywność łac. imperare rozkazywać Oktawian August 63 p.n.e – 14 n.e. Pierwszy Imperator Rzymu J.Nawrocki, Programowanie imperatywne i C

3 Klasy języków programowania
Języki programowania Imperatywne Deklaratywne Ciąg rozkazów Jak ? Opis problemu Co ? Fortran Algol Pascal C C++ Java Prolog ILOG J.Nawrocki, Programowanie imperatywne i C

4 J.Nawrocki, Programowanie imperatywne i C
(c) Jerzy Nawrocki Plan wykładu Wykł. 2 Programy z jedną instrukcją Dwie instrukcje i \n Koncepcja zmiennej Drukowanie wartości zmiennej Czytanie liczb Instrukcja warunkowa Uproszczona instrukcja warunkowa Instrukcja powtarzania ‘while’. J.Nawrocki, Programowanie imperatywne i C Wstęp do informatyki

5 Pisz „Bitwa pod Akcjum”.
Plan wykładu Pisz „Bitwa pod Akcjum”. Programy z jedną instrukcją Dwie instrukcje i \n Koncepcja zmiennej Drukowanie wartości zmiennej Czytanie liczb Instrukcja warunkowa Uproszczona instrukcja warunkowa Instrukcja powtarzania ‘while’ J.Nawrocki, Programowanie imperatywne i C

6 Program z jedną instrukcją
Drukowany tekst void main() { printf("Bitwa pod Akcjum\n"); return; } Bitwa pod Akcjum J.Nawrocki, Programowanie imperatywne i C

7 Kompilacja programu i wykonanie obliczeń
1. Zapisanie programu w pliku 2. Kompilacja np. tcc Akc.c Akc.c Akc.exe 3. Wykonanie obliczeń przez Akc.exe Dane wejściowe Bitwa pod Akcjum Wyniki J.Nawrocki, Programowanie imperatywne i C

8 Program z dwiema instrukcjami
void main() { printf("Bitwa pod Akcjum.\n"); printf("Zwyciestwo.\n"); return; } Bitwa pod Akcjum. Zwyciestwo. J.Nawrocki, Programowanie imperatywne i C

9 J.Nawrocki, Programowanie imperatywne i C
Znak nowej linii \n void main() { printf(„Bitwa pod \n Akcjum."); printf(„Zwyciestwo.\n"); return; } Bitwa pod Akcjum. Zwyciestwo. J.Nawrocki, Programowanie imperatywne i C

10 J.Nawrocki, Programowanie imperatywne i C
Znak nowej linii \n void main() { printf("Bitwa pod Akcjum \n"); printf("Zwyciestwo.\n"); return; } void main() { printf("Bitwa pod Akcjum. \nZwyciestwo.\n"); return; } Bitwa pod Akcjum. Zwyciestwo. J.Nawrocki, Programowanie imperatywne i C

11 J.Nawrocki, Programowanie imperatywne i C
Zmienna jako pamięć Cel: Pamiętanie wartości (np. liczby) Dwie operacje do wyboru: Zapisanie jakieś wartości. Odczytanie wartości. 121 Zmienna Zapisz 5 Zapisz 121 Odczytaj Jest 121 J.Nawrocki, Programowanie imperatywne i C

12 J.Nawrocki, Programowanie imperatywne i C
Zmienna jako pamięć W programie można używać wielu zmiennych. Dlatego trzeba je nazywać. 18 Zmienna X 2 Zmienna Y 33 Zmienna SUMA Zapisz w X 18 Zapisz w Y 2 Zapisz w SUMA sumę X+Y J.Nawrocki, Programowanie imperatywne i C

13 J.Nawrocki, Programowanie imperatywne i C
Zmienna jako pamięć 18 Zmienna X void main() { ... X = 18; Y = 2; SUMA = X + Y; } Język C 2 Zmienna Y 20 Zmienna SUMA Zapisz w X 18 Zapisz w Y 2 Zapisz w SUMA sumę X+Y J.Nawrocki, Programowanie imperatywne i C

14 J.Nawrocki, Programowanie imperatywne i C
Typy zmiennych Komputer inaczej przetwarza Liczby całkowite (.., -2, -1, 0, 1, 2, ..) Liczby rzeczywiste (-1.5, 0.5, 2.3, ..) Pojedyncze znaki ('a', 'b', 'z', 'A', 'Z', '+', '-', '*', '$', '0', '9', ..) Ciągi znaków ("on", "rok 1956", ..) Zmienna: typ + nazwa Przykładowe typy zmiennych w języku C: int – liczby całkowite (ang. integer) float – liczby rzeczywiste (ang. floating point) char – znaki (ang. character) J.Nawrocki, Programowanie imperatywne i C

15 Prosty program ze zmiennymi
Deklaracje zmiennych void main() { ... return; } Instrukcje Zmienna: typ + nazwa Deklaracje zmiennych: typ nazwy_oddzielone_przecinkami ; J.Nawrocki, Programowanie imperatywne i C

16 J.Nawrocki, Programowanie imperatywne i C
Zmienna jako pamięć Kompletny program void main() { int X, Y, SUMA; X = 18; Y = 2; SUMA = X + Y; return; } void main() { ... X = 18; Y = 2; SUMA = X + Y; } Deklaracje zmiennych: typ nazwy_oddzielone_przecinkami ; J.Nawrocki, Programowanie imperatywne i C

17 Drukowanie wartości zmiennej
Kompletny program Nie widać wyników! void main() { int X, Y, SUMA; X = 18; Y = 2; SUMA = X + Y; return; } J.Nawrocki, Programowanie imperatywne i C

18 Drukowanie wartości zmiennej
void main() { int X, Y, SUMA; X = 18; Y = 2; SUMA = X + Y; printf("%d \n", SUMA); return; } Kompletny program Ogólniejsza postać printf: printf(" format ", zmienne); %d oznacza int printf("X = %d \n", X); X = 18 printf("Y= %d; X= %d \n", Y, X); Y= 2; X= 18 20 J.Nawrocki, Programowanie imperatywne i C

19 J.Nawrocki, Programowanie imperatywne i C
Zadanie Napisać program wyświetlający sumę dowolnych dwóch liczb całkowitych. 18 2 = 20 0 5 0 + 5 = 5 -3 1 = -2 J.Nawrocki, Programowanie imperatywne i C

20 Jak wczytać wartości X,Y?
Czytanie liczb Jak wczytać wartości X,Y? void main() { int X, Y, SUMA; X = 18; Y = 2; SUMA = X + Y; printf("%d + %d = %d \n", X, Y, SUMA); return; } = 20 J.Nawrocki, Programowanie imperatywne i C

21 scanf(" format ", adresy_zmiennych);
Czytanie liczb Jak wczytać wartości X,Y? scanf(" format ", adresy_zmiennych); scanf(" %d ", &X ); void main() { int X; scanf("%d", &X); printf("%d \n", X ); return; } J.Nawrocki, Programowanie imperatywne i C

22 scanf(" format ", adresy_zmiennych);
Czytanie liczb Jak wczytać wartości X,Y? scanf(" format ", adresy_zmiennych); scanf(" %d ", &X ); scanf(" %d %d ", &X, &Y ); & - bardzo ważny! J.Nawrocki, Programowanie imperatywne i C

23 J.Nawrocki, Programowanie imperatywne i C
Czytanie liczb 18 2 void main() { int X, Y, SUMA; scanf("%d %d", &X, &Y); SUMA = X + Y; printf("%d + %d = %d \n", X, Y, SUMA); return; } = 20 J.Nawrocki, Programowanie imperatywne i C

24 J.Nawrocki, Programowanie imperatywne i C
Zadanie Napisać program wyświetlający minimum z dwóch liczb całkowitych. 18 2 min(18, 2)= 2 0 5 min(0, 5)= 0 -3 1 min(-3, 1)= -3 5 5 min(5, 5)= 5 J.Nawrocki, Programowanie imperatywne i C

25 Język schematów blokowych
(c) Jerzy Nawrocki Język schematów blokowych Wykł. 2 Start R2 > 0 Tak Nie R  1 S  S + 1 Stop J.Nawrocki, Programowanie imperatywne i C Wstęp do informatyki

26 J.Nawrocki, Programowanie imperatywne i C
Schemat rozwiązania Start Czytaj X,Y X < Y Nie Drukuj(Y) Tak Drukuj(X) Stop J.Nawrocki, Programowanie imperatywne i C

27 J.Nawrocki, Programowanie imperatywne i C
Instrukcja warunkowa if ( warunek ) { instrukcje_1 } else { instrukcje_2 if ( ładna_pogoda ) { o_19tej_idziemy_na_spacer; } else { o_19tej_idziemy_do_kina; J.Nawrocki, Programowanie imperatywne i C

28 J.Nawrocki, Programowanie imperatywne i C
Instrukcja warunkowa void main() { int X, Y; scanf("%d %d", &X, &Y); if ( X < Y ) { printf("min(%d, %d)= %d \n", X, Y, X); }else { printf("min(%d, %d)= %d \n", X, Y, Y); } return; Czytaj X,Y Nie X < Y Tak Drukuj(X) Drukuj(Y) J.Nawrocki, Programowanie imperatywne i C

29 Jeśli Marek Antoniusz nie ustąpi, to wypowiemy wojnę Egiptowi.
Plan wykładu Jeśli Marek Antoniusz nie ustąpi, to wypowiemy wojnę Egiptowi. Programy z jedną instrukcją Dwie instrukcje i \n Koncepcja zmiennej Drukowanie wartości zmiennej Czytanie liczb Instrukcja warunkowa Uproszczona instrukcja warunkowa Instrukcja powtarzania ‘while’ J.Nawrocki, Programowanie imperatywne i C

30 J.Nawrocki, Programowanie imperatywne i C
Zadanie Napisać program wyświetlający wartość bezwzględną podanej liczby całkowitej. 3 3 -3 3 J.Nawrocki, Programowanie imperatywne i C

31 J.Nawrocki, Programowanie imperatywne i C
Schemat rozwiązania Czytaj X Nie X < 0 Tak X  – X Drukuj X J.Nawrocki, Programowanie imperatywne i C

32 Uproszczona instrukcja warunkowa
if ( warunek ) { instrukcje } if ( pożar ) { dzwonPoStrazPozarna; } J.Nawrocki, Programowanie imperatywne i C

33 Uproszczona instrukcja warunkowa
void main() { int X; scanf("%d", &X); if ( X < 0 ) { X = -X; } printf("%d \n", X); return; Czytaj X Nie X < 0 Tak X  – X Drukuj X J.Nawrocki, Programowanie imperatywne i C

34 Uproszczona instrukcja warunkowa
-3 void main() { int X; scanf("%d", &X); if ( X < 0 ) { X = -X; } printf("%d \n", X); return; X -3 J.Nawrocki, Programowanie imperatywne i C

35 Jak długo Marek Antoniusz jest z Kleopatrą,
Plan wykładu Jak długo Marek Antoniusz jest z Kleopatrą, będziemy walczyć. Programy z jedną instrukcją Dwie instrukcje i \n Koncepcja zmiennej Drukowanie wartości zmiennej Czytanie liczb Instrukcja warunkowa Uproszczona instrukcja warunkowa Instrukcja powtarzania ‘while’ J.Nawrocki, Programowanie imperatywne i C

36 J.Nawrocki, Programowanie imperatywne i C
Zadanie Napisać program obliczający liczbę cyfr dziesiętnych podanej liczby naturalnej (0, 1, 2, ..). 0 ma cyfr: 1 9 9 ma cyfr: 1 10 10 ma cyfr: 2 99 99 ma cyfr: 2 100 100 ma cyfr: 3 J.Nawrocki, Programowanie imperatywne i C

37 J.Nawrocki, Programowanie imperatywne i C
Analiza zadania Napisać program obliczający liczbę cyfr dziesiętnych podanej liczby naturalnej (0, 1, 2, ..). 0, .. 9, 10, .. 99, 100, , 1 000, , , .. J.Nawrocki, Programowanie imperatywne i C

38 J.Nawrocki, Programowanie imperatywne i C
Analiza zadania 0, .. 9, , .. 99, , , , , , .. 1 cyf. X<10 2 cyf. X<100 3 cyfry X<1000 4 cyfry X<10000 C=1 G=10 X >= G C= C + 1 G= G * 10 Tak X >= G C= C + 1 G= G * 10 Tak X >= G C= Cyfr G= Granica C= C + 1 G= G * 10 Tak X >= G J.Nawrocki, Programowanie imperatywne i C

39 Przykładowe obliczenie
9 Czytaj X C  1 G  10 Jak to sprawdzić? X C G Nie X >= G Tak C  C + 1 G  G * 10 Drukuj C J.Nawrocki, Programowanie imperatywne i C

40 Instrukcja powtarzania
Czytaj X C  1 G  10 while ( warunek ) { instrukcje; } Nie X >= G while ( X >= G ) { C= C + 1; G= G * 10; } Tak C  C + 1 G  G * 10 Drukuj C J.Nawrocki, Programowanie imperatywne i C

41 J.Nawrocki, Programowanie imperatywne i C
Program w C Czytaj X C  1 G  10 void main() { int X, C, G; scanf("%d", X); C= 1; G= 10; while (X >= G) { C= C + 1; G= G * 10; } printf("%d ma cyfr: %d \n", X, C); return; Nie X >= G Tak C  C + 1 G  G * 10 Drukuj C J.Nawrocki, Programowanie imperatywne i C

42 J.Nawrocki, Programowanie imperatywne i C
Podsumowanie Podsumujmy. Drukowanie i czytanie liczb w C. Instrukcje warunkowe ‘if’. Instrukcja powtarzania ‘while’. Język schematów blokowych jest wygodnym narzędziem opisu algorytmów. J.Nawrocki, Programowanie imperatywne i C


Pobierz ppt "Programowanie imperatywne i język C"

Podobne prezentacje


Reklamy Google