0% au considerat acest document util (0 voturi)
20 vizualizări8 pagini

Problema 1 Pascal

Încărcat de

grigore marinescu
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
20 vizualizări8 pagini

Problema 1 Pascal

Încărcat de

grigore marinescu
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd

Problema 1 Pascal:

program MediaAritmeticaRecursiva;

uses crt;

function Suma(x, y, z: integer): integer;

begin

// Dacă x și y sunt 0, returnăm doar z

if (x = 0) and (y = 0) then

Suma := z

// Dacă doar x este 0, returnăm y + z

else if (x = 0) then

Suma := y + z

// Dacă doar y este 0, returnăm x + z

else if (y = 0) then

Suma := x + z

// Dacă nici unul nu este 0, continuăm recursia

else

Suma := x + Suma(0, y, z);

end;

function MediaAritmetica(x, y, z: integer): real;

begin

MediaAritmetica := Suma(x, y, z) / 3;

end;

var

x, y, z: integer;

media: real;

begin

clrscr;
writeln('Introduceți trei numere naturale:');

readln(x, y, z);

media := MediaAritmetica(x, y, z);

writeln('Media aritmetică a celor trei numere este: ', media:0:2);

readln;

end.

Natalia Stici

18:29

Bună seara

Teodora Vascan

18:39

Problema 1:

#include <iostream>

using namespace std;

// Funcție recursivă pentru a calcula suma celor trei numere

int Suma(int x, int y, int z) {

// Dacă x și y sunt 0, returnăm doar z

if (x == 0 && y == 0)

return z;

// Dacă doar x este 0, returnăm y + z

else if (x == 0)

return y + z;

// Dacă doar y este 0, returnăm x + z

else if (y == 0)

return x + z;

// Dacă nici unul nu este 0, continuăm recursia

else
return x + Suma(0, y, z);

// Funcție pentru a calcula media aritmetică folosind funcția de sumă

double MediaAritmetica(int x, int y, int z) {

return static_cast<double>(Suma(x, y, z)) / 3;

int main() {

int x, y, z;

cout << "Introduceți trei numere naturale: ";

cin >> x >> y >> z;

double media = MediaAritmetica(x, y, z);

cout << "Media aritmetică a celor trei numere este: " << media << endl;

return 0;

Teodora Vascan

18:42

Problema 2 Pascal:

program SumaRecursiva;

uses crt;

function Suma(x, y, z: integer): integer;

begin

if x = 0 then

if y = 0 then

Suma := z

else

Suma := y + Suma(0, 0, z)

else
Suma := x + Suma(0, y, z);

end;

var

x, y, z, rezultat: integer;

begin

clrscr;

writeln('Introduceți trei numere naturale:');

readln(x, y, z);

rezultat := Suma(x, y, z);

writeln('Suma celor trei numere este: ', rezultat);

readln;

end.

yjd-mxjy-ies

Problema 4 Pasacl:

program ProdusRecursiv;

uses crt;

function Produs(x, y, z: integer): integer;

begin

// Condițiile de oprire și de recursie

if (x = 1) then

if (y = 1) then

Produs := z

else

Produs := y * z

else
Produs := x * Produs(1, y, z);

end;

var

x, y, z, rezultat: integer;

begin

clrscr;

writeln('Introduceți trei numere naturale:');

readln(x, y, z);

rezultat := Produs(x, y, z);

writeln('Produsul celor trei numere este: ', rezultat);

readln;

end.

yjd-mxjy-ies

Problema 3 C++:

#include <iostream>

using namespace std;

// Funcție recursivă pentru a calcula diferența celor trei numere

int Diferenta(int x, int y, int z) {

// Condițiile de oprire și de recursie

if (y == 0 && z == 0) // Dacă y și z sunt 0, returnăm doar x

return x;

else if (y == 0) // Dacă y este 0, returnăm x - z

return x - z;

else // Dacă y nu este 0, scădem y din x și continuăm recursia cu x - y și z

return Diferenta(x - y, 0, z);

}
int main() {

int x, y, z;

cout << "Introduceți trei numere naturale: ";

cin >> x >> y >> z;

int rezultat = Diferenta(x, y, z);

cout << "Diferența celor trei numere este: " << rezultat << endl;

return 0;

Problema 3 Pascal:

program DiferentaRecursiva;

uses crt;

function Diferenta(x, y, z: integer): integer;

begin

// Condițiile de oprire și de recursie

if y = 0 then

if z = 0 then

Diferenta := x

else

Diferenta := x - z

else

Diferenta := Diferenta(x - y, 0, z);

end;

var

x, y, z, rezultat: integer;

begin

clrscr;

writeln('Introduceți trei numere naturale:');


readln(x, y, z);

rezultat := Diferenta(x, y, z);

writeln('Diferența celor trei numere este: ', rezultat);

readln;

end.

Problema 2 C++:

#include <iostream>

using namespace std;

// Funcție recursivă pentru a calcula suma celor trei numere

int Suma(int x, int y, int z) {

// Condițiile de oprire și de recursie

if (x == 0 && y == 0) // Dacă x și y sunt 0, returnăm doar z

return z;

else if (x == 0) // Dacă x este 0, returnăm y + z

return y + Suma(0, 0, z);

else // Dacă niciunul nu este 0, continuăm recursia cu x și adunăm y și z

return x + Suma(0, y, z);

int main() {

int x, y, z;

cout << "Introduceți trei numere naturale: ";

cin >> x >> y >> z;

int rezultat = Suma(x, y, z);

cout << "Suma celor trei numere este: " << rezultat << endl;

return 0;

}
Problema 2 Pascal:

program SumaRecursiva;

uses crt;

function Suma(x, y, z: integer): integer;

begin

if x = 0 then

if y = 0 then

Suma := z

else

Suma := y + Suma(0, 0, z)

else

Suma := x + Suma(0, y, z);

end;

var

x, y, z, rezultat: integer;

begin

clrscr;

writeln('Introduceți trei numere naturale:');

readln(x, y, z);

rezultat := Suma(x, y, z);

writeln('Suma celor trei numere este: ', rezultat);

readln;

end.

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