Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

Podobne dokumenty
Język C zajęcia nr 5

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Instrukcje sterujące. Programowanie Proceduralne 1

Podstawy programowania C. dr. Krystyna Łapin

Język C, instrukcje sterujące (laboratorium)

dr inż. Jarosław Forenc

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

for (i=0; i<10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy for (inicjalizacja; test; aktualizacja) instrukcja;

while (test) instrukcja; int i=0; while (i<10) i++; dopóki test prawdziwy wykonuj instrukcję Wykonano: 35% / \ fałsz test prawda instrukcja

Język C część 2. Podejmowanie decyzji w programie. if else. switch

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

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

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

Kontrola przebiegu programu

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

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

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

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

Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1

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

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Podstawy programowania w języku C

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Ćwiczenie 4 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz

Programowanie strukturalne i obiektowe

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Funkcje i tablice. Elwira Wachowicz. 23 maja 2013

Podstawy Programowania C++

KURS C/C++ WYKŁAD 2. char znak; znak = a ; Program 2 #include<stdio.h> void main() { char znak; while( (znak = getchar() )!= t ) putchar(znak); }

Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:

Wykład 1_2 Algorytmy sortowania tablic Sortowanie bąbelkowe

Proste programy w C++ zadania

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

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

1 Podstawy c++ w pigułce.

Instrukcje sterujące

Pętla for. Wynik działania programu:

Wstęp do programowania 1

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.

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

Programowanie komputerowe. Zajęcia 3

Wstęp do Programowania, laboratorium 02

Wstęp do programowania

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

INSTRUKCJE REPETYCYJNE PĘTLE

Co nie powinno być umieszczane w plikach nagłówkowych:

Języki programowania - podstawy

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

Wstęp do Informatyki

Stuck in the loop. Sterowanie. Marcin Makowski. 29 października Zak lad Chemii Teoretycznej UJ

Politechnika Białostocka

np. dla p=1 mamy T1(N) N/2 średni czas chybionego wyszukiwania z prawdopodobieństwem q:

if (warunek) instrukcja1; if (warunek) instrukcja1; else instrukcja2; a > b - a większe od b if (warunek) instrukcja1; a <= b - a mniejsze lub równe b

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

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

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

Ćwiczenie 5 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz

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

Warto też w tym miejscu powiedzieć, że w C zero jest rozpoznawane jako fałsz, a wszystkie pozostałe wartości jako prawda.

Priorytety operatorów. Łączność operatorów. Operatory - podsumowanie. Sterowanie wykonaniem programu

tablica: dane_liczbowe

Konstrukcje warunkowe Pętle

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

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

Programowanie Proceduralne

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Laboratorium 2: Pętle i instrukcje warunkowe. mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

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

while (test) instrukcja; int i=0; while (i<10) i++; dopóki test prawdziwy wykonuj instrukcję Wykonano: 35% / \ fałsz test prawda instrukcja

WHILE (wyrażenie) instrukcja;

TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;

Język C - podstawowe informacje

WHILE (wyrażenie) instrukcja;

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Programowanie Obiektowe i C++

INSTRUKCJE REPETYCYJNE PĘTLE

( wykł. dr Marek Piasecki )

Materiały do zajęć III

1 Podstawy c++ w pigułce.

Proste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3,

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Wstęp do programowania

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

wykład I uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Wstęp do języka C wykład I dr Jarosław Mederski Spis Ogólne informacje

Języki i paradygmaty programowania 1 studia stacjonarne 2018/19

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

Wykład 3. Instrukcje powtarzające

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?

Struktura pliku projektu Console Application

Programowanie I C / C++ laboratorium 01 Organizacja zajęć

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

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

BHP JĘZYK C - INSTRUKCJE ITERACYJNE

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

Programowanie - wykład 4

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

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

Wstęp do informatyki- wykład 6

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

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

Transkrypt:

Instrukcja wyboru, pętle 2 wykład. Podstawy programowania - Paskal

Tematy Instrukcja wyboru jeden z wielu wariantów: case Pętle while repeat for Instrukcje sterowania pętli break continue goto

Instrukcja wyboru instrukcja switch jeden z wielu wariantów, switch ( ) { case : /* instrukcje, jeśli wyrażenie == wartość1 */ break; case : /* instrukcje, jeśli wyrażenie == wartość2 */ break; /*... */ default: /* instrukcje, jeśli żaden z wcześniejszych warunków nie został spełniony */ break;

Program z instrukcją wyboru (1) #include <stdio.h> #include <conio.h> int main () { int a, b; printf ("Podaj a: "); scanf ("%d", &a); printf ("Podaj b: "); scanf ("%d", &b); switch (b) { case 0: printf ("Nie można dzielić przez 0!\n"); break; default: printf ("a/b=%d\n", a/b); getch(); return 0; Czego brakuje w instrukcji switch?

Program z instrukcją wyboru (2) switch (n) { case 0: puts( N jest zerem."); Brak instrukcji break może być celowy break; case 1: case 4: case 9: puts( N jest kwadratem liczby."); break; case 2: puts( N jest liczbą parzystą."); case 3: case 5: case 7: puts("n jest liczba pierwszą."); break; case 6: case 8: puts("n jest liczba parzystą."); break; default: puts( Tylko liczby jednocyfrowe są dozwolone."); break;

Program z instrukcją wyboru (3) #include <stdio.h> #include <conio.h> int main () { unsigned short dzieci = 3, podatek = 1000; switch (dzieci) { case 0: break; /* brak dzieci - czyli brak ulgi */ case 1: /* ulga 2% */ podatek = podatek - (podatek / 100 * 2); break; case 2: /* ulga 5% */ podatek = podatek - (podatek/100* 5); break; default: /* ulga 10% */ podatek = podatek - (podatek/100*10); printf ("Do zapłaty: %d\n", podatek); getch(); return 0;

Użycie instrukcji warunkowej i wyboru Instrukcja warunkowa dla grupy działań używamy instrukcji grupującej if ( warunek ) { instrukcje; else { instrukcje; Instrukcja wyboru Grupa działań nie wymaga instrukcji grupującej switch ( ) { case warto case warto default: instrukcja; instrukcja; : instrukcja; instrukcja; break: : instrukcja; instrukcja; break:

Operator warunkowy warunek? wyrażenie1 : wyrażenie2 Przy spełnionym warunku zwracana jest wartość wyrażenia1, w przeciwnym razie - wyrażenia 2. Poniewaz to operator, to wynik należy przypisać zmiennej zmienna = warunek? wyrażenie1 : wyrażenie2 Obliczana jest wartość tylko tego z wyrażeń, które zostało wybrane. Nie mylić z instrukcją warunkową if (warunek) instrukcja; else instrukcja;

Pętle powtórzenie działań Dla jednej powtarzanej instrukcji: warunek tak nie while ( warunek ) instrukcja; czytamy: dopóki spełnia się warunek, wykonujemy instrukcję instrukcja dla kilku powtarzanych instrukcji: while ( warunek ) { instrukcja; instrukcja; instrukcja;

Przykład 3 iloczyn = 2; while ( iloczyn <= 100) iloczyn *=2; Ile razy będzie wykonywane każde działanie? Jaką wartość będzie posiadała zmienna iloczyn po wykonaniu wszystkich działań?

Przykład 4 #include <stdio.h> #include <conio.h> #define KON 999 Podawać liczby całkowite aż do zakończenia 999. Policzyć sumę liczb podzilenych na 5 i średnią arytmetyczną wszystkich liczb. int main() { int licznik, liczba, suma, podzielny_na_5; float srednia; suma = licznik = podzielny_na_5 = 0; printf("\n Podawaj liczby. Na końcu wpisz %d \n", KON); scanf("%d", &liczba); while (liczba!= KON ) { licznik++; suma += liczba; if (liczba % 5 == 0) podzielny_na_5 += liczba; scanf("%d", &liczba); srednia = (float) suma / licznik; printf("srednia liczb wynosi %.2f\n", srednia); printf("suma liczb podzielnych na 5 wynosi %d\n", podzielny_na_5); getch();

Przykład 5 Podać ciąg liczb całkowitych, który kończy się na 0. Wydrukować sumę cyfr wszystkich liczb. #include <stdio.h> #include <conio.h> int main() { short const KON=0; int liczba, suma_cyfr; suma_cyfr = 0; puts ("Podaj liczby calkowite."); printf ("Na koncu podaj %d\n", KON); scanf ("%d", &liczba); liczba = liczba < 0? -liczba : liczba; while ( liczba!= KON ) { while ( liczba > 0 ) { suma_cyfr += liczba % 10; liczba /= 10; scanf("%d", &liczba); printf("suma cyfr wynosi %d \n", suma_cyfr); getch(); operator warunkowy

Pętla do... while... instrukcje tak do { instrukcja; instrukcja; while (warunek ) ; warunek nie na początku wykonują się instrukcje, potem sprawdzany jest warunek, czy należy dalej powtarzać

Przykład Podać ciąg liczb całkowitych. Policzyć, ile jest w nim liczb, podzielnych na 3. #include <stdio.h> #include <conio.h> int main() { int liczba, ile = 0; printf("podaj liczby calkowite. Na koncu podaj 0.\n"); do { scanf("%d", &liczba); if ( liczba % 10 == 3 ) ile++; while (liczba!= 0); printf(" %d liczb(y) koncza sie na 3. \n", ile); getch();

Przykład Algorytm Euklidesa obliczanie najwiekszego wspólnego dzielnika do { reszta = A % B; A = B; B = reszta; while (B!= 0);

Porównanie while i do while while na początku warunek, następnie instrukcja instrukcja może być wykonana 0 lub więcej razy do while na początku instrukcje, potem warunek instrukcja może być wykonana 1 lub więcej razy Instrukcje są powtarzane, gry warunek jest spełniony (tak)

Pętla for For ( ; ; ) instrukcja; - jest to instrukcja, wykonywana przed pierwszym - - po

Przykład Wydrukować tabelę kwadratów. #include <stdio.h> #include <conio.h> int main(){ int i; for( i = 1; i < 100; i++) printf("%4d %5d", i, i*i); printf("\n"); getch();

Instrukcje sterowania pętli break kończy pętlę continue kończy iterację, czyli jeden krok petli. go to <etykieta> skierowuje do instrukcji, zaznaczoną etykietą nie rekomenduje się, bo powoduje błędy, które jest trudno wykryć używamy tylko w wyjątkowych wypadkach

Instrukcje sterowania pętli - break Wydrukuj 10 podanych liczb. Jeśli są 0, zatrzymać program. #include <stdio.h> #include <conio.h> int main() { int i, ch; printf("\n Podaj liczby ca³kowite... Koniec - 0.\n Podano: "); for ( i = 1; i<=10; i++) { scanf("%d", &ch); if ( ch == 0 ) break; printf("%d ", ch); printf("\n"); getch();

Instrukcje sterowania pętli - continue Jak się zmieni wykonanie tego programu? #include <stdio.h> int main() { int i, ch; printf("\n Podaj liczby całkowite... Koniec - 0.\n Podano: "); for ( i = 1; i<=10; i++) { scanf("%d", &ch); if ( ch == 0 ) continue; printf("%d ", ch); printf("\n"); program wydrukuje: Podaj liczby calkowite... koniec 0 Podano: 1 2 0 3 0 4 0 5 0 5 0 7 0 8 1 2 3 4 5 5

Podsumowanie Instrukcja wyboru switch Pętle while, do... while, for zakończenie pętli zależy od spełnienia warunku Instrukcje sterowania pętli break continue goto

Na następnym wykładzie: 3. Tablice 2 wykład - pętle