Document, comentariu, eseu, bacalaureat, liceu si facultate
Top documenteAdmitereTesteUtileContact
      
    


 


Ultimele referate adaugate

Adauga referat - poti sa ne ajuti cu un referat?

Politica de confidentialitate



Ultimele referate descarcare de pe site
  CREDITUL IPOTECAR PENTRU INVESTITII IMOBILIARE (economie)
  Comertul cu amanuntul (economie)
  IDENTIFICAREA CRIMINALISTICA (drept)
  Mecanismul motor, Biela, organe mobile proiect (diverse)
  O scrisoare pierduta (romana)
  O scrisoare pierduta (romana)
  Ion DRUTA (romana)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  Starea civila (geografie)
 

Ultimele referate cautate in site
   domnisoara hus
   legume
    istoria unui galban
   metanol
   recapitulare
   profitul
   caract
   comentariu liric
   radiolocatia
   praslea cel voinic si merele da aur
 
despre:
 
Procesare de date
Colt dreapta
Vizite: ? Nota: ? Ce reprezinta? Intrebari si raspunsuri
 

Exemplu: Tabel cu rezultatele studentilor. t1l15ld
Programul produce un raport cu rezultatele studentilor la examene, combinand date din doua fisiere ce contin informatii despre studenti respectiv notele obtinute de fiecare la examene.
Fisierul de intrare studenti are campurile delimitate prin : si contine pe fiecare linie numarul matricol, numele si anul in care este studentul.
28602:Muresan Robert:2
38601:Pop Ioan:3
48000:Pop Vasile:1
Fisierul de intrare note are campurile delimitate prin spatii si contine pe fiecare linie numarul matricol, examenul, si numarul de credite obtinute.
28602 1 4
38601 1 2
48000 1 1
28602 2 5
38601 2 3
Se observa ca Pop Vasile a lipsit la al 3-lea examen.

Raportul afisat de program arata in felul urmator:

Nr. Mat Nume 1 2 Total
28602 Muresan Robert 4 5 9
38601 Pop Ioan 2 3 5
48000 Pop Vasile 1 1
Total: 7 8
Programul care a generat acest raport este urmatorul:

#! usr/bin/perl
# Catalog de Note - pentru demonstrarea lucrului cu sistemul I/O, liste asociative # sortare si formatarea unui raport
# Programul accepta orice numar de studenti si examene, respectiv trateaza si # cazurile cand anumite informatii lipsesc.
$studfile = 'studenti';
$notfile = 'note';

# Daca fisierele se pot deschide, atunci perl nu mai evalueaza si restul expresiei ce # urmeaza dupa ||

open (NUME,"<studfile") || die "Nu pot deschide fisierul $studfile! \n"; open(NOTE,"<notfile") || die "Nu pot deschide fisierul $notfile! \n";

# Construieste o lista asociativa cu informatiile despre studenti folosind ca si # cheie, numarul matricol





while(<NUME>)A
($nrmat,$nume,$an) = split(':',$_);
$numeA$nrmatS = $nume; if (length($nume) > $maxlengthnume)A
$maxlengthnume = length($nume);
S
S close NUME;

# Construieste un tabel cu notele de la exemene

while(<NOTE>)A
A$nrmat,$nrexam,$notaS = split;
$notaA$nrmat,$nrexamS = $nota; if ($nrexam > $maxnrexam)A$maxnrexam = $nrexam;S
S close NOTE;

# Tipareste raportul cu datele citite

printf "%6s %-$AmaxlengthnumeSs ",'Nr. Mat','Nume'; foreach $nrexam(1..$maxnrexam)A printf "%4d",$nrexam;
S printf "%10s\n\n",'Total:';

# Subrutina dupanume este folosita pentru sortarea sirului %nume
# Functia "sort" transmite variabilele $a si $b subrutinelor pe care le apeleaza
# Functia " x cmp y " returneaza -1 daca x < y , 0 daca x=y si 1 daca x > y.

sub dupanume A$numeA$aS cmp $numeA$bSS

# Ordoneaza numerele matricole astfel incat numele studentilor sa apara in # ordine alfabetica foreach $nrmat(sort dupanume keys(%nume))A
# Tipareste creditele obtinute si totalul pentru fiecare student printf "%6d %-$AmaxlengthnumeSs ", $nrmat,$numeA$nrmatS;
$total = 0; foreach $nrexam(1..$maxnrexam)A printf "%4s",$notaA$nrmat,$nrexamS;
$total += $nota($nrmat,$nrexam);
$examtot($nrexam) += $nota($nrmat,$nrexam);
S printf "%10d\n",$total;
S

printf "\n%6s %$AmaxlengthnumeSs ",' ',"Total: "; foreach $nrexam(1..$maxnrexam)A printf "%4d",$examtotA$nrexamS;
S printf "\n"; exit(0).


Colt dreapta
Creeaza cont
Comentarii:

Nu ai gasit ce cautai? Crezi ca ceva ne lipseste? Lasa-ti comentariul si incercam sa te ajutam.
Esti satisfacut de calitarea acestui document, eseu, cometariu? Apreciem aprecierile voastre.

Nume (obligatoriu):

Email (obligatoriu, nu va fi publicat):

Site URL (optional):


Comentariile tale: (NO HTML)


Noteaza documentul:
In prezent fisierul este notat cu: ? (media unui numar de ? de note primite).

2345678910

 
Copyright© 2005 - 2024 | Trimite document | Harta site | Adauga in favorite
Colt dreapta