Universitatea Româno-Americanǎ
Facultatea de Informaticǎ Managerialǎ
Algoritmi
Şi structuri de date
-conspect -
Grupa: 602
Anul: I
CUPRINS
-
Sistem Informaţional – Sistem Informatic
-
Structuri de date
-
Grafuri
-
Algoritmi definire
-
Descrierea algoritmilor
-
Structuri fundamentale ale algoritmilor
-
Evaluarea corectitudinii algoritmilor
-
Limbaje de programare
-
Algoritmi speciali
-
Tehnici de programare
-
Tehnici de programare structuratã
-
Probleme
Bibliografie
Introducere:
Semiotica se ocupã cu studiul semnelor în natura şi în societate. Semnul nu este o calitate în sine a unui obiect, ci o funcţie pe care acest obiect o poate dobandi. Studiind combinatorica rezultantã, rezultã ca din punct de vedere teoretic sunt posibile mii de clase de semne; dar imensa varietate de semne poate fi raportata la o anumita tipologie conform careia semnele se repartizeazã în 3 categorii: semne iconice, semne indiciale, semne simbolice. Aceasta clasificare se referã la tipul de legatura al semnului cu referentul.
Sunt de remarcat 3 specii de semne iconice: imagini, grafuri, metafore.
Ştiinţa este bogatã în semne indiciale, inevitabile, atât în procesele de generalizare cat şi în cele de demonstrare, dar metoda modelarii promoveazã cu deosebita putere în cercetarea stiintifica, semnele iconice.
Se poate afirma totodata, ca semnele simbolice prezinta caracterul cel mai pronuntat social; ele sunt generate exclusiv prin puterea unei conventii pe care o comunitate de indivizi, istoriceste constituita o poate instaura.
Un loc special il ocupã aici codurile utilizate în telegrafie, sistemele de semne utilizate de diferite ştiinte ( formule algebriece, formule din chimia organica, etc. ) dar mai cu seama, limbajele de comunicare om – masina, de o deosebita importanta astãzi datorita dezvoltarii calculatoarelor electronice.
O alta triada care a jucat un rol important în dezvoltarea semioticii este constituita de distinctiile dintre:
-
Sintaxa – studiul relatiilor dintre semnele unui sistem semiotic;
-
Semantica – studiul relatiilor dintre semne şi obiectele pe care ele le desemneaza;
-
Pragmatica – studiul relatiilor dintre semne şi cei care le interpreteaza şi le folosesc.
Statutul pragmaticii este inca foarte controversat, mai ales în legatura cu limbajele de programare a calculatoarelor electronice, şi cu evolutia acestora.
Cele 6 functii ale procesului de comunicare codificata sunt:
-
Emotivã;
-
Conativã;
-
Referenţialã;
-
Faticã ( de centrare asupra canalului );
-
Metalingvisticã ( de centrare asupra codului );
-
Poeticã.
Superioritatea calitativã a vorbelor fata de semnale provine din generalitatea semnificatiilor pe care le produce. „Magia” cuvintelor tine de valoarea cognitiva şi pragmatica a notiunilor pe care le vehiculeaza. „Fiecare cuvant era şi ramane o victorie contra absentei, contra lipsei, contra neputinei” a spus Gerard Mendel în cartea sa „La chasse structurale”.
CAPITOLUL 1
Sistem informaţional – Sistem informatic
Sistem informaţional
Un sistem poate fi privit ca un ansamblu de elemente interconectate şi interconditionate prin relaţii fizice, sociale şi de alta natura, intre ele şi nu mediul extern sistemului, care functioneaza în vederea realizarii unui scop sau a finalizarii unui obiect.
Activitatea desfasurata intr-un sistem organizat, în vederea realizarii unui obiectiv poate fi definita ca fiind rezultatul actiunii conjugate, a 3 subsisteme ce actioneaza intr-o stransa interdependenta şi care la randul lor pot fi considerate sisteme:
-
Sistemul de conducere sau decizional ( S.D. )
-
Sistemul condus, de executie sau operational ( S.O. )
-
Sistem informational.
Sistemul de conducere are rolul de a dispune, indruma şi coordona activitatea în vederea realizarii abiectivelor fixate, cu eficienta maxima.
Sistemul condus are rolul de a executa practic deciziile luate şi de a furniza date privind actiunile realizate, sau în curs de executie, folosind pt aceasta resursele materiale, financiare stiintifice şi umane existente, repartizate pe obiective dinainte stabilite.
Pentru executarea activitatiilor de bazã ale procesului decizional: planificare, urmarire, control şi decizie, sistemului de conducere ii sunt necesare permanent informatii despre starea şi evolutia sistemului de executie, despre legaturile acestuia cu exteriorul. De la sistemul de conducere, spre sistemul condus vor circula decizii. Acest circuit de informatii şi decizii reprezintã un proces permanent care se realizeaza prin existenta Sistemului Informational.
Sistemul Informational este un instrument indispensabil conducerii, având ca parti componente mijloacele şi procedeele ce asigura legaturile intre elementele de executie şi elementele decizionale pentru conducere şi organizare.
În felul acesta, prin sistemul informational se pot cunoaste la timp şi în cantitati necesare toate elementele de caracterizare a activitatilor desfasurate, el cuprinzand fondul de informatii, tehnicile de colectare şi stocare, mijloacele şi metodele necesare în vederea prelucrarii şi transmiterii informatiilor.
Deci, sistemul informational este un ansamblu de fluxuri şi circuite informationale organizate intr-o conceptie unitara, el utilizeaza modele, proceduri, resurse umane şi materiale pentru colectarea, inregistrarea, prelucrarea, stocarea şi/sau transmiterea datelor şi a informatiilor, prin intermediul carora asigura interconexiunile informationale dintre sistemul de conducere şi sistemul condus.
Sistemul informational primeste intrari, le prelucreaza şi furnizeaza iesiri. Intrarile şi iesirile unui sistem informational, sunt date, informatii şi decizii.
Ansamblul operatiilor la care sunt supuse intrarile pentru a furniza iesirile se constituie în proceduri.
În cazul cand metodele, procedurile şi mijloacele utilizate pentru colectarea, inregistrarea, prelucrarea, stocarea şi/sau transmiterea datelor şi a informatiilor sunt cu preponderenta automatizate, sistemul informational devine un sistem informatic.
Sistemul informatic – intrument al conducerii stiintifice a societatilor comerciale
Conceptul de sistem informatic
În masura în care activitatiile din cadrul sistemului informational sunt realizate cu ajutorul echipamentelor electronice de culegere, transmitere, stocare şi prelucrare automata a datelor, se spune ca avem de a face cu informatizarea sistemului informational şi implicit cu aparitia conceptului de sistem informatic.
Sistemul informatic, reprezintã un ansamblu de elemente intercorelate, functional în scopul automatizarii obtinerii informatiilor necesare conducerii în procesul de elaborare a deciziilor.
Un sistem informatic, este compus, în principal din urmatoarele elemente:
-
Bazã tehnica sau hardware-ul sistemului informatic, care este constituita din totalitatea mijloacelor tehnice de culegere, transmitere, stocare şi prelucrare a datelor, în care locul central revine calculatorului electronic.
-
Sistemul de program sau software-ul sistemului, ce cuprinde totalitatea programelor pentru functionarea sistemului informatic, în concordanta cu functiunile şi obiectivele ce au fost stabilite.
-
Bazã stiintifico-metodologica, care este constituita din modele matematice ale proceselor şi fenomenelor economice, metodologii, metode şi tehnici de realizare a sistemelor informatice.
-
Bazã informationala cuprinde datele suspuse prelucrarii, fluxurile informationale, sistemele şi nomenclatoarele de coduri.
-
Resursele umane şi cadrul organizatoric, care cuprinde personalul de specialitate şi cadrul necesar functionarii sistemului informatic.
Obiectivele sistemului informatic
Obiectivele sistemului informatic pot fi clasificate dupa mai multe criterii astfel:
A. În functie de sfera de cuprindere pot fi: principale ( generale ) şi secundare ( derivate ).
B. Din punct de vedere al domeniului de activitati asupra carora se rasfrang efectele utilizarii calculatoarelor electronice, obiectivele pot fi clasificate astfel:
-
Obiective ce afecteaza activitatiile de bazã din cadrul unitatilor economice ( comerciala, productia, etc. ) cum ar fi:
-
cresterea gradului de incarcare a capacitatilor de productie existente şi reducerea duratei ciclului de fabricatie;
-
cresterea volumului productiei;
-
reducerea consumurilor specifice de materii prime şi materiale
-
reducerea personalului administrativ – functionaresc;
-
cresterea gradului de utilizare a capacitatii de cazare;
-
sporirea volumului incasarilor din cativitati de prestari servicii;
-
cresterea profitului şi a rentabilitatii etc.
b. obiectivele ce afecteaza functionarea sistemului informational cum ar fi:
-
cresterea vitezei de raspuns a sistemului la solicitarile beneficiarilor;
-
cresterea exactitatii şi preciziei în procesul de prelucrare a datelor şi informarea conducerii;
-
reducerea costului informatiei;
-
rationalizarea fluxurilor informationale;
-
rationalizarea circuitelor informationale;
-
sporirea completitudinii situatiilor de informare – raportare , etc.
C. Din punct de vedere al posibilitatiilor de cuantificare a efectelor acestora:
-
obiective cuantificabile, cum ar fi:
-
accelerarea vitezei de rotatie a mijloacelor circulante, prin inlaturarea imobilizarilor de mijloace circulante;
-
reducerea cheltuielilor de transport;
-
reducerea cheltuielilor indirecte;
-
cresterea volumului productiei;
-
rationalizarea formularisticii de evidenta, etc.
-
obiective necuantificabile, care influenteaza în mod direct indicatorii cuantificabili.
Clasificarea sistemelor informatice
Sistemele informatice se clasifica dupa mai multe criterii:
A. În functie de domeniul de utilizare, acestea se clasifica în 4 grupe, astfel:
a. sisteme informatice pentru conducerea activitatiilor unitatiilor economico sociale, care se caracterizeaza prin aceea ca datele de intrare, de regula sunt furnizate prin documente intocmite de om, iar la iesire sunt furnizate de catre sistem tot sub forma de documente, pentru perceperea acestora de catre om.
b. sisteme informatice pentru conducerea sistemelor tehnologice care se caracterizeaza prin aceea ca datele de intrare sunt asigurate prin intermediul unor dispozitive automate care transmit sub forma de semnale informatii despre diversi parametrii ai procesului tehnologic, iar datele de iesire se transmit de asemenea sub forma de semnale unor organe de executie, regulatoare, care modifica automat parametrii procesului tehnologic.
c. sistemele informatice pentru activitatea de cercetare stiintifica, şi proiectare, care asigura atutomatizarea calculelor tehnico-ingineresti.
d. sistemele informatice speciale, care sunt destinate unor domenii specifice de activitate, ca de exemplu: informare şi documentare tehnico-stiintifica, medicina, etc.
B. Un alt criteriu de clasificare al sistemelor informatice economice este nivelul ierarhic ocupat de sistemul economic în structura organizatorica a societatii, conform caruia avem urmatoarea clasificare:
a. sisteme informatice pentru conducerea activitatii la nivelul unitatilor economie. Acestea pot fi descompuse în subsisteme informatice asociate functiunilor economico-sociale sau chiar unor activitati;
b. sisteme informatice pentru conducerea activitatii la nivelul organizatiilor economico-sociale cu structura de grup.
c. sistemele informatice teritoriale. Sunt constituite la nivelul unitatilor administrativ-teritoriale şi servesc la fundamentarea deciziilor adoptate de catre organele locale de conducere;
d. sistemele informatice pentru conducerea ramurilor, subramurilor şi activitatilor la nivelul economiei nationale.
Se constituie la nivelul ramurilor, subramurilor şi activitatilor individualizate în virtutea diviziunii sociale a muncii şi specificate în clasificarea ramurilor economiei nationale. Principala lor functiune consta în fundamentarea şi reglarea echilibrului dezvoltarii economico-sociale în profil de ramura.
e. sistemele informatice functionale generale au ca atribut principal faptul ca intersecteaza toate ramurile şi activitatiile ce au loc în spatiul economiei nationale, furnizand informatiile necesare coordonarii de ansamblu şi sincronizarilor în procesul reproductiei din cadrul economiei de piata.
C. În functie de modul de organizare a datelor în cadrul sistemelor informatice acestea pot fi:
-
sisteme informatice cu organizarea datelor în fisiere clasice. Acest mod de organizare a datelor are tendinta de rasfrangere sub aspectul aplicabilitatii, datorita neajunsurilor pe care le prezinta.
-
Sisteme informatice cu organizarea datelor în baze de date. Aceasta categorie de sisteme prezinta o tendinta de extindere şi dezvoltare. De la baze de date cu structuri arborescente şi retea, s-a trecut la baze de date rationale.
Sistemul informatic – instrument al conducerii moderne
Obtinerea de catre agentii economici şi societatiile comerciale a unei eficiente economice sporite, este conditionata de existenta unei conduceri stiintifice bazate pe o buna cunoastere a legilor economice.
Plecand de la faptul, pe de o parte, ca modelele matematice reprezintã componenta stiintifica a unui sistem informatic, iar pe de alta parte, tinand seama de facilitatile oferite de utilizarea calculatorului electronic, se poate aprecia ca sistemul informatic constituie un adevarat instrument în conducerea stiintifica a activitatii economice.
Proiectarea la nivel micro şi macroeconomic a unor sisteme informatice care sa utilizeze tehnica bazelor de date şi care sa contina o serie de modele matematice, iar situatiile de informare – raportare sa aiba un caracter de semnalare preventiva a abaterilor fata de starea normala, reprezintã o forma superioara de organizare şi prelucrare a datelor.
Stadiul actual şi tendintele dezvoltarii sistemelor informatice
În ultimii ani asistam la una dintre cele mai importante transformari din istorie ale infrastructurii tehnologice a societatii. Aceasta schimbare consta defapt în adaugarea unui nou substrat în infrastructura tehnologica, substrat care este uzual denumit tehnologia informatiei. În acest nou substrat se evidentiaza în mod decisiv informatica. Aceasta extindere este pe cale de a produce o schimbare majora în societatea noastra şi anume, trecerea de la orientarea industriala, în care accentul se pune pe masina şi energie, la o noua orientare informationala în care accentul este pus pe robot şi informatie. Masina şi energia vor juca un rol important, fundamental în societatea informationala, dar pentru noile masini, pentru noile industrii, ca şi pentru celelalte activitati ale omului devin esentiale tehnologiile informatice care au la bazã electronica, informatica, şi comunicatiile moderne.
Informatizarea activitatilor economico-sociale a cunoscut profunde transformari precum:
-
Se manifesta în mod clar o tendinta spre divizarea costurilor software-ului sistemelor informatice. Reducerea costurilor sistemelor informatice se datoreaza, pe de o partea, reducerii costurilor hardware-ului, iar pe de alta parte, reducerii costului software-ului. În prezent se manifesta o tendinta clara în dezvoltarea sistemelor informatice bazate tot mai mult pe platformele software la nivel inalt. O platforma software corespunde unei platforme de aplicatii şi contine functii software de bazã şi functii specifice aplicatiei companiei.
-
Se manifesta o intensa tendinta spre tehnologia sistemelor informatice bazate pe retele de calculatoare. Cresterea complexitatii, varietatii aplicatiilor şi aparitia de noi produse informatice cu un raport pret / performanta din ce în ce mai avantajos au facut necesara şi rentabila conectarea intre ele a calculatoarelor în cadrul unor retele care constituie la ora actuala suportul cel mai adecvat pentru teleinformatica.
-
În domeniul organizarii datelor, se manifesta tendinta spre baze de date orientate obiect.
Structurile clasice de date bazate pe text şi valori numerice fie se dovedesc insuficiente, fie complexitatea lor depaseste posibilitatiile de stocare şi prelucrare oferite de tehnologiile clasice. Aplicatiile asociate cu disciplinele tehnologice cum ar fi : proiectarea asistata pe calculator, sistemele informatice geografice şi sistemele bazate pe cunostinte, presupun stocarea unor cantitati mari de informatii cu o structura complexa.
Unele aplicatii informatice solicita monitorizarea unor desene formate din grupuri de elemente complexe ce trebuie sa fie combinate, separate, suprapuse şi modificate astfel incat sa permita elaborarea unor variante de proiect. Bazele de date clasice sau relationale ofera prea putin suport teoretic şi practic pentru tipurile neconventionale de date.
-
Se manifesta tendinta catre sisteme deschise.
Apreciem ca în prezent domeniul informaticii se caracterizeaza prin cel mai pronuntat dinamism. Se asista la o proliferare de produse hardware şi software, apar de la o zi la alta noi versiuni şi noi produse.
Faptul ca un sistem este deschis, nu implica şi nu impune nici o implementare practica de sistem, tehnologie sau mijloc de interconectare, termenul de sistem deschis se referã doar la recunoasterea reciproca şi aplicabilitatea acelorasi standarde.
Astfel de standarde au cel putin urmatoarele efecte mai importante:
-
Producatorii se simt incurajati sa le implementeze deoarece, având în vedere larga circulatie a acestor standarde, produsele lor informatice vor fi mult mai vandabile decat daca nu le utilizeaza;
-
Asigura o crestere a gradului de portabilitate de pe o platforma de sistem pe alta, atât a datelor cat şi a produselor software;
-
Faciliteaza insusirea teoretica şi practica a hardware-ului şi software-ului de catre utilizatori
Standardizarea se regaseste intr-o multitudine de domenii de activitati
-
Standardizarea retelelor de calculatoare. Au luat o amploare deosebita preocuparile privind realizarea unor retele eterogene de calculatoare, precum şi interconectarea retelelor a.i. sa se obtina sisteme teleinformatice de dimensiuni mari.
Aceste preocupari s-au materializat atât în plan practic, prin realizarea unor sisteme mari cat şi în plan teoretic, prin elaborarea de catre ISO ( International Standard Organization ) a unui model arhitectural stratificat de referinta pentru interconectarea sistemelor deschise.
Modelul a fost adoptat în 1983 şi reprezintã un cadru conceptual de lucru pentru definirea de standarde referitoare la interconectarea calculatoarelor eterogene. Scopul fundamental al acestui standard international este asigurarea unei baze comune pentru coordonarea de noi standarde privind interconectarea sistemelor, permitand în acelasi timp evaluarea standardelor existente.
Conceptul de sistem „deschis” în viziunea ISO denota capabilitatea oricaror 2 sisteme, omogene sau neomogene care „respecta” modelul de referinta şi standardele corespunzatoare de a putea fi interconectate. De asemenea a fost adoptat teoretic şi practic şi un model arhitectural ierarhizat, elaborat de catre Departamentul Apararii din S.U.A. ( Departament of Defence – DoD )
-
Standardizarea arhitecturii Sistemelor de Gestiune a Bazelor de Date. În acest sens amintim arhitectura propusa de CODASYL şi ANSI.
-
Standardizarea limbajelor de programare s-a materializat prin propunerile grupului de lucru CODASYL, care au elaborat limbajul de programare COBOL. Unele limbaje cum sunt: C, C++, Basic, SQL, au devenit standarde de facto, datorita faptului ca s-au impus prin performantele şi facilitatiile ce le ofera.
CAPITOLUL 2
Structuri de date
Prelucrarea automata a datelor necesita, pe langa activitatiile legate de formularea problemei, de analiza acesteia în vederea gasirii algoritmului de rezolvare şi o alta activitate deosebit de importanta, legata de organizarea datelor.
Organizarea datelor este un proces care cuprinde urmatoarele activitati:
-
identificarea datelor;
-
clasificarea şi descrierea propietatiilor, a caracteristicilor datelor;
-
gruparea datelor în colectii de date destinate prelucrarii automate;
-
reprezentarea externa pe suporturi tehnice;
-
identificarea, definirea şi descrierea procedurilor de prelucrare automata.
Eficienta prelucrarii automate a datelor, succesul acesteia depind în mare masura, de organizarea interna şi externa a datelor, de stabilirea unor structuri de date care sa corespunda cerintelor de prelucrare.
Concepte de bazã
Odata cu aparitia bazelor de date, în terminologia curenta au fost introduse şi utilizare 3 concepte de bazã în organizarea datelor, şi anume: entitate, atribut şi valoare.
Entitatea reprezintã un obiect concret sau abstract, reprezentat prin proprietatiile lui. Pe de alta parte orice proprietatea a unui obiect poate fi descrisa printr-o pereche ( Atribut, Valoare ); prin urmare o entitate poate fi reprezentata prin mai multe proprietati, deci mai multe perechi de forma ( Atribut, Valoare ).
De exemplu, un student X se poate reprezenta prin perechi ( Nume, Ion ), ( Facultate, Informatica ), ( Telefon, 435 34 76 ), ( Grupa 601 ) etc.
Practic, multimea atributelor, Nume, Facultate, Telefon, Grupa, poate fi asociata mai multor studenti; aceasta inseamna ca un atribut nu caracterizeaza doar o entitate, ci o clasa de entitati, numita entitate grup.
În exemplul nostru, entitatea grup se poate numi STUDENTI.
Notiunea de atribut este cunoscuta şi sub numele de camp sau caracteristica.
Notiunea de data
În informatica prin data, se intelege un model de reprezentare a informatiilor despre obiectele supuse prelucrarii automate, accesibil atât utilizatorului cat şi componentelor calculatorului.
În functie de obiectele pe care le reprezintã datele se pot clasifica în:
-
date elementare sau scalare care se prezinta sub forma de entitati indivizibile
-
colectii de date, care se prezinta sub forma unor multimi de date elementare intre care se definesc şi se descriu anumite relaţii.
Componentele unei structuri se pot identifica şi selecta prin numele de identificare sau prin pozitia pe care o ocupã în cadrul structurii, potrivit relatiei de ordine stabilita.
Dupa tipul componentelor, structurile de date se pot grupa în:
-
structuri de date omogene, care contin elemente de acelasi tip;
-
structuri de date eterogene, care contin componente de tipuri diferite.
Dostları ilə paylaş: |