Documente Academic
Documente Profesional
Documente Cultură
Functii predefinite
sau definite de
utilizator
Filipoiu Ciprian Vicentiu && Nitescu
Ovidiu
Clasa a X-a B
Cum ne ajuta
descompunerea in
subactivitati?
Sarcinile sunt bine impartite si
fiecare stie exact ce trebuie sa face
Munca in echiapa aduce tot timpul
rezultate mai bune
Depanarea si actualizarea
activitatii se face mai usor
Unele activitati pot fi preluate fara
efort prea mare in alte aplicatii in
care trebuie sa fie rezolvate sarcini
similare
Intreaga
activitate poate
fi impartita in
mai multe
subactivitati.
Pentru piesele de
acelasi tip se va
construi un sigur plan
la care se va apela ori
de cate ori va fi
nevoie.
Cum se imapart
activitatile ?
ROATA- a fost inventata ea trebuie doar folosita
Deci activitatile se
pot imparti in activitati
standard si activitati
definite de utilizator
Piesele unei masini se
pot proiecta dar exista si
piese ce pot fi folosite
gata proiectate gen
roata.
Subprogramul
(subactivitate)
este o poriune decoddintr-un
mareprogramcare efectueaz o
anumitsarcini
este unui
relativ
Elementele
subprogram:
independent de restul codului.
Clasificarea
subprogramelor:
In functie de autor subprogramele se
impart in:
Subprograme standard
Subprograme
(subprograme de sistem)
nestandard
Sunt(subprograme
subprograme utilizator)
create de
Sunt subprograme predefinite de
programator care rezolva diferite
autorii limbajului de programare,
sarcini specifice aplicatiei sale,
ele se gasesc in biblotecile
exemple:
acestuia si rezolva diferite
probleme ca de exemplu:
intr-un program in care verificam
sin(), cos(), etc.:functii
daca trei numere sunt in progresie
aritmetica putem creea un
trigonometrice;
subprogram pentru inversarea a
sgrt(), exp(), etc.:functii
doua numere;
matematice;
In rezolvare C(n,k)=n!/(k!(n-k))
strlen(), strcat(): op.siruri de
putem folosi un subprogram care
caractere;
Clasificarea
subprogramelor:
In functie de modalitate de apel
subprogramele se impart in:
Subprograme apelate ca
instructiuni procedurale
Subprograme apelate ca
operanzi
Apelare:
Apelare:
nume_subprogram(lista
parametrii);
nume_epresie=nume_functie(list
a_parametrii);
optional
Parametrii de comunicare
Legatura intre subprograme si blocul apelant se face prin
intermediul parametrilor
scrisi intre paranteze rotunde:
- In antetul subrpogramului - parametrii formali
- La activarea subprogramului - parametrii actuali
Transmiterea parametrilor
n C++ exista doua posibilitati de transmitere a parametrilor actuali catre o functie:
A) Transmiterea prin valoarese utilizeaza atunci cand suntem in teresati ca
subprogramul sa lucreze cu acea valoare, dar in prelucrare, nu ne intereseaza ca
parametrul efectiv (cel din blocul apelant) sa retina valoarea modificata in
subprogram.
B) Transmiterea prin referinta . Parametrii sunt transmisi prin referinta atunci
cand ne intereseaza ca la revenirea din subprogram, variabila transmisa sa retina
valoarea stabilita in timpul executiei subprogramului.
In cazul transmiterii prin referinta, parametrii efectivi trebuie sa fie referinte la
variabile. Exemplu:
void medie (int a, int b, float &ma, float &mg)
prin valoare
prin referinta
Fir
execuie
Continuare
execuie
Salt la
noua
adresa
ntrerupere
fir execuie
Revenire
Cod
executabil
subprogra
m
Transmiterea parametrilor
Se va afia:
M=1 N=5
M=5 N=1
#include <iostream.h>
double subp(int n)
{
double s=0; int i;
for (i=1;i<=n;i++)
s+=(float)1/i;
return s;
}
main()
{
int n;
cout<<n=;cin>>n;
cout<<subp(n);
}
# include <iostream.h>
# include <math.h>
# include <conio.h>
int prim (int x)
{for (int i=2; i<=sqrt(x); i++)
if (x%i==0)
return 0;
return(1);}
void main (void)
{int N;
cout << "N="; cin >> N;
if (prim(N)) cout << "PRIM";
else cout << "NU E PRIM";
getch();
}
Concluzii
Programarea standard impune dezvoltarea de subprograme cu un
grad de generalitate foarte ridicat. n primul rnd, subprogramele
trebuie s acopere o arie mai ridicat a problemelor.
Programarea
standard
este
programarea
reutilizrii
de
subprograme. Activitatea de programare este reorientat spre a
dezvolta subprograme reutilizabile, iar comunicarea ntre
programatori este esenial. n momentul n care activitatea unui
programator este analizat calculnd raportul dintre secvenele
originale de instruciuni i lungimea programului, toat
problematica efortului de programare, se rezolv de la sine.
Secvenele originale se obin dintr-un program, dup ce se
elimin toate secvenele pentru care exist subprograme de
bibliotec.
La un moment dat, programarea standard s-a constituit n factor
progres, impunnd o component de baz n ingineria software,
partea dedicat reutilizrii de subprograme.
Bibliografie
Irina ATHANASIU, Eugenia KALISZ, Valentin
CRISTEA Iniiere n TURBO PASCAL, Bucureti,
Editura Teora, 1995
Gheorghe BARBU, Ion VDUVA, Mircea
BOLOTEANU Bazele Informaticii, Bucureti,
Editura Tehnic, 1997
http://www.biblioteca-digitala.ase.ro
http://www.labsmn.pub.ro
http://webcache.googleusercontent.com