INSTRUKCJE REPETYCYJNE PĘTLE

Podobne dokumenty
INSTRUKCJE REPETYCYJNE PĘTLE

INSTRUKCJA ITERACYJNA REPEAT. repeat Instrukcja_1; Instrukcja_2; {... } Instrukcja_N; until wyr ; INSTRUKCJA ITERACYJNA WHILE

#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 ); }

tablica: dane_liczbowe

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); }

OPERACJE WEJŚCIA / WYJŚCIA. wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout)

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

#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 ); }

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

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

Instrukcje sterujące mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2012

METODY I JĘZYKI PROGRAMOWANIA. Programowanie w języku C notatki z wykładów

( wykł. dr Marek Piasecki )

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

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

Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego

Programowanie strukturalne i obiektowe

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

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

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

3 Przygotował: mgr inż. Maciej Lasota

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

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

Wstęp do Informatyki

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

KURS C/C++ WYKŁAD 1. Pierwszy program

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

Wstęp do programowania

Konstrukcje warunkowe Pętle

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

Programowanie w języku C++

1 Wielokrotne powtarzanie tych samych operacji

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

Programowanie - instrukcje sterujące

Część 4 życie programu

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

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 zajęcia nr 5

Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

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

Budowa i generowanie planszy

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.

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

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

Proste programy w C++ zadania

1 Podstawy c++ w pigułce.

Struktura pliku projektu Console Application

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

Podstawy programowania C. dr. Krystyna Łapin

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

Programowanie - wykład 4

Wykład :37 PP2_W9

struct Student { char nazwisko[30]; int wiek; float ocena; }; #define MAX_ROZMIAR 3 Student lista_studentow[max_rozmiar];

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

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

Podstawy Programowania.

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015

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

DYNAMICZNE PRZYDZIELANIE PAMIECI

Instrukcje sterujące

Języki programowania - podstawy

do instrukcja while(wyrażenie);

wykład V uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C++ klasy i obiekty wykład V dr Jarosław Mederski Spis Język C++ - klasy

1 Podstawy c++ w pigułce.

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

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; }

XVII. Funkcje w C Ogólna budowa funkcji Definicja funkcji Co waŝnego powinniśmy wiedzieć o funkcjach

Klawiatura komputerowa.

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

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

ALGORYTMY I STRUKTURY DANYCH

Pytania z języka C/C++ main dyrektywy preprocesora #include 15. #define 16. #define słowa zastrzeżone \n, \t, \f 26.

Języki i metody programowania Java Lab1 Zofia Kruczkiewicz

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

Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++

zastępować zarezerwowane słowa lub symbole innymi,

lekcja 8a Gry komputerowe MasterMind

PROGRAMOWANIE W C++ ZADANIA

Wprowadzenie do programowania w języku C

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

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

1. Wprowadzanie danych z klawiatury funkcja scanf

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

wykład IV uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C, a C++. wykład IV dr Jarosław Mederski Spis Język C++ - wstęp

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

Podstawy programowania w C materiały dla ucznia:

Rozwiązanie. #include <cstdlib> #include <iostream> using namespace std;

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; }

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE

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

Podstawy programowania w języku C i C++

Zajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

I - Microsoft Visual Studio C++

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

Opis klawiatury komputerowej

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

Część 4 pętla FOR. Instrukcja pętli iteracyjnej FOR. Postać pętli for jest następująca: a)dla jednej instrukcji wykonywanej przez pętlę.

Każdy z nich posiada swoje parametry. W przypadku silnika może to być moc lub pojemność, w przypadku skrzyni biegów można mówić o skrzyni

Transkrypt:

INSTRUKCJE REPETYCYJNE PĘTLE Pętla while( ) while ( wyrażenie ) instrukcja; while ( wyrażenie ) instrukcja_1; instrukcja_2;... instrukcja_n; Pętla wykonywana jest tak długo jak wartość wyrażenie jest różna od zera Przykłady: int i ; // pętla wyświetlająca liczby 1,2,3... i = 1; while( i <=10 ) i = i + 1; int i = 1; // 1, 2, 3,... w innym zapisie while( i<11 ) printf ( %2d\n, i++ ); int i ; // pętla wyświetlająca liczby 10,9,8 i = 10; while( i!= 0 ) i = i 1; int i = 10; //10, 9, 8,... w innym zapisie while( i ) printf ( %2d\n, i ); M.Piasecki: PODSTAWY PROGRAMOWANIA 1 (W3) Instrukcje repetycyjne - pętle

Pętla while( ) instrukcja; while ( wyrażenie ); instrukcja_1; instrukcja_2;... instrukcja_n; while ( wyrażenie ); Pętla wykonywana jest tak długo jak wartość wyrażenie jest różna od zera Przykłady: int i ; // pętla wyświetlająca liczby 1,2,3... i = 1; i = i + 1; while( i<=10); int i = 1; // 1, 2, 3,... w innym zapisie while( ++i <11 ); int i ; // pętla wyświetlająca liczby 10,9,8 i = 10; i = i 1; while( i!= 0 ); int i = 10; // 10, 9, 8,... w innym zapisie while( i ); M.Piasecki: PODSTAWY PROGRAMOWANIA 2 (W3) Instrukcje repetycyjne - pętle

przykład 1: Odczytywanie klawiszy momentu naciśnięcia 'k' za pomocą pętli while int main( void ) char znak = a ; while( znak!= k ) printf( \n naciśnij jakiś klawisz: ); znak = getche( ); // biblioteka <conio.h> zawierająca funkcję getch() przykład 2: Odczytywanie klawiszy momentu naciśnięcia ESC za pomocą pętli while int main( void ) char znak; printf( \n naciśnij jakiś klawisz: ); znak = getche( ); while(znak!= 27 ); // 27 = kod klawisza Escape przykład 3: Wyświetlenie kreski składającej się z 10 znaków minus int licznik=0; while( licznik<10 ) printf( - ); licznik++; przykład 4: #include <stdlib.h> #include <time.h> int liczba_losowa; srand( time(0) ); Losowanie liczb z przedziału 1 6, momentu trafienia na szóstkę // łączenie biblioteki zawierającej funkcje rand i srand // łączenie biblioteki zawierającej funkcję time liczba_losowa = rand()%6 + 1; printf( \n Wylosowano: %d, liczba_losowa ); while( liczba_losowa!= 6 ); printf( \n\n Koniec programu. Nacisnij ENTER ); getchar(); // symulacja rzutu kostką M.Piasecki: PODSTAWY PROGRAMOWANIA 3 (W3) Instrukcje repetycyjne - pętle

Pętla for( ; ; ) for( wyrażenie_inicjujace ; wyrażenie_testujace ; wyrażenie_modyfikujace ) wykonywana_instrukcja ; jest równoważna konstrukcji: wyrazenie_inicjujace ; while( wyrazenie_testujace ) wykonywana_instrukcja ; wyrazenie_modyfikujace ; int i ; i = 10; while( i!= 0 ) i = i 1; lub int i ; for( i = 10; i!= 0 ; i = i 1 ) printf( %2d\n, i ); int i ; for( i = 10; i ; printf( %2d\n, i ) ) ; przykład 5: Wyświetlenie paska w postaci 80 znaków # for( int i=0 ; i<80 ; i++ ) printf( # ); przykład 6: for( int znak=32; znak<256; znak++ ) printf( %4d = %c, znak, znak ); przykład 7: uble suma=0, liczba; while( scanf( %lf, &liczba ) ) printf( \t%.2f\n, suma+=liczba ); Program wypisujący tabelę wybranych kodów ASCII Prymitywny kalkulator sumujący liczby wpisywane na klawiaturze M.Piasecki: PODSTAWY PROGRAMOWANIA 4 (W3) Instrukcje repetycyjne - pętle

przykład 8: Policzenie sumy N liczb wpisywanych z konsoli #include <iostream.h> int i, N; float liczba, suma; cout << Podaj ile liczb chcesz zsumowac N = ; cin >> N; suma=0; for( i=1; i<=n; i++ ) cout << Podaj << i << liczbę: ; cin >> liczba ; suma = suma+liczba; cout << endl << endl<< Suma << N << podanych liczb wynosi: << suma ; cin.ignore( cin.rdbuf()->in_avail() ); cin.get( ); przykład 9: Wyrysowanie na ekranie prostokątnej ramki o zadanych współrzędnych // wersja kompilatora Borland C++ int x1, y1, x2, y2, x, y; cprintf( Podaj wspolrzedne 1 naroznika \n\r X1 = ); cscanf( %d, &x1 ); cprintf( \n Y1 = ); cscanf( %d, &y1 ); cprintf( \npodaj wspolrzedne 2 naroznika \n\r X2 = ); cscanf( %d, &x2 ); cprintf( \n Y2 = ); cscanf( %d, &y2 ); clrscr( ); for(gotoxy( x1,y1 ), x=x1; x<=x2; x++ ) cprintf( - ); for(gotoxy( x1,y2 ), x=x1; x<=x2; x++ ) cprintf( - ); for( y=y1+1; y<y2; y++) gotoxy( x1, y ); cprintf( ); gotoxy( x2, y ); cprintf( ); while( kbhit() ) getch(); getch(); // rysowanie górnej krawędzi // rysowanie lnej krawędzi // rysowanie lewej krawędzi // rysowanie prawej krawędzi M.Piasecki: PODSTAWY PROGRAMOWANIA 5 (W3) Instrukcje repetycyjne - pętle

przykład 10: Wyświetlenie wszystkich liczb 1 1000 podzielnych przez 13 for( int liczba=13; liczba<=1000; liczba+=13 ) printf( %3d \n, liczba); przykład 11: Wyświetlenie wszystkich par liczb x,y [1,100] spełniających równanie: x 2 + y 2 < 500 for( int x=1; x<100; x++ ) for( int y=1; y<100; y++ ) if( x x + y y < 500 ) printf( \n x=%d y=%d, x, y); przykład 12: #define ESC 27 Program klasyfikujący naciskane klawisze int main(void) int klawisz=0; clrscr(); while( klawisz!= ESC ) printf( \n\nnaciśnij jakiś klawisz (ESC->Koniec): ); klawisz = getch(); if( a <=klawisz && klawisz<= z ) printf( => To jest mala litera. ); else if( A <=klawisz && klawisz<= Z ) printf( => To jest duza litera. ); else if( 0 <=klawisz && klawisz<= 9 ) printf( => To jest cyfra. ); else if( klawisz == 13 ) printf( => To jest klawisz ENTER. ); else if( klawisz == ) printf( => To jest klawisz spacji ); else printf( => To jest inny klawisz. ); //definicja kodu klawisza «Escape» M.Piasecki: PODSTAWY PROGRAMOWANIA 6 (W3) Instrukcje repetycyjne - pętle

// Przykład 13 : program rozpoznający klawisze funkcyjne #include "def_klawiszy.h" // łączenie pliku zawierającego definicje klawiszy int main( void ) int klawisz; clrscr(); printf( "\n\n Nacisnij jakis klawisz: " ); klawisz = getch( ); switch( klawisz ) case ENTER : printf( "To jest ENTER" ); break; case ESC : printf( "To jest ESCAPE" ); break; case PREFIX : // jeżeli pierwszy znak jest prefixem (224 lub 0?) klawisz = getch( ); switch( klawisz ) case DELETE : printf( "Delete" ); break; case UP_ARROW : printf( "Up arrow" ); break; case DOWN_ARROW : printf( "Down arrow" ); break; break; case BACKSPACE : printf( "To jest BACKSPACE" ); break; default : printf( "Inny - nieznany pojedynczy klawisz" ); break; while( klawisz!= ESC ); // Plik dyskowy «def_klawiszy.h» zawierający definicje kodów wybranych klawiszy #ifndef DEF_KLAWISZY #define DEF_KLAWISZY #define PREFIX 224 // klawisze "zwykle" - kowane za pomocą jednego znaku #define ESC 27 #define ENTER 13 #define BACKSPACE 8 //klawisze "funkcyjne" - kowane za pomocą dwóch znaków #define DELETE 83 // 224, 83 #define UP_ARROW 72 // 224, 72 #define DOWN_ARROW 80 // 224, 80 #define LEFT_ARROW 75 // 224, 75 #define RIGHT_ARROW 77 // 224, 77 #define HOME 71 // 224, 71 #define END 79 // 224, 79 #endif M.Piasecki: PODSTAWY PROGRAMOWANIA 7 (W3) Instrukcje repetycyjne - pętle