Sunteți pe pagina 1din 8

MINISTERUL EDUCAȚIEI, CULTURII ȘI CERCETĂRII

AL REPUBLICII MOLDOVA
Universitatea Tehnică a Moldovei
Facultatea Calculatoare, Informatică şi Microelectronică
Departamentul Informatică şi Ingineria Sistemelor

Stînă Adrea-Elisa
Gr. IBM-191

Raport
pentru lucrarea de laborator Nr.1

la cursul de “Programarea orientată pe obiecte”

Verificat:
Oșovschi Mariana, lector. univ.
Departamentul Informatică şi IS,
Facultatea FCIM, UTM

Chișinău 2020
#include <stdio.h>

#include <stdlib.h>

#define MAX_SIZE 100 // Maximum array size

int main()

int arr[MAX_SIZE];

int i, max, min, size, dif;

/* Input size of the array */

printf("Enter size of the array: ");

scanf("%d", &size);

for(int i = 0; i<size; i++)

printf(" %d ", rand());

/* Assume first element as maximum and minimum */

max = arr[0];

min = arr[0];
/*

* Find maximum and minimum in all array elements.

*/

for(i=1; i<size; i++)

/* If current element is greater than max */

if(arr[i] > max)

max = arr[i];

/* If current element is smaller than min */

if(arr[i] < min)

min = arr[i];

printf ("\n");

/* Print maximum and minimum element */

printf("Maximum element = %d\n", max);

printf("Minimum element = %d\n", min);

dif=max-min;

printf("diferenta este = %d\n", dif);

return 0;

}
Răspuns:

b.

#include <iostream>

struct Queue

int number;

struct Queue *next;

};

using namespace std;

void introduceQueue(Queue* &headElement, Queue* &finalElement,


int number)

Queue *aux;

if(!headElement)

headElement = new Queue;


headElement->number = number;

headElement->next = nullptr;

finalElement = headElement;

else

aux = new Queue;

finalElement->next = aux;

aux->number = number;

finalElement = aux;

finalElement->next = nullptr;

void printQueue(Queue *headElement)

Queue *aux;

cout << "Afisarea Cozii" << endl;

aux = headElement;

while(aux)

cout << aux->number << " ";

aux = aux->next;

cout << endl;

}
int getNextElement(Queue *aux)

if (aux->next != nullptr)

return aux->next->number;

return INT16_MIN;

int getPrevElement(Queue *headElement, Queue *aux)

Queue *tmp;

if (headElement == nullptr)

return INT16_MIN;

tmp = headElement;

while (tmp)

if (tmp->next == aux)

return tmp->number;

tmp = tmp->next;

return INT16_MIN;

}
void printResult(Queue *headElement)

Queue *aux;

if (headElement == nullptr)

return;

aux = headElement;

cout << "Afisarea rezultatului" << endl;

while (aux)

if (getPrevElement(headElement, aux) < aux->number &&


getNextElement(aux) < aux->number)

cout << aux->number << " ";

aux = aux->next;

cout << endl;

int main()

Queue *headElement = nullptr;

Queue *finalElement = nullptr;

for (int i = 0; i < 100; i++)

{
introduceQueue(headElement, finalElement, rand());

printQueue(headElement);

printResult(headElement);

return 0;

Concluzie: In această lucrare de laborator am facut cunostinta cu


reprezentarea tipurilor de date ale limbajului C++ în memoria
calculatorului, cu operatorii limbajului C++. Am construit si
elaborate programe recursive. Și fisiere. Am scris un program care
afiseaza min. si max. din 100 numere aleatorii si am determinat
diferenta dintre numarul max. si minim determinat. De asemenea am
determinat cate numere ale unei cozi de 100 numere aleatorii sunt
mai mari decat vecinii săi.