Creeaza.com - informatii profesionale despre


Cunostinta va deschide lumea intelepciunii - Referate profesionale unice



Acasa » referate » informatica
Proiect Atestat informatica - Limbajul Pascal

Proiect Atestat informatica - Limbajul Pascal



Liceul Jean Bart Sulina

Proiect: Situatie olimpici

Atestat informatica

CUPRINS



  1. Limbajul Pascal
  2. Situatie olimpici
  3. Explicatia programului
  4. Codul programului
  5. Bibliografie

2. Situatie olimpici

Ne propunem sa scriem un program ce va tine evidenta notelor luate de olimpici. Programul va contine campurile „Nume si prenume”, „Materie”, „Medie” si „Admis”. La campul „Admis” vor fi admisi primii „n” elevi de la fiecare materie, „n” fiind dat de utilizator. In acest camp se va completa automat cu „admis” sau „respins”. Se va tine cont de conditia ca la o nota sub 8, elevul nu se considera admis.

3. Exlicatia programului

Programul a fost scris in limbajul de programare Pascal si a fost compilat de Free Pascal compiler. Acesta contine sase optiuni pentru gestionarea bazei de date si inca o optiune pentru iesirea din program.

Prima optiune ce raspunde la apasarea tastei 1, se ocupa cu adaugarea datelor intr-un fisier. Va fi cerut numele fisierului si in caz ca se constata neexistenta sa, veti avea la alegere intre crearea fisierului si reintroducerea numelui fisierului. Va urma apoi introducerea datelor in fisier.

Dupa efectuarea fiecarei operatii veti fi intrebat daca doriti una noua. Daca doriti atunci apasati tasta ENTER sau oricare caracter. In caz contrar, introduceti combinatia „nu”.

A doua optiune afiseaza datele din memoria interna. Inainte de a alege aceasta optiune efectuati o operatie de adaugare in fisier sau de extragere din fisier.

Optiunea 3 extrage datele dintr-un fisier cu numele dat de utilizator.

A patra optiune afla primii n elevi de la fiecare materie.

A cincea optiune salveaza datele prelucrate anterior de program in fisierul de unde provin.

Optiunea 6 aranjeaza in ordine alfabetica numele elevilor.

Optiunea 0 opreste executia programului. Apasati apoi tasta ENTER pentru a iesi din program.

Codul programului

program situatie_olimpici;

type OLIMPICI=record

nume:string;

materie:string;

medie:real;

admis:string;

end;

vector=array[1..100] of OLIMPICI;

var v:vector;

i,n,optiune:integer; alege,nume_fisier:string;

b_alege:boolean;

procedure adaugare_text;

var f:text; nr,loc:integer; str:string; nr2:real;

begin

writeln;

if length(nume_fisier)=0 then

begin

write('Dati numele fisierului: ');

readln(nume_fisier);

end

else

begin

write('Doriti sa adaugati in alt fisier?('da' daca doriti) ');

readln(alege);

if alege='da' then

begin

write('Dati numele fisierului: ');

readln(nume_fisier);

end;

end;

assign(f,nume_fisier);

reset(f);

repeat

if ioresult<>0 then

begin

writeln('Fisierul ',nume_fisier,' nu exista!');

writeln('1: Creare fisier');

writeln('2: Reintroducere nume fisier');

writeln('Dati optiunea: ');

readln(optiune);

case optiune of

1: begin

rewrite(f);

reset(f);

end;

2: begin

write('Dati numele fisierului: ');

readln(nume_fisier);

assign(f,nume_fisier);

reset(f)

end

else

writeln('Optiune incorecta!');

end;

end;

until ioresult=0;

write('Dati numarul de elevi ce doriti sa adaugati: ');

readln(nr);

append(f);

for i:=1 to nr do

with v[i] do

begin

writeln;

write('nume si prenume: '); readln(nume);

writeln(f,nume);

write('materia: '); readln(materie);

writeln(f,materie);

write('medie: '); readln(medie);

writeln(f,medie:2:2);

admis:='necunoscut';

writeln(f,admis);

end;

reset(f);



i:=0;

while not eof(f) do

begin

inc(i);

with v[i] do

begin

readln(f,nume);

readln(f,materie);

readln(f,str); val(str,nr2,loc); medie:=nr2;

readln(f,admis);

end;

end;

n:=i;

close(f);

writeln;

writeln('Datele au fost adaugate in fisierul ',nume_fisier);

end;

procedure afisare;

begin

writeln;

writeln(' Nr | Nume si prenume | Materie | Medie | Admis ');

writeln('-------- ----- ------ -------- ----- ------ --');

for i:=1 to n do

with v[i] do

writeln(i:3,' |',nume:20,' |',materie:16,' |',medie:8:2,' |',admis:13);

end;

procedure extragere_text;

var f:text; loc:integer; str:string; nr:real;

begin

if length(nume_fisier)=0 then

begin

write('Dati numele fisierului: ');

readln(nume_fisier);

end

else

begin

write('Doriti sa extrageti din alt fisier?('da' daca doriti) ');

readln(alege);

if alege='da' then

begin

write('Dati numele fisierului: ');

readln(nume_fisier);

end;

end;

assign(f,nume_fisier);

reset(f);

repeat

if ioresult<>0 then

begin

write('Fisierul nu exista; reintroduceti: ');

readln(nume_fisier);

assign(f,nume_fisier);

reset(f);

end;

until ioresult=0;

i:=0;

while not eof(f) do

begin

inc(i);

with v[i] do

begin

readln(f,nume);

readln(f,materie);

readln(f,str); val(str,nr,loc); medie:=nr;

readln(f,admis);

end;

end;

n:=i;

close(f);

afisare;

writeln;

writeln('Datele au extrase din fisierul ',nume_fisier);

end;

procedure suprascriere;

var f:text;

begin

writeln;

if length(nume_fisier)=0 then

begin

write('Nu este memorat numele fisierului; reintroduceti numele: ');

readln(nume_fisier);

assign(f,nume_fisier);

rewrite(f);

end;

assign(f,nume_fisier);

rewrite(f);

for i:=1 to n do

with v[i] do

begin

writeln(f,nume);

writeln(f,materie);

writeln(f,medie:2:2);

writeln(f,admis);

end;

close(f);

writeln;

writeln('Datele au fost suprascrise!');

end;

procedure ordonare;

var aux:OLIMPICI; j:integer;

begin

writeln;

for i:=1 to n do

for j:=1 to n-1 do

if v[j].nume > v[j+1].nume then

begin

aux:=v[j];

v[j]:=v[j+1];

v[j+1]:=aux;

end;

afisare;

end;



procedure aflare_olimpici;

var nr,j,k,m:integer; aux:OLIMPICI;

b:array[1..100] of integer;

begin

writeln;

write('Dati nr maxim de elevi admisi: ');

readln(nr);

for i:=1 to n do

for j:=1 to n-1 do

if v[j].materie > v[j+1].materie then

begin

aux:= v[j];

v[j]:=v[j+1];

v[j+1]:=aux;

end;

i:=1; j:=1; b[j]:=0;

while i<=n do

begin

if v[i].materie=v[i+1].materie then

inc(i)

else

begin

inc(j);

b[j]:=i;

inc(i);

end;

end;

m:=j;

for j:=1 to m-1 do

begin

for i:=b[j]+1 to b[j+1] do

for k:=b[j]+1 to b[j+1]-1 do

if v[k].medie < v[k+1].medie then

begin

aux:= v[k];

v[k]:=v[k+1];

v[k+1]:=aux;

end;

if nr < (b[j+1]-b[j]) then

begin

for i:=(b[j]+1) to b[j]+nr do

with v[i] do

begin

if medie >8 then

admis:='admis'

else

admis:='respins';

end;

for i:=b[j]+nr+1 to b[j+1] do

v[i].admis:='respins';

end

else

begin

for i:=b[j] to b[j+1] do

if v[i].medie >= 8 then

v[i].admis:='admis'

else

v[i].admis:='respins';

end;

for i:=b[j]+1 to b[j+1] do

for k:=b[j]+1 to b[j+1]-1 do

if v[k].nume > v[k+1].nume then

begin

aux:=v[k];

v[k]:=v[k+1];

v[k+1]:=aux;

end;

end;

afisare;

end;

begin

writeln('SITUATIE OLIMPICI':45);

repeat

b_alege:=false;

writeln;

writeln('1: Adaugare date intr-un fisier sau creare fisier si introducere date');

writeln('2: Afisare date');

writeln('3: Extragere date dintr-un fisier');

writeln('4: Evidentierea primilor 'n' olimpici admisi la etapa urmatoare');

writeln('5: Salvarea datelor din memoria programului peste datele din fisierul deschis');

writeln('6: Aranjare in ordine alfabetica');

writeln('0: Iesire din program');

writeln;

write('Dati optiunea: ');

readln(optiune);

case optiune of

1: adaugare_text;

2: afisare;

3: extragere_text;

4: aflare_olimpici;

5: suprascriere;

6: ordonare;

0: break

else

writeln('Optiune incorecta!');

end;

writeln;

write('Doriti sa efectuati o alta operatie?('nu' daca nu doriti) ');

readln(alege);

if alege='nu' then

b_alege:=true;

until b_alege;

writeln;

writeln('Ati ales sa iesiti din SITUATIE OLIMPICI');

readln;

end.

Bibliografie

  • I. Tomescu, Bazele informaticii, manual pentru licee/clase de informatica, clasa a X-a, editura Didactica si Pedagogica, Bucuresti, 1996
  • S. Tudor, Tehnici de programare, manual clasa a X-a, editura L&S Infomat, 1996




loading...




Politica de confidentialitate

.com Copyright © 2020 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.


Proiecte

vezi toate proiectele
 PROIECT DE LECTIE CLASA: a X a EDUCATIE MUZICALA - OPERA IN GERMANIA SI RUSIA
 PROIECT DIDACTIC 3-5 ani Limba si comunicare - Strugurele, de Maria Gaitan
 Proiect instalatii electrice - Sa se proiecteze instalatia electrica si de forta a unei microintreprinderi la alegerea studentului
 PROIECT - Ingineria reglarii automate - sistemul de reglare automata a unei actionari cu motor electric

Lucrari de diploma

vezi toate lucrarile de diploma
 LUCRARE DE DIPLOMA - Rolul asistentului medical in ingrijirea pacientului cu A.V.C.
 Relatiile diplomatice dintre Romania si Austro- Ungaria din a doua jumatate a secolului al XIX-lea
 Lucrare de diploma managementul firmei “diagnosticul si evaluarea firmei”
 Lucrare de diploma tehnologia confectiilor din piele si inlocuitor - proiectarea constructiv tehnologica a unui produs de incaltaminte tip cizma scurt

Lucrari licenta

vezi toate lucrarile de licenta
 Lucrare de licenta contabilitate si informatica de gestiune - politici si tratamente contabile privind leasingul (ias 17). prevalenta economicului asupra juridicului
 Lucrare de licenta educatie fizica si sport - studiu asupra imbunataȚirii motricitaȚii in lectia de educatie fizica la clasele a v-a de la &
 Lucrare de licenta ecologie si protectia mediului - aspecte ecologice privind fauna de orthoptere si mantide din parcul national muntii macinului
 LUCRARE DE LICENTA - Asigurarea calitatii la firma Trans

Lucrari doctorat

vezi toate lucrarile de doctorat
 Diagnosticul ecografic in unele afectiuni gastroduodenale si hepatobiliare la animalele de companie - TEZA DE DOCTORAT
 Doctorat - Modele dinamice de simulare ale accidentelor rutiere produse intre autovehicul si pieton
 LUCRARE DE DOCTORAT ZOOTEHNIE - AMELIORARE - Estimarea valorii economice a caracterelor din obiectivul ameliorarii intr-o linie materna de porcine

Proiecte de atestat

vezi toate proiectele de atestat
 PROIECT ATESTAT INFORMATICA - GESTIONAREA STOCULUI UNEI FARMACII
 LUCRARE DE ATESTAT ELECTRONIST - TEHNICA DE CALCUL - Placa de baza
 Evidenta a clientilor dar si a serviciilor in Visual Fox pro 9 - Lucrare de atestat
 Lucrare atestat Tehnician in turism - CALITATEA SERVICIILOR TURISTICE




Examen pentru certificarea calificarii profesionale informatica - DISPOZITIVE MEDIA
Functiile unui sistem informational
SISTEME INFORMATIONALE SI SISTEME INFORMATICE IN GESTIUNEA ORGANIZATIILOR
Concepte de baza ale Tehnologiei Informatiei (IT)
SOFT IMOBILIAR
Realizarea unui magazin virtual
MICROSOFT EXCEL
SISTEME INFORMATICE PENTRU ASISTAREA DECIZIEI




Termeni si conditii
Contact
Creeaza si tu