Documente Academic
Documente Profesional
Documente Cultură
RAPORT
despre lucrarea de laborator nr. 1
Varianta 6
CHIȘINĂU
2018
Scopul lucrării:
Insusira notiunilor despre pointeri si demonstrarea intelegerii operatiilor cu ei.
Sarcina lucrării:
De studiat şi însuşit materialul teoretic din lucrarea dată prin însușirea noțiunilor și lansarea exerciţiilor la
execuţie pentru analiza şi evidenţierea esenţialului prelucrării structurilor de date cu pointeri în elaborarea
modelelor soluţiei prin explicaţii, argumentări şi organigrame.
În partea practică, la prima lucrare, de organizat un program din trei exemple, propuse de profesor, analizând
specificul implementării pointerilor prin simulare numerică și rezultatele obținute.
În raport să fie expuse toate programele şi calculele efectuate. Să se analizeze tehnica programării eficiente
cu pointeri în baza exerciţiilor şi variantelor problemelor efectuate pentru diverse situaţii cu argumentări.
Mersul lucrării:
Program cu pointeri:
#include "stdio.h"
void printare(int *a)
{
int i;
for (i=0;i<5;i++)
{
printf("%d\n",*(a+i));
}
}
int x2(int n)
{
return n+5;
}
//Ex:3
//Pointer la pointer
int z=1,*p,**pp;
p=&z;
pp=&p;
*p=4;
printf("Ex:3\n**pp=%d, x=%d",**pp,z);
//Ex:4
//Pointer la functie
int n=5;
printf("\nEx:4\nApelarea funtiei x2, din functia x1\nn=%d\n",x1(x2,n));
}
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
for (i=0;i<n;i++)
for (j=0;j<n;j++)
{
if (*(*(a+i)+j) >0)
{
s+=*(*(a+i)+j);
nr++;
}
}
m=s/nr;
printf("Media elementelor pozitive este %.3f\n",m);
}
for (i=0,j=n-1;i<n;i++)
{ //Diagonala secundara
p*=*(*(a+i)+j);
j--;
}
printf("Produsul de pe diagonale este %d\n",p);
}
a=citire (n);
printf("%d\n",a[1][1] );
media (n,a);
printf("%d\n",a[1][1] );
prod_diag (n,a);
printf("%d\n",a[1][1] );
free_matrix(n,a);
printf("%d\n",*(*(a+1)+1));
return (0);
}
Schema-bloc:
Start Start
Start Start (media) (prod_diag)
(**citire)
i<n
j++
s+=*(*(a+i)+j)
p*=*(*(a+i)+j)
nr++ ;
END j--
j++
i++
m=s/nr
Afisare m Afisare p
END END
Concluzie:
Utilizarea pointerilor garanteaza o prelucrare sigura a datelor si garanteaza un
rezultat corect, indiferent de operatiile efectuate cu sau fara functii.