| Referate | Director web | Adauga link | Contact |

Titlu referat: 68 de pagini de probleme rezolvate si teorie in Pascal

Nivel referat: liceu

Descriere referat:
       CUPRINS
PREFAŢĂ  
     9
Capitolul 1.
PROBLEME SIMPLE
1.1. Ghid de lucru
       11
1.2. Numere pitagorice        14
1.3. Probleme propuse        15
Capitolul 2.
PROBLEME CU ŞIRURI DE NUMERE
2.1. Numere distincte        21
2.2. Şir derivat din numerele naturale
       23
2.3. Probleme propuse        25
Capitolul 3.
PROBLEME REZOLVATE FOLOSIND
VECTORI
3.1. Numărul punctelor din cerc
       35
3.2. Interclasare
       36
3.3. Probleme propuse        38
Capitolul 4.
PROBLEME CU MATRICE
4.1. Construirea unei matrice        41
4.2. Generarea unei matrice dintr-un şir      
 42
4.3. Probleme propuse        43
Capitolul 5.
SUBALGORITMI
5.1. Reuniunea unor mulţimi        51
5.2. Numere prime
       54
5.3. Probleme propuse        55
Capitolul 6.
PROBLEME REZOLVATE CU MATRICE
6.1. Relaţii între persoane        63
6.2. Pătrate magice        64
6.3. Probleme propuse        66
 
     PREFAŢĂ
       Culegerea de probleme de faţă se doreşte a fi un ghid şio
colecţie de probleme pentru învăţarea programării. Diversitatea
problemelor propuse şi gradul diferit de dificultate fac culegerea utilă nu
numai studenţilor, ci şi elevilor de liceu. Iniţial ea a fost concepută ca
ghid pentru lucrările de laborator ale studenţilor anilor întâi şi doi de
la secţia de Informatică a Facultăţii de Matematică şi
Informatică.
       Problemele sunt grupate în 16 capitole, în funcţie de
specificul şi gradul lor de complexitate. Succesiunea capitolelor din culegere
vizează o abordare graduală a problematicii, atât din punctul de vedere al
complexităţii algoritmilor, specificaţi în limbaj Pseudocod, cât şi al
învăţării unui limbaj de programare, în particular limbajul Pascal.
Fiecare capitol conţine cel puţin două exemple de probleme rezolvate, pentru
care sunt precizaţi atât algoritmii de rezolvare, cât şi programele sursă
Pascal. Intenţia autorilor este de a sugera un anumit stil de rezolvare a
problemelor cu calculatorul, acordându-se o importanţă deosebită etapelor
de analiză a problemei şi de proiectare a algoritmilor, etape în care
limbajul de programare nu este implicat. Din acest punct de vedere, problemele
propuse sunt generale, implementarea soluţiilor putând fi făcută şi în
alte limbaje de programare.
       Problemele de acelaşi tip sunt grupate în acelaşi capitol, iar
un capitol acoperă toată gama de probleme pentru tema abordată. Astfel,
capitolul I conţine probleme elementare, a căror rezolvare nu cere folosirea
vectorilor sau a matricelor. Capitolul doi conţine probleme referitoare la
vectori, în timp ce capitolul trei conţine probleme a căror rezolvare cere
folosirea vectorilor. Capitolul patru conţine probleme cu matrice. Capitolul
cinci cere folosirea subalgoritmilor. Capitolul şase conţine probleme a
căror rezolvare cere folosirea matricelor. Urmează un capitol de exemple şi
probleme pentru programarea în limbaj maşină. Capitolul opt conţine
probleme referitoare la tipurile mulţime şi enumerare din Pascal. Capitolul
nouă conţine probleme referitoare la şiruri de caractere. Capitolul zece se
referă la recursivitate. Urmează un capitol de probleme privind folosirea
fişierelor. Capitolul 12 conţine probleme care cer folosirea tipului
referinţă în Pascal. Următorul capitol conţine probleme de grafică cu
calculatorul. Capitolul 14 conţine mai multe probleme date la diferite
concursuri de programare. Tipurile abstracte de date sunt obiectul capitolului
15. În sfârşit, ultimul capitol conţine probleme
despre grafe.
       Deşi la selectarea problemelor au contribuit toţi autorii,
fiecare capitol a fost elaborat de unul sau doi autori, după cum
urmează:
   Cap.1  - Prof. S.Groze şi
Prof. M.Frenţiu;
   Cap.2  - Prof.
M.Frenţiu;
   Cap.3  - Lect.
Robu J. şi Prof. M.Frenţiu;
   Cap.4  - Asist. S.
Motogna;
   Cap.5  - Asist.
E.Iacob;
   Cap.6  - Conf. Kasa Z. şi
Asist. S.Motogna;
   Cap.7  - Conf.
F.Boian;
   Cap.8  - Lect.
V.Ciobanu;
   Cap.9  - Asist.
S.Iurian;
   Cap.10 - Asist.
S.Iurian;
   Cap.11 - Asist.
H.Pop;
   Cap.12 - Lect.
V.Prejmereanu;
   Cap.13 - Lect.
V.Prejmereanu;
   Cap.14 - Asist.
S.Motogna;
   Cap.15 - Conf. B.Prv şi Prof.
M.Frenţiu;
   Cap.16 - Conf.
T.Toadere.
Eventualele erori nu se pot imputa numai
celor de mai sus, toţi autorii participând la corectarea finală a acestei
culegeri.
       Sperăm ca prezentul material să-şi atingă scopul propus, cel
de dezvoltare la cititori a gustului de programare într-un limbaj evoluat, în
particular în limbajul Pascal.
       Conştienţi că există posibilităţi de îmbunătăţire a
conţinutului prezentei lucrări, autorii mulţumesc anticipat pe această cale
tuturor celor care vor face observaţii şi propuneri de îmbunătăţire, de
care se va ţine seama la o nouă editare a culegerii de probleme.
       CAPITOLUL 1
       PROBLEME SIMPLE
       1.1. GHID DE LUCRU
       Rezolvarea unei probleme cu ajutorul calculatorului presupune
parcurgerea următoarelor faze:
  ‑ precizarea completă a problemei
de rezolvat;
  ‑ proiectarea algoritmului de
rezolvare a problemei;
  ‑ programarea propriu‑zisă
(implementarea);
  ‑ testarea programului
obţinut;
  ‑ exploatarea şi întreţinerea
programului.
Aceste faze constituie ciclul de viaţă al
programului.
       De foarte multe ori, atunci când beneficiarul discută cu
executantul despre problema care trebuie rezolvată, acesta dă un enunţ vag,
incomplet, dacă nu chiar inexact sau contradictoriu, pentru problema de
rezolvat. Urmează mai multe discuţii, uneori întinse în timp, în urma
cărora se ajunge la un enunţ relativ complet şi exact al problemei.
Întrucât problemele propuse sunt luate din domeniul matematicii sarcina
noastră va fi mult mai uşoară.
       După enunţarea problemei urmează modelarea matematică şi
căutarea unei metode de rezolvare a ei. Uneori sunt posibile mai multe moduri
de rezolvare, caz în care se va alege metoda considerată cea mai potrivită
scopului urmărit. Modelarea matematică şi alegerea unei metode de rezolvare
se îmbină aproape întotdeauna cu conceperea algoritmului, fiind greu să se
separe una de cealaltă. Activităţile de mai sus constituie ceea ce numim proiectarea programului.
       Pe toată durata proiectării trebuie menţionate în scris toate
deciziile luate, întrucât este posibil ca ulterior să fie necesară o
reproiectare şi deci, să se revină asupra acestor decizii. Documentaţia
realizată este necesară în primul rând pentru următoarea fază a ciclului
de viaţă al programului, implementarea. De asemenea, în faza de
întreţinere a programului este posibilă modificarea unor module, modificare
în care sunt necesare să fie cunoscute şi aceste decizii. E bine ca
proiectarea să fie astfel făcută încât să permită o întreţinere cât
mai uşoară.  Faza următoare, implementarea sau codificarea, constă în
traducerea algoritmului într‑un limbaj de programare. Evident, prima decizie ce trebuie luată
constă în alegerea limbajului de programare în care va fi scris programul.
În cele ce urmează vom folosi în acest scop limbajul Pascal. De multe ori se
vor folosi mai multe limbaje pentru această activitate. De exemplu, pot exista
unele module a căror scriere se poate face numai în limbajul de asamblare.
Urmează testarea programului elaborat, care uneori pune în evidenţă erori
grave de programare, erori care au dus în unele situaţii la refacerea
(parţială sau integrală) a activităţilor anterioare. Sigur că este de
dorit să nu se ajungă la astfel de situaţii şi, dacă proiectarea şi
implementarea au fost făcute corect, în faza de testare nu ar trebui să
întâlnim erori.
       Următoarea fază din viaţa programului constă în exploatarea
propriu-zisă a acestuia, fază în care execuţia se face cu date reale.
Această activitate se întinde în timp pe mai mulţi ani şi cere adeseori
schimbări în program, motiv pentru care este cunoscută sub numele de
întreţinerea programului. Este faza cea mai costisitoare şi cea mai
importantă din viaţa unui produsul real. Toată activitatea de realizare a
programului trebuie să ţină seama de acest fapt şi programul să fie astfel
conceput încât să se permită modificări în ceea ce face programul cu un
număr minim de modificări în textul acestuia. Documentarea programului
presupune elaborarea unor materiale scrise în care se precizează toate
informaţiile utile despre programul realizat. Pentru proiectarea algoritmilor
vom folosi limbajul Pseudocod. Avantajele folosirii acestui limbaj pentru
proiectarea algoritmilor constau în faptul că permit programatorului să-şi
îndrepte complet atenţia asupra logicii rezolvării problemei şi să uite de
restricţiile impuse de limbajul de programare şi calculatorul folosit. În
această fază este necesară o analiză atentă a problemei în vederea
găsirii unui algoritm corect proiectat.
       De asemenea, proiectarea algoritmului permite evitarea
duplicării unui grup de instrucţiuni în mai multe părţi ale programului.
Identificarea unui astfel de grup permite definirea lui ca un singur
subalgoritm şi folosirea acestui subalgoritm ori de câte ori este
necesar.
       În descrierea unui algoritm deosebim următoarele activităţi
importante:
          - specificarea problemei;
          - descrierea metodei alese...



Curs valutar
Euro4,5511
Dolarul american4,2615
Lira Sterlina5,3015
Gramul de aur170,1555
Leul moldovenesc0,2176
Materii referate

Anatomie (61)

Astronomie (61)

Biologie (546)

Chimie (530)

Contabilitate (87)

Design (4)

Diverse (878)

Drept (356)

Ecologie (59)

Economie (520)

Educatie Fizica (2)

Educatie si Invatanmant (2)

Engleza (463)

Filosofie (99)

Fizica (343)

Franceza (25)

Geografie (838)

Germana (40)

Informatica (354)

Istorie (1169)

Italiana (21)

Latina (26)

Literatura (22)

Logica (6)

Management (133)

Marketing (118)

Matematica (114)

Mecanica (13)

Medicina si Farmacie (229)

Muzica (35)

Psihologie (337)

Religie (248)

Romana (2303)

Spaniola (31)

Statistica (17)

Stiinte politice (27)

Turism (64)

Nota explicativa

Informatiile oferite de acuz.net au scop educativ si orientativ pentru cercetare academica. Va recomandam utilizarea acestora doar ca sursa de inspiratie sau ca resurse educationale.