despre programare sumar

12
C1: Despre programare şi limbaje de programare 1) De ce programarea (de ce să programăm)? -programarea este un domeniu esenţial al informaticii -fără programe (soft) calculatoarele (hard) ar rămâne doar instrumente inutile şi anoste (nu ar fi capabile să facă nimic) 2) Ce este un program informatic? -o succesiune logică de instrucţiuni sau expresii destinate executării lor de către calculator în vederea obţinerii unor rezultate -sinonime: produs program, aplicaţie, pachet de programe, produs-soft, software -Niklaus E. WIRTH: structuri de date + algoritmi =program -Program: Ieşiri =Funcţie(intrări) -traducerea într-un limbaj de programare a unuia sau mai multor algoritmi 3) Care sunt caracteristicile (proprietăţile) fundamentale ale programelor? -corectitudine: la date de intrare corecte se obţin rezultate scontate -robusteţe: face faţă unor evenimente neprevăzute -reutilizabilitate

Upload: siposalex24

Post on 17-Dec-2015

8 views

Category:

Documents


3 download

DESCRIPTION

Introducere in tainele programarii

TRANSCRIPT

C1: Despre programare i limbaje de programare1) De ce programarea (de ce s programm)?

-programarea este un domeniu esenial al informaticii

-fr programe (soft) calculatoarele (hard) ar rmne doar instrumente inutile i anoste (nu ar fi capabile s fac nimic)

2) Ce este un program informatic?

-o succesiune logic de instruciuni sau expresii destinate executrii lor de ctre calculator n vederea obinerii unor rezultate-sinonime: produs program, aplicaie, pachet de programe, produs-soft, software

-Niklaus E. WIRTH: structuri de date + algoritmi =program

-Program: Ieiri =Funcie(intrri)-traducerea ntr-un limbaj de programare a unuia sau mai multor algoritmi

3) Care sunt caracteristicile (proprietile) fundamentale ale programelor?

-corectitudine: la date de intrare corecte se obin rezultate scontate

-robustee: face fa unor evenimente neprevzute

-reutilizabilitate

-compatibilitate

-portabilitate:poate fi executat pe calculatoare (platforme) diverse

-eficien: utilizeaz optim resursele de calcul

-claritate

4) Ce este un limbaj de programare?

- o tehnic de comunicare dintre om i calculator5) Prin ce se caracterizeaz un limbaj de programare?

-vocabular: mulimea cuvintelor rezervate

- sintax:reguli de compunere a propoziiilor (instruciunilor sau expresiilor); regulile de punctuaie- semantic: semnificaia 6) Care sunt principalele criterii de clasificare?

a) dup distana fa de limbajul calculatorului

-limbaje de nivel cobort (apropiate de calculator): cod main, de asamblare i macro-asamblare

-limbaje de nivel nalt (apropiate de programator)

b) dup clasa de probleme pe care le rezolv n mod eficient limbajele de nivel nalt

-universale

-specializate (domeniul tiinific, economic, inteligena artificial)c) dup modul de realizare al funciilor de prelucrare automat

-procedurale (Ce? i Cum?)

-neprocedurale (Ce?)

7) Care sunt fazele execuiei unui program scris n limbaj simbolic?

8) Cu ce se realizeaz translatarea unui program din programul surs (PS) n programul obiect (PO)?

-interpreter

-compilator

9) Care sunt fazele realizrii unui program?

-este OK i (analiza, proiectarea, implementarea, testarea, exploatarea i ntreinerea)10) Care este structura clasic a unui program

11) Ce reprezint un algoritm?-o metod prin care sunt descrii paii necesari rezolvrii unei probleme - o succesiune de etape aplicate unei probleme specificate cu scopul obinerii unei soluii, pornind de la un set de date de intrare12) Care sunt caracteristicile (proprietile) unui algoritm?

- Finitudine - pornind de la datele de intrare, un algoritm trebuie s determine datele de ieire ntr-un timp finit, cu un efort de calcul ct mai mic.

- Claritate - descrierea precis, fr ambiguiti, a procesului de calcul implic stabilirea unei ordini stricte, unice, a transformrilor suferite de datele de intrare.- Generalitate - un algoritm trebuie s fie conceput pentru rezolvarea unei clase de probleme de acelai tip, nu numai pentru determinarea soluiei unei probleme particulare. 12) Cum pot fi clasificai algoritmii?

a) dup metoda de proiectare (concepere)-backtracking (cutare cu revenire)

-divide et impera (metoda divizrii)-greedy (optimul local)-genetici (principiile geneticii i ale seleciei naturale)b) dup metoda de implementare

-iterativi: cicluri repetitive

-recursivi: se autoapeleaz13) Cum pot fi reprezentai algoritmii?

-pseudocod

-scheme logice

14) Ce sunt schemele logice i care sunt simbolurile de baz utilizate ntr-o schem logic?

-o modalitate grafic de reprezentare a algoritmilor

SimbolSemnificaie

Conectori

Test condiie (Bloc de control)

nceput i sfrit prelucrare

Prelucrri

Operaiuni de intrare-ieire

Succesiunea prelucrrilor

Subrutin (set de prelucrri)

14) Ce este pseudocodul ?

- un mijloc (un limbaj) de exprimare natural i de dezvoltare sistematic a algoritmilor -este format din dou tipuri de propoziii: standard i nestandard- enunurile nestandard sunt fraze n limbajul natural, care pot fi utilizate de programator n schiarea formelor iniiale ale algoritmilor. n dezvoltarea algoritmilor ele sunt nlocuite treptat, cu enunuri standard, care exprim operaii corespondente direct n limbajele de programare.15) Ce reprezint metoda de programare?

-un set de concepte, principii i regulile aferente, dup care programatorul se poate ghida n scrierea programelor

16) Care sunt principalele metode de programare?-programarea structurat

-programarea orientat obiect

-programarea dirijat de evenimente-diverse combinaii

17) Prin ce se caracterizeaz programarea structurat?

-se bazeaz pe principiul divide et impera, adic pe descompunerea unei probleme n subprobleme mai simple

-programul este structurat n subprograme

-un subprogram se caracterizeaz prin: semntur (antet) - format din (denumire, un set opional de parametrii); corp format din (zero sau mai multe instruciuni)

-subprogramul se va executa numai dac va fi explicit apelat din programul principal sau din alt subprogram

-subprogramele pot fi: funcii sau proceduri

-n 1966 Corrado BOHM i Giuseppe JACOPINI au emis teorema fundamental a programarii structurate:Orice program/algoritm poate fi rezolvat prin trei structuri fundamentale de control: liniar, alternativ i repetitiv cu test iniialStructura secvenial

Structura alternativ simpl

Sintax:

If condiie Then Set_Instruciuni1ElseSet_Instruciuni2End If

Structura repetitiv condiionat anterior

Sintax:

While condiie Set_InstruciuniWend 18) Prin ce se caracterizeaz programarea orientat obiect (OOP Object Orientted Programming)?

-programul este format dintr-un ansamblu de obiecte care comunic ntre ele prin intermediul mesajelor

-conceptele de baz ale programrii orientate obiect sunt: obiectul, abstractizarea, ncapsularea, motenirea, polimorfismul i persistena

19) Prin ce se caracterizeaz programarea dirijat de evenimente?-aplicaiile nu sunt executate ntr-o ordine strict i previzibil-derularea unei aplicaii poate urma o mulime de alternative determinate de opiunile utilizatorului sau de semnalele generate de sistem-practic programul este n ateptare i cnd se declaneaz un eveniment se realizeaz prelucrarea specific rezolvrii acestui eveniment

conditie

Repeta

DA

NU

Condiie

Att timp ct

Set_Instruciuni

Pseudocod

Schema logic

Set_Instruciuni