7/21/2019 algoritmsl
1/19
Elemente de practica
programarii
Algoritmi. Scheme logice
7/21/2019 algoritmsl
2/19
Generaliti
Un calculator este o maina ce permite rezolvarea unor probleme
prin executarea unui lan de instruciuni.O succesiune de instruciuni se numete program.
Instruciunile ce pot fi recunoscute i executate de microprocesor
sunt simple i limitate ca numr, pentru a nu complica structura
hardware dar consistente pentru a fi utilizat eficient puterea decalcul.
Limbajele de programaresunt limbaje artificiale, folosite n tiina
calculatoarelor, pentru a scrie secvene de instruciuni !pro"rame#,
care pot fi executate de calculator. $imilar limbajelor naturale,
limbajele de pro"ramare au vocabular, "ramatic i sintax.
%imbajele de pro"ramare trebuie s aib structuri lo"ice simple i
re"uli "ramaticale foarte precise.
7/21/2019 algoritmsl
3/19
$e numete limbaj main!cod main, cod calculator#
reuniunea instruciunilor primitive ce pot fi executate de
microprocesor. &cest limbaj este incomod de utilizat depro"ramator, intruciunile fiind iruri de numere binare.
'umim limbaj de nivel superiorsetul de instruciuni
apropiat de limbajul uman, propriu problemei de rezolvat.
Limbajul de asamblareeste un limbaj intermediar, foarteapropiat de codul main, posibil utilizrii de ctre
pro"ramator i uor translatabil spre codul main.
(entru a putea fi executat, un pro"ram scris ntr)un limbajsuperior trebuie translatat n instruciuni corespunztoare ncod main.
7/21/2019 algoritmsl
4/19
*iier obiect
(ro"ram
obiect
%imbaj cod
main
*iier surs
(ro"ram
surs
%imbaj
superior
interpretare
compilare
+ezultate
obinute de
execuia
pro"ramului
lansare in execuie
7/21/2019 algoritmsl
5/19
LANGUAGE ORIGIN OF NAME YEAR USES/COMMENTS
ADA Augusta ADA Byron (Lady Lov!a"# $%&% Dr'vd ro) *as"a!+ usd ,r')ar'!y -y t. )'!'tary
ALGOL ALGOr't.)'" L anguag $%01 F'rst stru"turd ,ro"dura! ,rogra))'ng !anguag+ usd )a'n!y or so!v'ng )at. ,ro-!)s
A*L A * rogra))'ng L anguag $%0$ Intr,rtd !anguag us'ng a !arg st o s,"'a! sy)-o!s and trs synta2 Usd ,r')ar'!y
-y )at.)at'"'ans
BASIC Bg'nnrs A !!3*ur,os S y)-o!'" I nstru"t'on Cod $%04 5ry ,o,u!ar .'g.3!v! ,rogra))'ng !anguag+ r6unt!y usd -y -g'nn'ng
,rogra))rs
C *rd"ssor 7as B!! La-oratory8s $%&9 B
*rogra))'ng Languag$%&9 Co),'!d+ stru"turd+ ,rogra))'ng !anguag "o))on!y usd 'n )any 7or:,!a"s
-"aus 'ts ,rogra)s ar asy to transr -t7n d'rnt ty,s o "o),utrs
C;; Advan"d vrs'on o C Dv!o,d at ATT B!! La-s $%d -y !a": o standard un"t'ons and ,ro"durs
*as"a! B!a's *ASCAL+ )at.)at'"'an and 'nvntor o 'rst"o),ut'ng dv'"
$%&$ Co),'!d+ stru"turd !anguag+ -asd on ALGOL Adds data ty,s and stru"turs 7.'!
s'),!'y'ng synta2 L': C !anguag+ 't 's a standard dv!o,)nt !anguag or
)'"ro"o),utrs
*ILOT *rogra))d I n6u'ry+ Languag O r T a".'ng $%0% *rogra))'ng !anguag usd ,r')ar'!y to "rat a,,!'"at'ons or "o),utr3a'dd
'nstru"t'on Conta'ns vry !'tt! synta2
*L/$ *rogra))'ng L anguag O n $%0 Ds'gnd to "o)-'n t. :y aturs o FORTRAN+ COBOL+ and ALGOL+ a "o),!2
,rogra))'ng !anguag Co),'!d+ stru"turd !anguag "a,a-! o rror .and!'ng and
)u!t'tas:'ng+ usd 'n so) a"ad)'" and rsar". nv'ron)nts
5B 5'sua! B as'" $%%1 So)t')s "a!!d t. Ra,'d A,,!'"at'ons Dv!o,)nt syst)+ 's usd to -u'!d
a,,!'"at'ons 6u'":!y
7/21/2019 algoritmsl
6/19
Etapele realirii unui program
a# efinirea problemei
b# $elecia al"oritmilor i a structurilor de date
c# $pecificarea structurii i a lo"icii pro"ramului !descompunerea
n uniti de pro"ram)module) i stabilirea funciuni, lo"icii i
a interfeelor pentru fiecare modul#
d# -odificarea !transcrierea ntr)un limbaj de pro"ramare#
e# epanarea i testarea !pornind de la verificarea modulelor
independent#f# +edefinirea pailor anteriori !corectarea erorilor depistate#
"# ocumentarea
h# Intreinerea pro"ramului
7/21/2019 algoritmsl
7/19
Algoritmi. Scheme logice
Algoritmul este o mulime de re"uli de calcul, folosite ntr)o
succesiune bine precizat, cu ajutorul crora putem obine
soluia, cu o precizie mulumitoare, a unei probleme, prin
execuia unui numr finit de operaii.
(roprieti claritate
eficacitate
universalitate
-orespunztor etapelor de calcul al"oritmuleste format din mai muli pai, ce se execut
n ordinea lor matural, at/ta timp c/t nu
intervine o condiie de salt, ce s impun
executarea unui alt pas dec/t cel urmtor
+eprezentarea "rafic, intuitiv, a unui al"oritm poate
fi fcut cu ajutorul schemelor logice.
7/21/2019 algoritmsl
8/19
Simbolurifolosite n ntocmirea de scheme lo"ice
!locul de calcul
-alculul ce trebuie executat
se scrie in interiorul
dreptun"hiului
$0&+0 $0O( !locul de "nceput i!locul de s#$rit al
schemei logice
7/21/2019 algoritmsl
9/19
$-+I1
lista mrimi
-I01201
lista mrimi
!locul ieire
!locul intrare
-
& 'U
!locul de deciie
$e folosete pentru indicareaunei decizii ntr)un al"oritm.
Indeplinirea sau nu a condiiei
- duce la continuarea pe
ramura &, respectiv 'U
7/21/2019 algoritmsl
10/19
0oate blocurile funcionale se lea"
prin arce orientate dup sensul de
parcur"ere a al"oritmului
Semnul de atribuire %&
'ariabile
(onstante
)denti#icatori
*peratori matematici3
4 ) 5 6
*peratori logici3
7 8 89 79 78
7/21/2019 algoritmsl
11/19
+eolvarea ecuaiei de gradul ) axb&- x&b/a, c$nd a nu e ero
$0&+0
$0O(
-I01201a,b
a9: danu$-+I1
1c. imp.
$-+I1
;x9;,x
x39)b6a
7/21/2019 algoritmsl
12/19
Gsirea valorii minime 0maxime1 a unui ir de numere
$0&+0
citete
n
i39
Top Related