14/213 Programul urmator creeaza un fisier cu tip facturi.dat cu urmatoarele articole:
-nrfact:numarul facturii;
-furnizor:numele furnizorului;
-cumparator:numele cumparatorului;
Valp:valoarea produselor livrate(fata TVA);
-ind:indicator de stare cu valorile A sau N dupa cum factura a fost sau nu achitata.
Program problema_facturi;
Uses CRT;
Type articol=record
nrfact:integer;
furnizor:string[30];
cumparator:string[30];
valp:real;
ind:string[1];
end;
Type fisier=file of articol;
Const t=19;
Var factura:articol;
numef:string[20];
fis:fisier;
valp,valf,valt:real;
sf:char;
nrc,tip_op:integer;
Procedure creare;
Begin
Rewrite(fis);
Write('Mai sunt facturi?(Y/N)');
Readln(sf);
While not (upcase(sf)='N') do
Begin
With factura do
Begin
Write('Numarul facturii:':35);Readln(nrfact);
Write('Numele furnizorului:':35);Readln(furnizor);
Write('Numele cumparatorului:':35);Readln(cumparator);
Write('Valoarea produselor furnizate:':35);Readln(valp);
Write('Factura achitata/neachitata?(A/N)':35);Readln(ind);
end;
Write(fis,factura);
Write('Mai sunt articole?(Y/N)');
Readln(sf);
end;
Close(fis);
end;
Procedure listare;
Begin
reset(fis);
Writeln('Fisierul ',numef,' contine articolele:');
While not eof(fis) do
Begin
Read(fis,factura);
With factura do
Writeln(nrfact:4,furnizor:15,cumparator:15,valp:8:2,ind:3);
end;
close(fis);
end;
Procedure prelucrare;
Begin
Writeln('Situatia ceruta este:');
Reset(fis);
nrc:=0; valf:=0; valt:=0;
While not eof(fis) do
Begin
read(fis,factura); nrc:=nrc+1;
With factura do
Begin
valf:=valp+(valp*t)/100;
Write(nrc:3,nrfact:4,furnizor:15,cumparator:20,' ');
Writeln(valp:8:2,ind:3,' ',valf:7:2);
end;
valt:=valt+valf;
end;
close(fis);
Writeln('Valoarea totala=',valt:12:2);
end;
Begin
CLRSCR;
Writeln('Introduceti numele fisierului: ');Readln(numef);
Assign(fis,'e:bpschoolnumef');
writeln('1-creare':40);
Writeln('2-listare':40);
Writeln('3-prelucrare':40);
Writeln('4-stop':40);
Write('Introduceti tipul operatiei:');readln(tip_op);
While not (tip_op=4) do
Begin
Case tip_op of
1:creare;
2:listare;
3:prelucrare;
end;
Write('Tipul operatiei:');Readln(tip_op);
end;
end.
program algoritmul_ciurul_lui_Eratostene;
const n: byte=255;
var ciur, prime: set of 1 255;
p,i:byte; m,k:word;
begin
ciur:=[2 255];
prime:=[];
p:=2;
repeat
while not (p in ciur) do p:=p+1;
prime:=prime+[p];
m:=p;
while m<=n do
begin
ciur:=ciur-[m];
Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.