Lista temelor de proiecte de an, cerinele i obiectivele lucrarilor de curs la disciplina
Structuri de Date si Algoritmi"2012
Obiective: Formarea deprinderilor corecte si perfecionarea stilului de algoritmizare i programare cu diverse modele de SD in TC. Aplicarea sistematici a unor tehnici de programare i prezentarea structurilor de date n diverse moduri: fiiere de date, vectori, pointeri la tablouri, pointeri la structuri i funcii cu indirectare multipli; definirea i implementarea unor tipuri abstracte de date; diverse tipuri de liste (bidirecionale, nlnuite stive, coci, etc.) i arbori; tabele de dispersie; grafuri si reele. Prezentarea i exemplificarea tehnicilor de programare cu diverse clase de algoritmi: Algoritmi de cutare cu revenire Backtracking): algoritmi "Greedy": algoritmi recursivi .a. Reprezentarea i descrierea noiunilor deshhpre complexitatea algoritmilor i eficiena lor cu aplicarea programarii structurate, modulare, etc. P. I. Cerinele obligatorii generale: - Temele se studiazi individual de student pe parcursul elaboririi i se consulta cu profesoral; In lucrare (n partea teoretici i practici) se analizeaz scenariile i eficiena algoritmilor posibili; Toate lucrrile studenilor trebuie sa reflecte obiectivele cu inteniile respective pentru implementarea algoritmilor cu diverse modele de SD i tehnici de programare; Toate datele de intrare/ieire sa se salveze n fiiere i rezultatele executrii cu diferite combinaii de SD i algoritmi si fie expuse n forma grafic i n fiiere; - Testarea programului sa se efectueze n baza setului de date i algoritmii selectai; Totul trebuie sa corespunda stasului i obiectivelor pentru ndeplinirea lucrrilor de curs la SDA. Toate programele trebuie sa conin meniu (textual/grafic) cu ajutor (help) i diverse informaii utile i modul de utilizare: MENIU Aplicaiei: 1. H - Help (informaii utile despre program i biblioteci, utilizate) 2. E - Editare (moduri i tehnici de modificare (inserri, tergeri etc.)) 3. C - Salvare (programului i rezultatelor obinute n fiiere: input, test i output) 4. I - ncrcarea fiierelor cu SD i parcuigerea lor. 5. A - Afiare (textual i grafic cu informaii utile despre moduri i tehnici de obinere) 6. O - Operaii SUBMENIU (plus informaii utile despre tipurile SD i algoritmii utilizai) 7. S - Sortri SUBMENIU (informaiile despre metodele i algoritmii, utilizate) 8. Q - Ieire Coninutul raportului lucrrii. Darea de seama (tiprit i n forma electronic pe CD) trebuie s includ: Foaia de titlu (Modelul special de la profesor). # Sarcina lucrrii. Cuprins Introducere. 1. Raportul prii teoretice trebuie s conin numai aspectele eseniale ale temei: 1.1 Analiza succint a domeniului, problemei i obiectivelor cu argumente i desene explicative, 1.2 Descrierea principiilor, metodelor i tehnicilor de elaborare ale SD i algoritmilor, utilizate n program. 1.3 Descrierea scenariului elaborrii programului: algoritmii i SD ale limbajului C, implementate, concret, n program. 2. Descrierea structurii aplicaiei i schemele-bloc al algoritmilor la principalele funcii. 3. Analiza, testarea i verificarea rezultatelor cu fiiere i corespunderea obiectivelor propuse. Concluzii. Lista literaturii utilizate. Anexa I. Listingul programului, dotat cu comentarii. | Anexa 2. Rezultatele rulrii programului cu exemple de testare i verificare n mod text i grafic. Finalizarea fiecrei lucrri pentru susinere va consta din raport cu: prezentarea programului surs n map aparte (pe suport magnetic/CD); fiier- teste cu date de intrare (pe suport magnetic /CD); | execuia demonstrativ a programului cu rezultatele principale nserate in fiierul .doc al lucrrii; - documentaia lucrrii conform cerinelor obligatorii generale (P.l), coninnd i: testele efectuate, analiza algoritmilor implementrii statice i dinamice. In raport s fie expuse toate activitile i dificultile ntlnite pe parcursul efecturii lucrarii de curs.
Cebanu Ghennadie Varianta _________
Elaborarea aplicaiei "Ikebana". O florrie vrea s ajung n Guinness book cu cel mai mare aranjament floral. Ei au la dispoziie t tipuri de flori, dintre care patru tipuri sunt mai speciale: gerbera, orhideea, azaleea i hortensia. Lucrtorii au hotrt s pun florile distanate uniform pe mai multe rnduri, pe fiecare rnd exact n flori. Nu vor exista dou rnduri identice, dar toate rndurile vor respecta anumite cerine: - Ei au observat c hortensiile au o via mult mai ndelungat, dac se nvecineaz pe acela i rnd cu o azalee i cu o orhidee, indiferent dac ordinea este azalee-hortensie-orhidee sau orhidee-hortensie-azalee. - Gerberele vor fi amplasate n aa fel nct ntre oricare dou gerbere s existe cel puin p flori, tipul lor fiind oricare dar nu gerbera. De exemplu dac avem la dispoziie t=5 tipuri de flori: azalee (notate cu a), hortensii (notate cu h), orhidee (notate cu o), gerbere (notate cu g), i begonii (notate cu b), ntre dou gerbere se vor amplasa minim p=3 flori, iar rndul va fi format din n=6 flori, atunci urmtoarele aranjamente florale sunt corecte: "aoaaoo", "ahohag", "gbbbgo", "gbbbog", "bbbbbb". Urmtoare aranjamente nu sunt ns corecte: "ohoaha" (hortensiile nu sunt ntre o orhidee i o azalee), "gogbao" (cele dou gerbere nu sunt desprite de minim trei flori), "ahohah" (ultima hortensie nu se nvecineaz cu o orhidee). Pentru n=6, p=3, t=5, numrul diferitelor aranjamente florale este 2906. Cunoscnd valorile lui n, p i t, s se determine numrul liniilor distincte ce se pot obine cu cerinele de mai sus. Salvai n fiiere i afiai toate rezultatele.