algoritmsl

Upload: dragosvoinea96

Post on 04-Feb-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 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