Sunteți pe pagina 1din 6

Ministerul Educaţiei, Culturii și Cercetării al Republicii Moldova

Universitatea Tehnică a Moldovei

Departamentul Informatică și Ingineria Sistemelor

RAPORT
Lucrare de laborator nr.3
la Programarea Calculatoarelor

A efectuat:
st. gr. CR-181 B.Denis

A verificat:
dr., conf. univ. M. Kulev

Chişinău -2018

0
Lucrare de laborator nr.3

Tema: Prelucrarea tablourilor unidimensionale

Scopul lucrării: obtinerea deprinderilor practice de lucru cu tablouri unidimensionale,


cunoasterea particularitatilor de declarare, de introducere si de prelucrare a tabloului
unidemsional.

Condiţia problemei (sarcini de lucru) [1]: Suma elementelor intre elementele min si max ale
tabloului dat iar valoarea lor este inferioara mediei dintre min si max

Notiuni studiate[2]:

Tabloul unidemsional reprezinta o variabila compusa, care reprezinta un loc continuu in memoria
calculatorului destinat pentru stocarea valorilor sau elementelor de acelasi tip.
Tabloul unidensional reprezinta o structura de date.
Structura de date reprezinta un set de date tratat ca un lucru care contine mai multe lucruri.

Analiza datelor și identificarea variabilelor:

a) date de intrare: length – numar intreg, utilizata pentru redarea lungimii tabloului
unidimensional, array[length] – tabloul de lungimea indicata mai sus ce contine date de tip
integer (Datele se introduc de la tastatura)

b) date de ieşire: prod – de tip integer (numar intreg)

c) date intermediare: nn, i – de tip integer (numar intreg)

Schema logică a algoritmului:

Start

“Introduceti nr de elemente:

“Introduceti elementele: “

1
1

i = 0; i < n; i++

Printf v[i] “Elementele tabloului sunt: ”

v[i]

i = 0; i < n; i++

"%d ", v[i]

Printf Dati elemental minim

minim

“printf Dati elemental maxim: “

maxim

Medie=(maxim+minim)/2

nu
Printf media numerelor

i=0; i<n; i++

3 4
2

3 4 2
nu v[i]>minim&&
v[i]<maxim&
&
v[i]<medie

Suma=suma+v[i]

Printf:suma elementelor

Stoparea
ecranului

Stop

Codul (textul) programului in limbajul C:


#include <iostream>
#include <stdio.h>

int main()
{
int n;
int v[n];
int suma =0,minim , maxim;
float medie;

printf("Introduceti numarul de elemente : ");


scanf("%d",&n);

printf("\nIntroduceti elementele \n");

for(int i=0;i< n;i++){


printf("v[%d]=",i+1);
scanf("%d",&v[i]);
}
3
printf("\nElementele tabloului sunt: ");

for(int i=0;i<n;i++){
printf("%d",v[i]," ");
}

printf("\nDati elementul minim :"); scanf("%d",&minim);


printf("\nDati elementul maxim :"); scanf("%d",&maxim);

medie = (maxim + minim)/2;

printf("\nMedia numerelor =%.2f",medie);

for(int i=0;i<n;i++) {
if(v[i] > minim && v[i]<medie) {
suma +=v[i];
}
}

printf("\nSuma elementelor este %d",suma);


}

Rezultatele rulării și testării programului:

Analiza rezultatelor și concluzii:

4
1. Au fost obţinute deprinderi de elaborare, compilare, rulare și testare a tablourilor
unidimensionale în limbajul de programare C.
2. Verificarea și validarea rezultatelor obţinute confirmă că programul elaborat lucrează corect.
3. Algoritmi ramificati si ciclici pot fi folositi pentru prelucrarea tabloului unidimensional.
4. Avantajul programului elaborat este simplicitatea implementării algoritmului ramificat.
5. Programul elaborat nu verifică datele de intrare, ce reprezintă un dezavantaj al algoritmului.
Spre exemplu la intruducerea unei litere in consola – programul va da eroare.
6. Programul elaborat poate fi dezvoltat ulterior prin adăugarea operațiilor de verificare a datelor
de intrare (daca datele introduse sunt numere intregi).
.
Bibliografie:
1. Carcea L., Vlas S., Bobicev V. Informatica: Sarcini pentru lucrări de laborator. Chișinău: UTM,
2005. - 19 p.
2. Conspectul prelegerilor al cursului Programarea Calculatoarelor pentru studenții gr. AI-181, AI-
182, CR-181, C-182 (lector: dr., conf. univ. M. Kulev). Chișinău, UTM, FCIM, 2018.

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