Documente Academic
Documente Profesional
Documente Cultură
PARTEA TEORETICA:
FUNCTII:Conceptul de functie corespunde celui uzua
matematic si extinde pe cel de expresie Pascal.In general
textul Pascal al unei declaratii de functii are forma:
Function f(x1;...; xn) : t;
D1;
Begin
...
f:= e;
...
end; {f}
label
const
type
var
function / procedure
- begin ... f:=e; ... end; : instructiune compusa specificand
prelucrarile de date ce se produc prin executia functiei;
numele f al functiei (fara parametri) apare cel putin o data
in partea stanga a unei instructiuni de atribuire care se
executa f:=e.
PROCEDURI:
Conceptul de procedura extinde pe cel de instructiune.
Formele sintactice ale declaratiei si apelului sant similare
celor pentru functii.Forma generala a textului unei
declaratii de procedura este:
PROGRAMELE OBTINUTE:
PROB.1):
program lucr4a;
uses
crt;
var
a,b,c,d:integer;
med:real;
function
media(a,b,c,d:integer):real;
var
med:real;
begin
med:=(a+b+c+d)/4;
media:=med;
end;
begin
clrscr;
writeln('Introduceti 4 numere intregi a, b, c, d:');
write('a= ');readln(a);
write('b= ');readln(b);
write('c= ');readln(c);
write('d= ');readln(d);
med:=media(a,b,c,d);
writeln('Media aritmetica a numerelor ',a,' ',b,' ',c,' ',d,'
este: ',med:3:3);
readkey
end.
PROB.2):
program lucr4b;
uses
crt;
var
x,y,z1,z2,z3:boolean;
procedure
tabel_de_adevar(x,y:boolean;var z1,z2,z3:boolean);
begin
z1:=not y;
z2:=x and y;
z3:=x or y;
end;
begin
clrscr;
writeln('Primul caz: x ia valoare adevarata:');
x:=true;
y:=not x;
writeln('x= ',x);
writeln('y= ',y);
tabel_de_adevar(x,y,z1,z2,z3);
writeln('not y= ',z1);
writeln('x and y= ',z2);
writeln('x or y= ',z3);
writeln;
writeln('Al doilea caz: x ia valoare falsa:');
x:=false;
y:=not x;
writeln('x= ',x);
writeln('y= ',y);
tabel_de_adevar(x,y,z1,z2,z3);
writeln('not y= ',z1);
writeln('x and y= ',z2);
writeln('x or y= ',z3);
readkey
end.
REZULTATE:
PROB.1):
Introduceti patru numere intregi a, b, c, d:
a=1
b=2
c=3
d=4
Media aritmetica a numerelor 1, 2, 3, 4 este : 2.500
RPOB.2):
Primul caz: x ia valoare adevarata:
x=TRUE
y=FALSE
not y = TRUE
x and y = FALSE
x or y = TRUE
Cuprins:
· Despre HTML
· Noțiuni de bază HTML
· Inserarea imaginilor
Despre HTML
Inserarea imaginilor
Secventa de comparatie din metoda lui Batcher este predeterminata; de fiecare data se
compara aceleasi perechi de chei, indiferent de rezultatele comparatiilor
anterioare.Sortarea rapida, in schimb, foloseste rezultatele fiecarei comparatii pentru a
stabilii care sunt cheile care urmeaza a fi comparate.
Fiecare comparatie din exemplu, a implicat cheia 503; in general, fiecare comparatie va
implica valoarea originala a cheii K1, deoarece ea va fi modificata odata cu fiecare
schimbare de directie.In momentul cand i=j, inregistrarea originala R1, va fi plasata in
pozitia finala, deoarece se poate vedea ca nu vor exista chei mai mari la stanga sa si nici
mai mici la dreapta sa.
Inregistrarile vor fi impartite intr-o asemenea maniera, incat problema initiala este redusa
la doua probleme mai simple:sortarea Ri - Ri-1 si sortarea Ri+1 - RN. Se poate aplica
aceasi tehnica fiecarei dintre aceste doua multimi de inregistrari.Pentru a tine minte
multimile de elemente care sunt impartite, se foloseste o stiva. Alt exemplu, care arata
modul in care sunt sortate inregistrarile prin acesta metoda, este dat in tabelul de mai jos.
Parantezele, indica inregistrarile care mai trebui sortate; inregistrarile impartite in grupe
sunt reprezentate prin doua variabile l si r, care reprezinta limitele inregistrarilor care sunt
curent examinate.
Aceata metoda de sortare, a fost numita sortare prin interschimb de partitii; ea a fost
propusa de C. A. R. Hoare. Hoare, si-a denumit metoda "sortare rapida". Intregul proces
de sortare, necesita doar 48 de comparatii, fiind intrecuta la numarul de comparatii doar
de sortarea prin insertie binara, care are un numar de 47 de comparatii. Si numarul de
interschimbari este destul de mic, ea necesitand doar 17 interschimbari.
Algoritmul:
Inregistrarile R1, ..., RN sunt rearanjate pe loc; dupa terminarea sortarii, cheile lor vor fi
in ordine K1, ..., KN.Pentru memorarea temporara, este necesara o stiva cu cel mult
log2N intrari.Se presupune prezenta cheilor artificiale K0=- si KN+1=+ , astfel incat, K0
Ki KN+1 pentru 1 i N. (egalitatea este permisa).
Subgrupele de inregistrari ale lui M, sau un numar redus de inregistrari, sunt sortate prin
insertie directa, unde M 1 este un parametru care trebuie ales dupa cum se descrie mai
jos. Pe durata unei etape particulare, sunt efectuate una sau doua comparatii suplimentare
(permitand indicatorilor i si j sa se intersecteze).
Inregistrarile cu chei egale, sunt interschimbate, desi nu este strict necesar (Idea este
datorata lui R. C. Singleton, si ajuta la sectionarea grupurilor de inregistrari pe jumatate,
atunci cand sunt un numar egal de elemente).
[Transfer la Ri.] (La acest pas, Ki este o cheie nesemnificativa K, si K Kj.) Daca j i,
stabileste Ri=R si mergi la pasul 7. Altfel, Ri=Rj mareste i cu 1. [Compara Ki:K.] Daca
Ki<K, mareste i cu 1 si repeta acest pas. [Transfer la Rj.] (La acest pas, Kj este o cheie
nesemnificativa K, siK Ki). Daca j i, stabileste Rj=R si i=j. Altfel, Rj=Ri, micsoreaza j cu
1 si mergi la pasul 3. [Pune in stiva.] (Acum, grupa de inregistrari, Rl...Ri...Rr a fost
partitionata astfel incat Kk Ki pentru l k i si Ki Kk pentru i k r.) Daca r-i i-l, plaseaza
(i+1,r) in varful stivei si stabileste r=i-1. In caz contrar, plaseaza (l,i-1) in varful stivei si
stabileste l=i+1. (Fiecare intrare (a,b) in stiva, reprezinta o cerere de sortare a grupului de
inregistrari Ra...Rb la un anumit timp, in viitor). Acum, mergi inapoi la pasul 2.
[Sortare prin insertie directa.] pentru j=l+1 la r-1, efectueaza urmatoarele operatii:
stabileste K=Kj, R=Rj, i=j-1; apoi,stabileste Ri+1=Ri, i=i-1, de zero sau mai multe ori,
pana cand Ki=K; apoi stabileste Ri+1=R. (Acesta, este in esenta algoritmul de sortare
prin insertie directa, aplicat grupului de inregistrari formate din M sau mai putine
elemente.) [Anuleaza stiva.] Daca stiva este vida, sortarea s-a efectuat; in caz contrar,
inlatura intrarea ei din varf (l',r'), stabileste l=l', r=r' si revino la pasul 2.
Virusii informatici -sunt microprograme greu de depistat, ascunse in alte programe, care
asteapta momentul favorabil pentru a provoca defectiuni ale sistemului de calcul
( blocarea acestuia, comenzi sau mesaje neasteptate, alte actiuni distructive ).
Se poate aprecia ca un virus informatic este un microprogram cu actiune distructiva
localizat in principal in memoria interna, unde asteapta un semnal pentru a-si declansa
activitatea.
In forma cea mai generala virusi se impart in:
• Virusi hardware
• Virusi software
Virusi hardware sunt mai rar intalniti, acestia fiind de regula livrati odata cu
echipamentul. Majoritatea sunt virusi software, creati de specialistii in informatica, foarte
abili si buni cunoscatori ai sistemelor de calcul, in special al modului cum lucreaza
software-ul de baza si cel aplicativ.
• Virusi cu mare putere de distrugere, care provoaca incidente pentru intreg sistemul, cum
ar fi: distrugerea tablei de alocare a fisierelor de pe hard disk, modificarea continutului
directorului radacina, alocarea integrala si irecuperabila a informatiei existente.
Primi virusi atacau programele gazda.De exemplu "Brain" care inlocuia numele
volumului dischetei cu al sau, "Vendredi13" care crestea dimensiunea programelor cu
512octeti.
Primele programe antivirus puteau repera usor acesti invadatori. Creatori de virusi au
reactionat insa prin adoptarea unor strategii mai performante si au dezvoltat proceduri
capabile sa infecteze un program, fara ca alterarea sa fie prea ostentativa.
O data introdus pe disc, a doua faza a vieti unui virus este autoprogramarea. Virusi
incearca sa infecteze cat mai multe programe, inainte de a ataca propriu-zis. Pentru a
opera cat mai eficient virusi isi lasa semnatura in fiecare program infectat, pentru a nu-l
contamina inca o data. Pe acest principiu lucreaza si antivirusi, adica pe reperarea unei
intruziuni. Ei analizeaza unitatile de disc pentru a cauta semnaturile cunoscute. Aceasta
tehnica prezinta insa un defect major: virusul trebuie identificat, deci tabela de semnaturi
trebuie sa fie reactualizata.
Uneori virusi atacau dupa o lunga perioada de somnolenta. De exemplu "Golden Gate"
nu devine agresiv decat dupa ce a infectat 500 de programe, "Cyber Techb" nu a actionat
decat pana in 1993.
• Furisati (stealth) - acesti virusi isi mascheaza prezenta prin deturnarea intreruperilor
DOS. Astfel, comanda dir nu permite observarea faptului ca dimensiunea unui fisier
executabil a crescut, deci este infectat. Exemplu: "512", "Atheus", "Brain", "Damage",
"Gremlin", "Holocaust" si "Telecom".
• Infectie multipla - cu cativa ani in urma virusi erau repartizati in doua grupuri bine
separate: cei care infectau programele si cei care operau asupra sectorului de bo...
Atentie : Textul de mai sus este doar un preview al referatului, pentru a vedea daca
continutul acestui referat te poate ajuta. Pentru varianta printabila care poate sa contina
imagini sau tabele apasa butonul de 'download' !!!