Free Essay

Limbaje de Programare

In: Other Topics

Submitted By alexandra934
Words 1307
Pages 6
Obiectivele laboratorului sunt urmatoarele:
 Introducere in programarea calculatoarelor si prezentarea notiunii de algoritm

 Prezentarea notiunii de program  Limbaje de programare
1. Introducere in programarea calculatoarelor si prezentarea notiunii de algoritm

Programarea calculatoarelor este procesul de proiectare, implementare, testare, depanare a codului sursa a programelor de calculator.Codul sursa este scris intr-un limbaj de programare si poate fi o modificare a unei surse existente sau ceva complet nou.Obiectivele programarii calculatoarelor este de a crea programe care corespund unui comportament anume.Scrierea

1

programelor (a codului sursa) necesita de cele mai multe ori o bogata expertiza in diferite subdomenii, incluzand cunostinte de logica formala si algoritmi. Notiunea de algoritm se refera la o succesiune de etape care se poate aplica mecanic pentru rezolvarea unei clase de probleme. Pentru redactarea unui algoritm, putem folosi una din urmatoarele mijloace:  Scheme logice
 Pseudocod - este o scriere intermediară, menită să simplifice scrierea unui algoritm

într-un limbaj de programare și să ajute la realizarea clarității algoritmului, în timp scurt.  Mental, fara pseudocod sau scheme logice Cerintele obligatorii pentru un algoritm sunt :
 Claritate, algoritmul nu trebuie sa aiba ambiguitati  Generalitate,

algorimul trebuie sa rezolve o intreaga clasa de probleme si nu

probleme particulare
 Finitudine, algoritmul trebuie sa furnizeze un rezultat intr-un timp finit

Intrebare: O problema poate avea mai multi algoritmi de rezolvare? Care e cel mai bun? Obiectele cu care lucreaza algoritmii:
 Date – de intrare, de iesire.  Dupa tipul datelor – intregi, reale, logice ( 0/1 sau False/True), caractere (‘a’), siruri

de caractere “abc”.
 Constante – date din program care nu trebuie citite sau calculate – PI, e, etc. 2

 Variabile – au un nume unic, dar continutul nu ; Caracteristici ale variabilelor -

nume, tip, valoarea la un moment dat, adresa variabilei (locul in memorie). Ex: x este de tip intreg, are valoare 10 si adresa la care se afla in memorie: 0xFF38
 Expresii – sunt construite cu ajutorul constantelor, variabilelor si a operatorilor, fiind

de mai multe tipuri, ca si variabilele.

Exemplu:10*x+2; x>y; x+y

 Operatii - intrarea - preluarea unor date de la un dispozitiv de intrare si trecerea

unei date din memorie catre un dispozitiv de iesire (iesirea) ; decizia, atribuirea x=7; y=x+y ( se evalueaza expresia din dreapta atribuirii, valoarea obtinuta este atribuita variabilei din stanga, care isi pierde vechea valoare).
2. Prezentarea notiunii de program si limbaje de programare

Prin program se intelege o descriere precisa si concisa a unui algoritm intr-un anumit limbaj de programare. Limbaje de programare:
 Limbaje de nivel coborat, dependent de calculator:limbaj de asamblare (mnemonice

pentru operatii, simboluri pentru adrese, este un limbaj dependent de masina, greu de programat)
 Limbaje de nivel inalt, independente de structura calculatorului: Fortran -1955,

pentru probleme tehnico stiintifice, Cobol -1959, pentru

probleme economice,

Programare structurata –’70, Programarea orientata obiect –‘80. Programarea structurata – se refera la programarea top-down, adica se bazeaza pe descompunerea unei probleme complexe in subprobleme mai simple numite module.

3

Teorema de structura a lui Bohm si Jacopini : Orice algoritm poate fi compus cu ajutorul a trei structuri de calcul (fiecare va avea o singura intrare si o singura iesire):
  

structura secventiala - secventa structura alternativa – decizia structura repetitiva – ciclul

Programarea orientata obiect - POO: http://ro.wikipedia.org Programarea orientată pe obiect (Programare Orientată Obiectual) este unul din cei mai importanți pași făcuți în evoluția limbajelor de programare spre o mai puternică abstractizare în implementarea programelor. Ea a apărut din necesitatea exprimării problemei într-un mod mai natural ființei umane. O mare problemă a programării structurate era separarea datelor de unitățile care prelucrau datele(subrutinele), ceea ce făcea foarte dificilă extinderea și întreținerea unui program. Astfel s-a pus problema ca aceste două entități(date și subrutine) să fie grupate într-un anumit mod, astfel încât subrutinele să "știe" în permanență ce date prelucrează și, mai mult decăt atât, ele să formeze un modul, adică o unitate care separă implementarea de interfață, ceea ce implică posibilitatea refolosirii codului. A apărut astfel conceptul de clasă. Clasa realizează, în speță, ceea ce am văzut mai înainte: grupează datele și unitățile de prelucrare a acestora într-un modul, unindu-le astfel într-o entitate mult mai naturală. Clasa, pe lângă faptul că abstractizează foarte mult analiza/sinteza problemei, are proprietatea de generalitate, ea desemnând o mulțime de obiecte care împart o serie de proprietăți.De exemplu: Clasa "floare" desemnează toate plantele care au flori, precum clasa "Fruct" desemnează toate obiectele pe care noi le identificam ca fiind fructe. Bineînțeles, în implementarea efectivă a programului nu se lucrează cu entități abstracte, precum clasele ci se lucrează cu obiecte, care sunt "instanțieri" ale claselor. Altfel spus, plecând de la exemplul de mai sus, dacă se construiește un program care să lucreze cu fructe, el nu va prelucra
4

entitatea "fruct" ci va lucra cu entități concrete ale clasei "fruct", adică "măr", "pară", "portocală", etc.Apare însă următoarea problemă: "cum se trece de la o structură generală la una particulară, mai precis ce înseamnă efectiv procesul de instanțiere?". Instanțierea (trecerea de la clasă la obiect) înseamnă atribuirea unor proprietăți specifice clasei, astfel încât aceasta să indice un obiect anume, care se diferențiază de toate celelalte obiecte din clasă printr-o serie de atribute. Dacă vom considera ca "fruct_exotic" care desemnează clasa tuturor fructelor exotice conține proprietatea "culoare" atunci atribuind acesteia valoarea "galben" noi vom crea o nouă mulțime( clasa fructelor exotice care au culoarea galbenă ) care este o subclasă a clasei "fruct_exotic", deci realizăm astfel o particularizare. Mai mult decât atât, dacă vom adăuga noi și noi atribute vom individualiza clasa astfel încât să ajungem la un caz concret, care este Obiectul. Principiile de baza ale POO sunt urmatoarele:


Abstractizarea – Este posibilitatea ca un program să ignore unele aspecte ale informației pe care o manipulează, adică posibilitatea de a se concentra asupra esențialului. Fiecare obiect în sistem are rolul unui “actor” abstract, care poate executa acțiuni, își poate modifica și comunica starea și poate comunica cu alte obiecte din sistem fără a dezvălui cum au fost implementate acele facilitați. Procesele, funcțiile sau metodele pot fi de asemenea abstracte, și în acest caz sunt necesare o varietate de tehnici pentru a extinde abstractizarea:



Încapsularea – numită și ascunderea de informații: Asigură faptul că obiectele nu pot schimba starea internă a altor obiecte în mod direct (ci doar prin metode puse la dispoziție de obiectul respectiv); doar metodele proprii ale obiectului pot accesa starea acestuia. Fiecare tip de obiect expune o interfață pentru celelalte obiecte care specifică modul cum acele obiecte pot interacționa cu el.



Polimorfismul – Este abilitatea de a procesa obiectele în mod diferit, în funcție de tipul sau de clasa lor. Mai exact, este abilitatea de a redefini metode pentru clasele
5

derivate. De exemplu pentru o clasă Figura putem defini o metodă arie. Dacă Cerc, Dreptunghi, etc. vor extinde clasa Figura, acestea pot redefini metoda arie.


Moștenirea – Organizează și facilitează polimorfismul și încapsularea, permițând definirea și crearea unor clase specializate plecând de la clase (generale) deja definite - acestea pot împărtăși (și extinde) comportamentul lor, fără a fi nevoie de a-l redefini. Aceasta se face de obicei prin gruparea obiectelor în clase și prin definirea de clase ca extinderi ale unor clase existente. Conceptul de moștenire permite construirea unor clase noi, care păstrează caracteristicile și comportarea, deci datele și funcțiile membru, de la una sau mai multe clase definite anterior, numite clase de bază, fiind posibilă redefinirea sau adăugarea unor date și funcții noi. Se utilizează ideea: ”Anumite obiecte sunt similare, dar în același timp diferite”. O clasă moștenitoare a uneia sau mai multor clase de bază se numește clasă derivată. Esența moștenirii constă în posibilitatea refolosirii lucrurilor care funcționează.

Task 1: Scrieti pseudocodul pentru interschimbarea a doua variabile ce contin numere reale. Task 2: Scrieti pseudocodul pentru a rezolva o ecuatie de grad doi cu coeficienti reali. Bibliografie: http://www.curs.cs.pub.ro, www.wikipedia.org

6

Similar Documents

Free Essay

Mata

...UNIVERSITATEA ROMÂNO- AMERICANĂ DATA ACTUALIZARE: 14.02.2013 FACULTATEA DE INFORMATICĂ MANAGERIALĂ DOMENIUL CIBERNETICĂ, STATISTICĂ ŞI INFORMATICĂ ECONOMICĂ SPECIALIZAREA INFORMATICĂ ECONOMICĂ FORMA DE INVATAMANT INVATAMANT CU FRECVENTA- DURATA 3 ANI STUDII UNIVERSITARE DE LICENTA O R A RUL CURSURILOR SI SEMINARIILOR ANUL I - AN UNIV. 2012 – 2013 , SEM. II ZIUA LUNI 10,30-11,50 12,00-13,20 MARŢI 13.30-14.50 15,00-16,20 16,30-17,50 18,00-19,20 Sala 514 CONTABILITATE Sala 513 - BAZELE PROGRAMĂRII PE OBIECTE ORA Grupa 601 Grupa 602 Grupa 603 LIBER Grupa 604 Grupa 605 Grupa 606 Sala 514 - ANALIZĂ MATEMATICĂ Sala Sala 516 - CONTABILITATE Sala 426 CONTABILITATE 426 BAZELE PROGRAMĂRII PE OBIECTE Sala 327 - BAZELE PROGRAMĂRII PE OBIECTE Sala 516 CONTABILITATE Sala 516 - ANALIZĂ MATEMATICĂ Sala 518 – MACROECONOMIE Sala 518 – MACROECONOMIE 12,00-13,20 13,30-14,50 MIERCURI 15,00-16,20 Sala 511 - ANALIZĂ MATEMATICĂ Sala 516 - LIMBA ENGLEZĂ II Sala 518 - ANALIZĂ MATEMATICĂ Sala Sala 514 - ANALIZĂ MATEMATICĂ Sala 518 – MACROECONOMIE 426 16,30-17,50 18,00-19,20 ANALIZĂ MATEMATICĂ Sala 426 DREPT - Sala 516 - - LIMBA ENGLEZĂ II Sala 518 – MACROECONOMIE 12,00-13,20 JOI 13,30-14,50 15,00-16,20 16,30-17,50 18,00-19,20 Sala 518 - LIMBA ENGLEZĂ II Sala 220 - BAZELE PROGRAMĂRII PE OBIECTE Sala 327 - BIROTICĂ PROFESESIONALĂ Sala 516 - ANALIZĂ MATEMATICĂ Sala AMF.1 BIROTICĂ PROFESIONALĂ Sala 516 - - LIMBA...

Words: 1633 - Pages: 7

Free Essay

Expert System

...Universitatea „Dunărea de jos” din Galați Sistem informatic inteligent pentru recomandarea statiunilor Proiect la disciplina: Sisteme Bazate pe Cunoștințe Student: ANGHELUTA DRAGOS RAZVAN Grupa: 22C41B Profesor îndrumător: Ș.I.dr.ing. Adina COCU Informatii despre aplicatie Tema proiectului este recomandarea statiunilor din Romania in functie de anumite caracteristici.Aplicatia poate sugera statiuni din zona montana sau din ceea maritima.Pentru statiunile din zona montana acestea au fost clasificate dupa anumite caracteristici cum ar fi altitudine ,servicii medicale(balneoclimateri,climaterice) si practicarea sporturilor de iarna.Statiunile din zona maritima au fost clasificate dupa anumite caracteristici cum ar fi altitudine si servicii medicale(balneoclimaterice) . Tehnologii folosite CLIPS este un acronim pentru C Language Integrated Production System, o unealtă pentru construirea sistemelor expert dezvoltată de NASA în anii 1980. Sintaxa și numele au fost inspirate de OPS (sistem de producție oficial, în engleză Official Production System) creat de Charles Forgy. Primele versiuni de CLIPS au fost dezvoltate începând cu 1984 la NASA-Johnson Space Center (ca o alternativă la sistemul existent numit ART*Inference) până la începutul anilor 1990 când subvenția a încetat din cauza problemelor bugetului Federal, și a unui ordin conform căruia NASA trebuia să cumpere software comercial în loc să-l dezvolte. CLIPS este probabil...

Words: 542 - Pages: 3

Free Essay

Mixul de Marketing-Mc Donald's

... Metodele (numite şi funcţii sau proceduri în alte limbaje de programare) împart taskuri complexe în bucăţi mici mai uşor de înţeles şi de programat. Acestea pot fi refolosite cu alte ocazii, în loc să fie rescrise de la zero. Prin utilizarea metodelor se obţine o divizare logică a programelor mari şi complexe. De regulă, ele cuprind o serie de instrucţiuni prin care se efectuează un calcul, se realizează o acţiune, se implementează un algoritm, etc. Ca şi în matematică metoda sau funcţia defineşte un proces care are de regulă rezultate diferite, depinzând de datele iniţiale care se fac cunoscute metodei prin intermediul unor variabile speciale, denumite parametrii formali. Aceştia se includ în paranteze rotunde şi sunt separaţi prin virgulă. O metodă conţine una sau mai multe declaraţii. În C# fiecare metodă efectuează doar o singură sarcină. Fiecare metodă are un nume, care este folosit pentru a apela metoda. Pentru a numi o metodă se poate folosi orice identificator. Atenţie. Nu folosiţi numele main pentru a denumi o metodă deoarece acest cuvânt este folosit pentru metoda care reprezintă punctual de intrare in orice aplicaţie C#. De asemenea, nu se folosesc cuvinte cheie pentru numele metodei. Utilizarea unei metode presupune două elemente distincte: • definirea metodei; • apelul metodei; Definirea metodelor. Sintaxa standard de declarare a unei metode este: vizibilitate tip_returnat...

Words: 357 - Pages: 2

Free Essay

Mobile Apps

...Ioan Cuza” Iasi Facultatea de Economie şi Administrarea Afacerilor Specializarea Informatică Economică Lucrare de licenta Coordonator, D-na. Prof. DANIELA Popescul Absolvent, Codrin Mihail AFRASINEI Iaşi, Iulie 2015 Cuprins Introducere – Importanta aplicatiilor mobile 3 Capitolul 1 – Aplicatii mobile, concept 4 1.1 Categorii de aplicatii: 4 1.1.1 Aplicatiile native 4 1.1.2 Aplicatiile web 5 1.1.3 Aplicatiile hybrid 5 1.2 Arhitectura aplicatiilor mobile 6 1.2.1 Arhitecturi specifice aplicatiilor mobile 7 1.4 Avantajele si dezavantajele aplicatiilor mobile pentru „mBusiness” 12 1.4.1 Avantajele aplicatiilor mobile pentru „mBusiness” 12 1.4.2 Dezavantajele aplicatiilor mobile pentru „mBusiness” 14 1.4.3 Riscurile aplicatiilor mobile. 14 Capitolul 2 – Aplicatii mobile pentru afaceri, MBI 16 2.1 Impactul aplicatiilor mobile pentru afaceri 17 Capitolul 3 – Analiza sistemelor de operare destinate dezvoltarii aplicatiilor mobile. 24 3.1 Analiza comparativa dintre iOS si Android 26 Bibliografie 37 Introducere – Importanta aplicatiilor mobile Dispozitivele mobile din ziua de astazi sunt fara indoiala foarte importante, deoarece fac parte din viata de zi cu zi a milioane de oameni. Fiind intr-o continua miscare, oamenii din ziua de astazi folosesc astfel de dispozitive pentru a avea...

Words: 9317 - Pages: 38

Free Essay

Managementul Strategic in Sectorul Public

...„Babeş-Bolyai” (UBB) este una din cele mai prestigioase instituţii de învăţământ superior de stat din Romania, continuatoarea tradiţiei Universităţii din Cluj, înfiinţată în anul 1581. Din punctul de vedere al numărului de studenţi, precum şi al diversităţii specialităţilor oferite, este una dintre cele mai importante universităţi din România. Universitatea poartă din 1959 numele a doi renumiţi oameni de ştiinţă: bacteriologul român Victor Babeş şi matematicianul maghiar János Bolyai. În topul Quacquarelli Symonds (cunoscut prin The Times Higher Education Supplement), Universitatea Babeş-Bolyai ocupa în 2009 locul 601+, aflându-se astfel printre cele mai bune 1000 universităţi din lume. Este a doua poziţie a unei universităţi româneşti în topul QS, fiind precedată de Universitatea din Bucureşti pe locul 501-600. Pe de altă parte Universitatea Babeş-Bolyai ocupă locul întâi în ţară în ceea ce priveste cercetarea ştiinţifică ( Raportul CNCSIS 2010) şi locul întâi în ţară în ceea ce priveşte calitatea ofertei educaţionale. UBB este o instituţie publică de învăţământ superior a cărei misiune este să promoveze şi să susţină în comunitatea locală, regională, naţională şi internaţională dezvoltarea unor componente culturale specifice. Ea are în structura sa facultăţi, departamente, catedre, colegii, institute, biblioteci, laboratoare, unităţi de cercetare, muzee, cămine, cantine, serviciile administrative, tehnice, baze de practică, de agrement, sociale etc. Dezvoltarea unei universităţi este...

Words: 8789 - Pages: 36

Free Essay

Aspecte Moderne Ale Marketingului Promovat Prin Internet

...popularitătii Webului - instrument primordial de utilizare a Internetului - o activitate din ce în ce mai profitabilă a început să fie exploatată de către un număr crescând de companii: publicitatea şi marketingul electronic, instrumente ce oferă posibilităţi enorme la un cost minimal. Cu mai mult de 30 milioane de utilizatori în toată lumea şi o rată de creştere a numărului de utilizatori de 10-15% pe lună, activitatea de marketing pe Internet devine mult mai uşoară decât cea prin metodele clasice. Dacă se ia în consideraţie faptul că o campanie tipic de marketing determină o rată de răspuns de cel puţin 2%, teoretic rezultă un număr de răspunsuri pe Internet de câteva mii, cel puţin. Din ce în ce mai multe întreprinderi - din toate sectoarele economice - încep să realizeze potenţialul enorm al noului mediu de comunicaţie electronică, internetul. Pentru a avea acces la un auditoriu de câteva milioane de "spectatori" - şi potenţiali clienţi - marile reţele de televiziune oferă preţuri de ordinul zecilor sau sutelor de mii de dolari pentru spoturi publicitare de 30 de secunde; pentru a atinge o asemenea audienţă, doar giganţi ca IBM, Coca Cola sau Ford îşi puteau permite campanii publicitare de milioane de dolari. Însă prin Internet, orice companie îşi poate asigura o prezenţă neântreruptã, 24 de ore pe zi, 365 de zile pe an, pentru preţuri incomparabil inferioare. În plus, prin această prezenţă permanentă compania îşi asigură un serviciu de suport şi informare continuu, rapid şi eficace...

Words: 30989 - Pages: 124

Free Essay

Publicity

...2004 SNSPA, Facultatea de Comunicare ºi Relaþii Publice „David Ogilvy“ Strada Povernei 6–8, Bucureºti Tel./fax: (021) 313 58 95 E-mail: difuzare@comunicare.ro www.editura.comunicare.ro Descrierea CIP a Bibliotecii Naþionale a României PETRE, DAN Introducere în publicitate / Dan Petre, Mihaela Nicola. – Bucureºti: Comunicare.ro, 2004 Bibliogr. ISBN 973-711-004-8 I. Nicola, Mihaela 659.1 Cuprins Notã introductivã / 7 Introducere: surse teoretice ºi delimitãri conceptuale / 9 Surse teoretice / 10 Delimitãri conceptuale. Definiþii. Distincþii faþã de domeniile înrudite / 18 Scurt istoric al publicitãþii / 25 Scurt istoric al publicitãþii la nivel internaþional / 25 Scurt istoric al publicitãþii în România / 34 Publicitatea ca proces de comunicare / 41 Funcþiile publicitãþii / 44 Tipuri de publicitate / 47 Rolul publicitãþii în activitatea de marketing / 52 Obiectivele campaniei de publicitate / 55 Canalele media utilizate în publicitate / 56 Agenþia de publicitate / 67 Agenþia de publicitate / 67 Scurt istoric / 68 Agenþia de publicitate modernã / 71 Cercetarea pentru publicitate / 87 Cercetarea exploratorie ºi de dezvoltare a campaniei (developmental research) / 93 Cercetarea confirmatorie de testare (confirmatory research sau advertising testing) / 100 Cercetarea evaluatorie (evaluative research) / 109 Strategia ºi planificarea în publicitate / 117 Comportamentul consumatorului / 118 Procesul de planificare strategicã. Rolul în desfãºurarea campaniei de publicitate / 124 Etapele...

Words: 106426 - Pages: 426