laborator 09 - probleme complexe - babeș-bolyai...

2
Laborator 09 Probleme complexe Laura Dioşan, Dragoș Dobrean 1 Algoritmi și programare, 2018-2019 cRezolvarea problemelor cu ajutorul limbajului Python Obiective Dezvoltarea subalgoritmilor folosind limbajul Python. Învățarea separării codului pe module care comunică prin intermediul apelării unor funcții. Învățarea lucrului cu tipurile de date definite de utilizator. Învățarea modului de specificare și testare a codului. Folosirea unui IDE mai complex pentru dezvoltarea aplicațiilor în Python (ex. Eclipse) Aspecte teoretice Rezolvarea unor probleme mai complexe cu ajutorul limbajului Python. Dezvoltarea, specificarea și testarea subalgoritmilor. Termen de predare 1. laboratorul 10 Cerinţe Rezolvați problema următoare. Folosiți un proces de dezvoltare a aplicațiilor bazat pe funcționalități. Fiecare soluție trebuie să asigure o interfață de tip consolă care să permită utilizatorului introducerea datelor de intrare și vizualizarea datelor de ieșire. Se vor dezvolta subalgoritmi (însoțiți de specificare: descriere, input, output) pentru citirea datelor, procesarea datelor, afișarea rezultatelor. Fiecare subalgoritm de procesare trebuie să fie testat cu ajutorul aserțiunilor. Se vor evalua: a. implementarea i. (3p) îmbogățirea bazei de cunoștiințe și salvarea în fișier - temă ii. (4p) interacțiunea calculator - user și logica acesteia - temă 1. (2p) un algoritm dezvoltat în versiunea precedentă trebuie implementat recursiv 2. (2p) restul algoritmilor b. (1p) folosirea programării procedurale & modulare c. (1p) fiecare subalgoritm trebuie să fie documentat și testat (minim 5 aserțiuni) d. (1p) existența unei interfețe (minimale) tip consolă care să permită dialogul cu utilizatorul aplicației.

Upload: others

Post on 25-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Laborator 09 - probleme complexe - Babeș-Bolyai Universitylauras/test/docs/school/FP/2018-2019/... · 2018. 11. 19. · Laborator 09 Probleme complexe Laura Dioşan, Dragoș Dobrean

Laborator 09 Probleme complexe

Laura Dioşan, Dragoș Dobrean 1 Algoritmi și programare, 2018-2019

cRezolvarea problemelor cu ajutorul limbajului Python

Obiective

Dezvoltarea subalgoritmilor folosind limbajul Python. Învățarea separării codului pe module care comunică prin intermediul apelării unor funcții. Învățarea lucrului cu tipurile de date definite de utilizator. Învățarea modului de specificare și testare a codului. Folosirea unui IDE mai complex pentru dezvoltarea aplicațiilor în Python (ex. Eclipse)

Aspecte teoretice

Rezolvarea unor probleme mai complexe cu ajutorul limbajului Python. Dezvoltarea, specificarea și testarea subalgoritmilor.

Termen de predare

1. laboratorul 10

Cerinţe

Rezolvați problema următoare. Folosiți un proces de dezvoltare a aplicațiilor bazat pe funcționalități. Fiecare soluție trebuie să asigure o interfață de tip consolă care să permită utilizatorului introducerea datelor de intrare și vizualizarea datelor de ieșire. Se vor dezvolta subalgoritmi (însoțiți de specificare: descriere, input, output) pentru citirea datelor, procesarea datelor, afișarea rezultatelor. Fiecare subalgoritm de procesare trebuie să fie testat cu ajutorul aserțiunilor. Se vor evalua:

a. implementarea i. (3p) îmbogățirea bazei de cunoștiințe și salvarea în fișier - temă

ii. (4p) interacțiunea calculator - user și logica acesteia - temă 1. (2p) un algoritm dezvoltat în versiunea precedentă trebuie

implementat recursiv 2. (2p) restul algoritmilor

b. (1p) folosirea programării procedurale & modulare c. (1p) fiecare subalgoritm trebuie să fie documentat și testat (minim 5

aserțiuni) d. (1p) existența unei interfețe (minimale) tip consolă care să permită dialogul

cu utilizatorul aplicației.

Page 2: Laborator 09 - probleme complexe - Babeș-Bolyai Universitylauras/test/docs/school/FP/2018-2019/... · 2018. 11. 19. · Laborator 09 Probleme complexe Laura Dioşan, Dragoș Dobrean

Laborator 09 Probleme complexe

Laura Dioşan, Dragoș Dobrean 2 Algoritmi și programare, 2018-2019

Chatbot Să se modifice aplicatia de la laboratorul precedent astfel încat să permită si utilzatorilor să pună întrebări calculatorului. Calculatorul va încerca să găsească valoarea corectă (în cât mai puțini pași) în funcție de indicațiile utilizatorului. La găsirea unui răspuns corect, aplicația va îmbogăți baza de cunoștințe a Chatbot-ului (concret, va face update la fișierul cu întrebări și răspunsuri).

Interacțiune:

User: Câți metri are cel mai adânc punct din lume? Calc: 12 User: Valoarea corectă este mult mai mare. Încearcă din nou! Calc: 12000 User: Valoarea corectă este puțin mai mică. Încearcă din nou! Calc: 11034 User: Bravo! Ai răspuns corect! .... (User: <- Afiseaza urmatoarea întrebare)