InformatykaI wykład 1
Transkrypt
InformatykaI wykład 1
Katedra Elektrotechniki Teoretycznej i Informatyki sem. II - wykład 1 Dr hab.inż. M. Czyżak REGULAMIN zaliczeń i wystawiania ocen z przedmiotu Informatyka I realizowanego w Katedrze Elektrotechniki Teoretycznej i Informatyki na studiach stacjonarnych I stopnia na kierunku Elektrotechnika w sem. II, 2015/2016. 1. Obecność studentów na wykładach i laboratorium jest obowiązkowa. 2. Na zajęciach obecność jest kontrolowana. W przypadku stwierdzenia 3-krotnej nieusprawiedliwionej nieobecności, prowadzący występuje do Dziekana z wnioskiem o skreślenie studenta z listy. 3. Podczas semestru sprawdzian przeprowadzany jest laboratorium – zgodnie z podanym harmonogramem. Informatyka I, sem.II, 2015/2016 4-krotnie na REGULAMIN cz. II 4. W przypadku usprawiedliwionej nieobecności na sprawdzianie, potwierdzonej zwolnieniem lekarskim, student jest zobowiązany w terminie 2 tygodni od daty zakończenia zwolnienia, odrobić sprawdzian w godzinach konsultacji. W przypadku nieobecności nieusprawiedliwionej student otrzymuje 0 punktów ze sprawdzianu. W przypadku 2-krotnej nieusprawiedliwionej nieobecności na sprawdzianie (lub nieodrobienia w podanym terminie usprawiedliwionej nieobecności na sprawdzianie) student nie uzyskuje klasyfikacji i nie ma prawa przystąpienia do poprawkowych sprawdzianów zaliczających. Informatyka I, sem.II, 2015/2016 REGULAMIN cz. III 5. Zaliczenie laboratorium następuje w oparciu o ilość punktów uzyskanych przez studenta. Podział punktów dla laboratorium na poszczególne elementy jest następujący: a) laboratorium - sprawdziany 60 pkt ( 1 x 60 pkt) - wejściówki 20 pkt ( 5 x 4 pkt) - prace domowe 20 pkt (4 x 5 pkt) Podstawowym warunkiem zaliczenia laboratorium jest uzyskanie łącznie 60% punktów ze sprawdzianów. Wejściówki odbywają się na laboratoriach nr 2,3,4,5,6,7, a sprawdzian 90minutowy na laboratorium nr 8. Prowadzący zajęcia laboratoryjne wystawia ocenę punktową. Informatyka I, sem.II, 2015/2016 REGULAMIN cz. IV 6. Zaliczenie części wykładowej następuje w oparciu o kolokwium organizowane na koniec semestru oraz prace domową (80 pkt kolokwium, 10 sprawdziany, 10 pkt prace domowe) Warunkiem zaliczenia części wykładowej jest uzyskanie 60% punktów kolokwium i sprawdzianów i wykonanie wszystkich prac domowych, 7. Na zakończenie zajęć w semestrze oblicza się końcową ocenę dla każdego studenta, wg wzoru: punktową Z = 0.5 ⋅ L + 0.5 ⋅ W gdzie: L – ocena punktowa uzyskana z części laboratoryjnej, W – ocena punktowa uzyskana z części wykładowej. Informatyka I, sem.II, 2015/2016 REGULAMIN cz. V 8. Ocenę końcową wystawia przedstawionych w tabeli: się wg progów Punkty Ocena poniżej 60 niedostateczny 60 - 66 dostateczny 67 - 73 dostateczny plus 74 - 80 dobry 81 - 87 ponad dobry 88 - 95 bardzo dobry > 95 celujący Informatyka I, sem.II, 2015/2016 punktowych REGULAMIN cz. VI 9. Prowadzący organizują sprawdzian poprawkowy z laboratorium w sesji poprawkowej. W wyniku tego sprawdzianu student może otrzymać połowę maksymalnej ilości punktów dla laboratorium (30 pkt). 10. Dla studentów, którzy nie uzyskali wymaganego minimum punktów z części wykładowej, jest organizowane kolokwium poprawkowe w sesji poprawkowej. W wyniku kolokwium poprawkowego można uzyskać tylko połowę maksymalnej liczby punktów czyli 30 pkt. 11. Obliczanie ocen po sesji poprawkowej odbywa się z uwzględnieniem wyników kolokwiów poprawkowych oraz pozostałych elementów składających się na część laboratoryjną i wykładową. Informatyka I, sem.II, 2015/2016 Słowo informatyka wywodzi się od słowa łacińskiego informare – oznacza ono obrazowo opisać. Słowa informatyka ( fr. Informatique, niem. Informatik) zaczęto stosować w Polsce w latach 70-te XX w., wcześniej w Polsce stosowano określenie cybernetyka techniczna. W języku angielskim stosuje się określenia computer science (teoretyczne aspekty informatyki), computer engineering (aspekty praktyczne- architektura komputerów, programowanie, sieci komputerowe). Informatyka I, sem.II, 2015/2016 Informatyka : -dziedzina nauki (dyscyplina naukowa) – obejmuje problemy przetwarzania informacji (ang. data processing) przy użyciu środków ( urządzeń technicznych), w szczególności teoretyczne i praktyczne problemy konstrukcji systemów komputerowych i zastosowania. - dziedzina działalności ekonomicznej związana z produkcją sprzętu komputerowego albo też systemów informatycznych Informatyka I, sem.II, 2015/2016 Informatyka: - korzysta m.in., z logiki formalnej, algebry, lingwistyki matematycznej, teorii procesów przypadkowych i statystyki. -silnie powiązana z elektroniką, a w szczególności z technologią produkcji układów scalonych VLSI (ang. Very Large Scale of Integration- wielka skala integracji) Informatyka I, sem.II, 2015/2016 Język C, cz. I Literatura: 1. A. R. Neibauer, Języki C/C++, Twój pierwszy program, Help, 1995 (obecnie wyd. IV) 2. C. Sexton, Język C - to proste, RM, W-wa, 2001. 3. G. Perry, Język C w przykładach,Que, W-wa, 2000. 4. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, Programowanie, Helion, Gliwice, 2010 ( wyd.II) 5. H. Schildt, Programowanie C, RM, wyd.I, W-wa, 2002. 6. K.A. Reek, Język C. Wskaźniki. Vademecum profesjonalisty, Helion, Gliwice, 2003. MATERIAŁY DYDAKTYCZNE http://www.ely.pg.gda.pl/~mczyzak Programowanie C skrypt Zadania z tablic do samodzielnego rozwiązania, sem.II, 2016 Algebra Boole'a Systemy liczbowe - nowa wersja Wyklad ANSI C Wyklad ANSI C bez tla Zadania z programowania Tablice znakowe Wskazniki_i_dynamiczna_alokacja_s3 Architektura von Neumanna Magistrala Procesor (CPU) Pamięć Jednostka sterująca ALU Przechowuje program i dane steruje realizacją programu Wejście-wyjście komunikacja z klawiaturą, monitorem i innymi urządzeniami zewnętrznymi wykonuje operacje arytmetyczne i logiczne • Program jest ciągiem elementarnych poleceń ( instrukcji, rozkazów maszynowych) realizującym określone zadanie. • Podczas realizacji programu w pamięci są przechowywane - program - dane (wartości zmiennych) Pamięć, zwana także RAM (Random Access Memory), – Składa się z komórek pamięci o stałym rozmiarze. Każda komórka ma swój adres: 0, 1, … – Każdy dostęp do pamięci jest sięganiem do określonego adresu. Komórka pamięci jest minimalną jednostką, do której można sięgnąć (można pobrać lub zapisać zawartość kompletnej komórki). – Czas dostępu jest taki sam dla wszystkich komórek. RAM N • Należy rozróżniać – adres komórki pamięci i zawartość komórki pamięci • Długość słowa pamięci (W): – Określa, ile bitów zawiera komórka pamięci , typowo jeden bajt (=8 bitów) • Długość adresu(N): – Określa, ile bitów jest stosowanych do reprezentowania adresu, wyznacza także maksymalny rozmiar pamięci - przestrzeń adresową – Jeśli adres ma długość Nbitów, to przestrzeń adresowa jest równa 2N (0,1,...,2N-1) 0000000000011001 0 1 2 ... 2N-1 W 1 bit Języki programowania Język programowania to sztuczny język umożliwiający opis zadań (algorytmów) w formie umożliwiającej ich wykonanie w systemach komputerowych. Główny podział języków programowania to: - języki wewnętrzne, w których poszczególne polecenia (rozkazy)) przedstawiane są w postaci ciągów zerojedynkowych. Rozkazy mogą zawierać kody operacji, adresy pamięci jak również dane. - asemblery (języki symboliczne), w których stosuje się tzw. mnemoniki, czyli skróty literowe do zapisu rozkazów (np. MASM, TASM) Języki programowania- c.d. -języki algorytmiczne, w których program zapisywany jest w formie w pewnym stopniu zbliżonej do języka naturalnego, z użyciem słów angielskich. Przykłady takich języków to (Fortran II, Algol 60, Fortran IV, Algol 68, PL/I, Pascal, Modula –2, Basic, Ada, C, LISP, Prolog) -języki programowania obiektowego (Smalltalk, Eiffel, C++, Modula-3, Object Pascal, Java, C#) -języki programowania sieciowego (C, Java, Java Script, Perl, PHP5, C#) - języki (środowiska) programowania wizualnego ( Borland Builder C++, Delphi, Visual Basic, MS Visual C++, KDE). Języki programowania c.d. Przykład. Zapis instrukcji na różnych poziomach. Instrukcja w języku maszynowym Zapis binarny: 1000 0011 0000 0100 1110 0000 0000 0000 1010 Zapis heksadecymalny(szesnastkowy): 83 04 DE 00 0A Instrukcja w języku asemblera add rezultat, 10 Instrukcja w języku C rezultat = rezultat + 10; Języki programowania c.d. Przykład. Prosty program w asemblerze. ; System operacyjny MS DOS .model small ; model pamięci: 1 segment kodu i 1 segment danych .386 ; dostępny zbiór rozkazów procesora 386 .data ; początek segmentu danych .tekst byte "Hello world!", 0ah, 0dh, "$" .stack 100h ; segment stosu o zadeklarowanym rozmiarze .code ; początek segmentu z kodem programu .startup ; makroinstrukcja generująca sekwencję inicjującą ; rejestry segmentowe DS i SS mov dx, offset tekst mov ah, 09h ; wprowadzenie do rejestrów DX i AH parametrów ; wywołania procedury systemowej Języki programowania c.d. int 21h ; wywołanie procedury systemowej .exit ; makroinstrukcja generująca sekwencję końcową ; programu .end | ; koniec programu źródłowego Języki programowania c.d. Pzykład programu w języku Java //Wczytywanie danych z klawiatury z zastosowaniem klas // BufferedReader i InputStreamReader import java.io.*; public class First3{ public static void main(String args[]) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); double x; System.out.print("x="); x=Double.parseDouble(br.readLine()); System.out.println("x="+x); } Kompilatory Kompilator - program tłumaczący programy napisane w języku wyższego rzędu (algorytmiczno-strukturalnym, obiektowym, sieciowym) na język maszyny (wewnętrzny) lub pewien język pośredni. Kompilator jest programem, który czyta kod zapisany w jednym języku – języku źródłowym i tłumaczy go na równoważny program w danym języku wynikowym. Ważnym elementem translacji jest zgłoszenie użytkownikowi komunikatów o ewentualnych błędach w programie źródłowym. Kompilacja Program źrodłowy Program wynikowy Kompilator Komunikaty o błędach kompikacji Kompilacja z konsolidacją Program źrodłowy Kompilator Komunikaty o błędach kompilacji Konsolidator Komunikaty o błędach konsolidacji Program wykonywalny Język C - historia 1972 – definicja języka C– Dennis M. Ritchie Pierwowzór – beztypowy język B ( Ken Thompson,1970) będący adaptacją języka BCPL( Basic Combined Programming Language, Martin Richards, 1967 ) dla PDP-7. 1974 – opis języka C – D.M. Ritchie, B.W. Kernighan, The C programming language, Prentice-Hall. Standard K&R. 1988 – unowocześniony standard języka C- język ANSI C. Opis standardu : American National Standard for Information Systems - Programming Language C, X3.159-1989). Później standard ISO 9899:1990. 1999 – nowy standard C99 Język C - wstęp Zastosowanie: początkowo systemy operacyjne, oprogramowanie narzędziowe ( kompilatory, edytory) i oprogramowanie sieciowe, później oprogramowanie użytkowe. Kompilatory dostępne w praktycznie każdym systemie operacyjnym. Język C jest podstawowym językiem tworzenia oprogramowania dla procesorów sygnałowych i sterujących różnego typu urządzeniami (przykład - kompilator Keil C dla 8051). Stanowi też podstawę innych nowszych języków takich jak C++, Java, C#, PHP. Język C - wstęp Cechy języka C (cz. I): Typy: - typy podstawowe: typy znakowe, całkowite i rzeczywiste - typy pochodne : wskaźnikowe, tablice, struktury, unie i inne. Wyrażenia: budowane z operatorów i ich argumentów Wskaźniki: operacje na adresach niezależnie od maszyny Język C - wstęp Cechy języka C (cz. II) Konstrukcje sterujące: - grupowanie instrukcji (instrukcja złożona) - podejmowanie decyzji ( if, if-else, switch) - realizacja powtarzania ze sprawdzaniem warunku na początku ( for, while), na końcu ( do-while) - przerwanie (break) i kontynuacja pętli (continue) Język C - wstęp Cechy języka C (cz. III): Ogólna budowa programu - program składa z pewnych jednostek programowych (fragmentów kodu) zwanych funkcjami z dobrze określonymi mechanizmami komunikacji z otoczeniem - program w C posiada tzw. płaską strukturę tzn. funkcje są niezależne i nie można definiować jednych funkcji w drugich. Język C - wstęp Cechy języka C (cz. IV): Funkcje: - mogą zwracać wartości typów podstawowych, struktury, unie i wskaźniki - zmienne w funkcjach mogą być zmiennymi lokalnymi (automatyczne i statyczne) lub zewnętrznymi - mogą być wywoływane rekurencyjnie - mogą być rozmieszczone w jednym lub większej liczbie plików. Język C - wstęp Przykład 1. Prosty program w języku C - wersja 1 #include <stdio.h> int main() { printf("Pierwszy program w jezyku C"); return 0; } Język C - wstęp Przykład 2. Prosty program w języku C - wersja 2 (zatrzymywanie wykonania programu) #include <stdio.h> #include <conio.h> #include <stdlib.h> int main() { printf("Pierwszy program w jezyku C"); getch();/* lub system("pause") lub getchar()*/ return 0; } Język C - wstęp Przykład 3. Prosty program w języku C - wersja 3 /* program ten jest uzupełniony o wybrane elementy*/ #include <stdio.h> #include <conio.h> #include <stdlib.h> int main() { system("cls");/* lub clrscr(), w DevC++ konieczny plik naglowkowy conio2.h*/ printf("Pierwszy program w jezyku C"); printf("\n napisany przez J. Kowalskiego"); getch(); return 0; } Język C - wstęp Przykład 4. Program z użyciem zmiennych typu int. #include <stdio.h> #include <conio.h> int main() { int a;/* lub int a,b,c;*/ int b; int c; a=1; b=2; c=a+b; printf("\n Suma a+b =%d",c); getch(); return 0; Język C - wstęp Zmienna w języku C Zmienna w języku C z punktu widzenia programisty oznacza pewien obszar pamięci komputera, który może być używany przez programistę w określony sposób. Np. dla zmiennej a, rozmiar tego obszaru określa typ int ( skrót od integer-całkowity). Typ ten oznacza, że w zmiennych tego typu można przechowywać wartości całkowite z zakresu [− 231 , 231 − 1] (w komputerach 32-bitowych typ int zajmuje 4 bajty). Liczby całkowite są przechowywane w kodzie U2. Język C Operatory w języku C Operatory to znaki lub kombinacje znaków symbolizujące pewne operacje w programie np. =, +, -. Operatory służą wraz i innymi elementami do tworzenia tzw. wyrażeń. Wyrażenie jest pewną kombinacją operatorów i innych elementów takich jak zmienne i stałe. Przykładami wyrażeń mogą być: -a – jest to wyrażenie składające się z operatora minus (-) i argumentu ( zmiennej a ) -b+c – wyrażenie to składa się z operatora plus(+) i dwóch argumentów (zmienne a i b) Język C - wstęp Operator minus(-) w pierwszym wyrażeniu jest operatorem jednoargumentowym, a operator plus(+) w drugim wyrażeniu jest operatorem dwuargumentowym. Ogólnie w języku C operator jednoargumentowy może być użyty w sposób następujący: op argument lub argument op, a operator dwuargumentowy argument1 op argument2 Język C Zakresy i rozmiary typów całkowitych Typ Rozmiar(bity) Zakres liczbowy 8 8 16 16 32 32 32 32 64 64 0 do 255 -128 do 127 -32768 do 32767 0 do 65536 -2147483648 do 2147483647 0 do 4294967295 zakres int zakres unsigned int -2^63 do 2^63 -1 0 do 2^64 -1 unsigned char char short int unsigned short int int unsigned int long int unsigned long int long long int unsigned long long int ( typ wyliczeniowy enum zostanie omówiony w dalszej części) unsigned oznacza typ bez znaku (kod NKB), pozostałe są przechowywane w kodzie U2. Język C Operatory arytmetyki na liczbach całkowitych (ang. integer arithmetic) - operatory jednoargumentowe ‘+’ i ‘ –’ - operator dodawania ‘ + ’ - operator odejmowania ‘-’ - operator mnożenia ‘*’ - operator dzielenia całkowitego ‘/’ - operator obliczania reszty z dzielenia całkowitego % Operatory te są stosowane, gdy argument lub argumenty operatora są typu całkowitego. Język C Przykład . Program ilustrujący użycie operatorów arytmetyki całkowitej dla liczb ze znakiem. #include <stdio.h> #include <conio.h> int main() { int a,b,c; printf("Podaj a:"); scanf("%d", &a); printf("\nPodaj b:");scanf("%d", &b); c=a+b; printf("\n Suma %d + %d =%d", a,b,c); c=a-b; printf("\n Roznica %d - %d =%d", a,b,c); c=a*b; printf("\n Iloczyn %d * %d =%d", a,b,c); c=a/b; printf("\n Iloraz calkowity %d przez %d =%d", a,b,c); c=a%b; printf("\n Reszta z dzielenia całkowitego %d przez \ %d =%d", a,b,c); getch(); return 0; } Język C Uwaga: ani argumenty ani też rezultaty poszczególnych działań nie mogą przekraczać zakresów liczbowych dla poszczególnych typów podanych w tabeli. Przykładowo, dla niektórych kompilatorów mnożenie liczb 65000*40000 da liczbę ujemną. Reprezentacja tego iloczynu jest 32-bitowa, stąd najwyższy jej bit wchodzi na pozycję znaku, co powoduje, że otrzymany ciąg bitów jest traktowany jako liczba ujemna w kodzie U2. l1=-1694967296 (dla typu int) l=2600000000 (dla typu unsigned int) Press any key to continue . . Język C Przykład. Program ilustrujący użycie operatorów arytmetyki całkowitej dla liczb bez znaku. #include <stdio.h> #include <conio.h> int main() { unsigned int a,b,c; printf("Podaj a:"); scanf("%u", &a); printf("\nPodaj b:");scanf("%u", &b); c=a+b; printf("\n Suma %u + %u =%u", a,b,c); c=a-b; printf("\n Roznica %u - %u =%u", a,b,c); c=a*b; printf("\n Iloczyn %u * %u =%u", a,b,c); c=a/b; printf("\n Iloraz calkowity %u przez %u =%u", a,b,c); c=a%b; printf("\n Reszta z dzielenia całkowitego %u przez \ %u =%u", a,b,c); getch(); return 0; } Język C Przykład. Program ilustrujący użycie operatorów arytmetyki całkowitej do obliczania wyrażenia. #include <stdio.h> k3 + #include <conio.h> y= #include <math.h> k+ int main() { int k,l, licznik, mianownik, wynik; printf("Podaj k:"); scanf("%d", &k); printf("\n Podaj l:"); scanf("%d", &l); licznik=k*k*k+ k%5 +abs(l); mianownik=k+ k/(k+l); wynik=licznik/mianownik; printf("\n Wartosc wyrazenia=%d", wynik); getch(); return 0; } k5+ l k k+ l Język C Typy rzeczywiste Zakresy i rozmiary typów rzeczywistych Typ Rozmiar(bity) Zakres liczbowy Liczba cyfr znaczących 32 3.4 ⋅ 10 − 38 do 3.4 ⋅ 1038 6-7 64 0.7 ⋅ 10 − 308 do 3.4 ⋅ 10308 15-16 long double 80 3.4 ⋅ 10 − 4932 do 0.1 ⋅ 10 4932 19-20 float double Język C Przykład. Program ilustrujący wczytywanie i drukowanie zmiennych rzeczywistych typu float, double i long double. #include <stdio.h> #include <conio.h> int main() {float x; double y; long double z; printf("Podaj x:"); scanf("%f", &x); // %f jest deskryptorem formatu //stosowanym przy wczytywaniu // i drukowaniu zmiennych typu float printf("\n Podaj y:"); scanf(" %lf", &y);// %lf deskryptor formatu dla //zmiennych typu double printf("\nPodaj z:"); scanf(" %Lf", &z);// %Lf deskryptor formatu dla //zmiennych typu long double printf("\n x= %f", x); printf("\n y= %f", y); printf("\n z= %Lf", z); getch(); return 0; } Język C Operatory arytmetyki rzeczywistej Operatory arytmetyki rzeczywistej to: - jednoargumentowy operator '+' - jednoargumentowy operator '-' - dwuargumentowy operator '+' - dwuargumentowy operator '-' - dwuargumentowy operator mnożenia '* ' - dwuargumentowy operator dzielenia ' / ' Operatory te występują w trzech wersjach: dla typu float,dla typu double i dla typu long double. . Język C Przykład. Program ilustrujący użycie operatorów arytmetyki rzeczywistej. #include <stdio.h> #include <conio.h> int main() { double a,b,c; printf("Podaj a:"); scanf("%lf", &a); printf("Podaj b:"); scanf("%lf", &b); c=a+b; printf("\n Suma %f + %f =%f", a,b,c); c=a-b; printf("\n Roznica %f - %f =%10.2f", a,b,c); c=a*b; printf("\n Iloczyn %f * %f =%.4f", a,b,c); c=a/b; printf("\n Iloraz %e przez %e =%f", a,b,c); getch(); return 0;} Język C Wartości logiczne w języku C -Wartość logiczna prawda jest reprezentowana przez każdą liczbę różną od zera, np. 1, 2, -5. -Wartość logiczna fałsz jest reprezentowana przez 0. Język C Operatory relacji w języku C Operatory te to: ‘<‘ ‘ < =‘ ‘ >‘ ‘ >= ‘ ‘= =‘ ‘!=‘ - mniejsze mniejsze lub równe większe większe lub równe równe różne Język C Wyrażenie relacyjne Wyrażenie relacyjne to wyrażenie składające się z operandów połączonych pewnym operatorem relacji op1 operator_relacyjny op2, np. a>b, a!=b, a==b. Wartością wyrażenia relacyjnego jest 1, jeżeli wyrażenie jest prawdziwe albo też 0, gdy wyrażenie jest fałszywe. Język C Przykład. Prosty program ilustrujący zastosowanie operatorów relacyjnych #include <stdio.h> #include <conio.h> int main(int argc, char * argv[ ]) { int a,b,c; printf(" Podaj a=:"); scanf ("%d", &a); printf(" Podaj b=:"); scanf ("%d", &b); c=a<b; printf ("\n Wartosc wyrazenia %d < %d=%d",a,b,c); c=a<=b; printf ("\n Wartosc wyrazenia %d <= %d=%d",a,b,c); c=a==b; printf ("\n Wartosc wyrazenia %d ==%d=%d",a,b,c); c=a>b; printf ("\n Wartosc wyrazenia %d > %d=%d",a,b,c); c=a>=b; printf ("\n Wartosc wyrazenia %d > =%d=%d",a,b,c); c=a!=b; printf ("\n Wartosc wyrazenia %d != %d=%d",a,b,c); getch(); return 0; } Przykład. Program uzupełniony o możliwość wielokrotnego wykonania ( nieskończona pętla while) #include <stdio.h> #include <conio.h> int main(int argc, char * argv[ ]) { int a,b,c; while (1) { // początek pętli while printf(" Podaj a=:"); scanf ("%d", &a); printf(" Podaj b=:"); scanf ("%d", &b); c=a<b; printf ("\n Wartosc wyrazenia %d < %d=%d",a,b,c); c=a<=b; printf ("\n Wartosc wyrazenia %d <= %d=%d",a,b,c); c=a==b; printf ("\n Wartosc wyrazenia %d ==%d=%d",a,b,c); c=a>b; printf ("\n Wartosc wyrazenia %d > %d=%d",a,b,c); c=a>=b; printf ("\n Wartosc wyrazenia %d > =%d=%d",a,b,c); c=a!=b; printf ("\n Wartosc wyrazenia %d != %d=%d",a,b,c); getch(); } // koniec pętli do while Język C Wynik działania programu. Przykład. Program uzupełniony o możliwość wielokrotnego wykonania ( pętla while z określoną liczbą wykonań ) #include <stdio.h> #include <conio.h.> int main(int argc, char * argv[ ]) { int a,b,c, n, licznik=0; printf(" Podaj liczbe wykonan petli"); scanf("%d",&n); while (licznik <n) { printf(" Podaj a=:"); scanf ("%d", &a); printf(" Podaj b=:"); scanf ("%d", &b); c=a<b; printf ("\n Wartosc wyrazenia %d < %d=%d",a,b,c); c=a<=b; printf ("\n Wartosc wyrazenia %d <= %d=%d",a,b,c); c=a==b; printf ("\n Wartosc wyrazenia %d ==%d=%d",a,b,c); c=a>b; printf ("\n Wartosc wyrazenia %d > %d=%d",a,b,c); c=a>=b; printf ("\n Wartosc wyrazenia %d > =%d=%d",a,b,c); c=a!=b; printf ("\n Wartosc wyrazenia %d != %d=%d",a,b,c); licznik=licznik+1; getch(); } return 0; }