Sunteți pe pagina 1din 2

LP

L A B O R A T O R 8

Definirea si utilizarea de functii

A. Exemplu de definire si utilizare functie

#include <stdio.h>
/* determina pozitie maxim in vector */
int imax (int x[],int n) {
int i,im=0;
for (i=1;i<n;i++)
if (x[im] < x[i])
im=i;
return im;
}
/* ordonare vector */
void main () {
int b, m, ixm, n=6, a[6]={3,8,4,7,1,5};
for (m=n-1;m>0;m--) {
ixm=imax(a,m+1);
b=a[m]; a[m]=a[ixm]; a[ixm]=b;
}
for (m=0;m<n;m++)
printf ("%4d",a[m]);
}

B. Teme pentru laborator

1. Functie pentru ridicarea unui numar real x la o putere intreaga n,


prin
inmultiri repetate. Program care sa verifice functia prin comparatie cu
rezultatul functiei "pow(x,n)", declarata in <math.h>.

2. Functie pentru determinarea cmmdc a 2 numere intregi. Program


pentru
simplificarea unor fractii: se citesc numaratorul si numitorul, se afla
cmmdc si se impart ambele numere prin cmmdc, se afiseaza fractia
simplificata.

3. Functie pentru calculul lui sin(x) prin dezvoltare in serie de


puteri
cu un numar dat de termeni. Program pentru afisarea rezultatului acestei
functii alaturi de rezultatul functiei "sin(x)" (math.h), pentru
diferite
valori ale numarului de termeni din serie (10,20,30,...200).

4. Functie care determina daca un numar dat este sau nu este prim.
Program pentru afisarea tuturor numerelor prime mai mici ca un N dat
(N>5).

5. Functie pentru determinarea unei radacini reale a unei ecuatii


date
prin metoda injumutatirii intervalului, cu o precizie impusa
(argumentele
functiei sunt limitele intervalului si eroarea maxima admisa). Program
pentru verificarea functiei pe ecuatii algebrice de grad mai mare ca 2
(de ex. ecuatia x**3 - x - 6 = 0 are radacina x=2 in intervalul
(1,3)).

6. Functie pentru conversia unui unghi din radiani in grade, minute


si
secunde (functia are 3 rezultate intregi).

7. Functie care primeste un vector de numere si produce un alt


vector,
care contine aceleasi numere, dar in ordine inversa fata de vectorul
initial.

S-ar putea să vă placă și