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