De la tastatură se citesc trei numere întregi. Elaboraţi un program cu funcţii
C++
prin intermediul căruia:
a) Se va determina cel mai mare divizor comun al numerelor;
b) Se va determina cel mai mic multiplu comun al numerelor;
c) Se va determina valoarea maximă;
d) Se va determina valoarea minimă;
e) Se vor afişa toţi divizorii comuni;
f) Se vor cei mai mici trei multipli comuni.
g) Se va verifica dacă numerele citite pot fi lungimile laturilor unui triunghi;
g.1. Se va determina aria triunghiului, dacă valorile citite pot forma un triunghi;
g.2.Se va determina perimetrul triunghiului, dacă valorile citite pot forma un
triunghi;
h) Se va afişa soluţiile reale ale ecuaţiei ax
2
+bx+c=0, dacă a, b, c reprezintă
coeficienții ecuaţiei.
C++
Doar primele 5
Răspunsuri la întrebare
Răspuns:
a)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,y,z;
cin>>x>>y>>z;
while(y!=0)
{
int r=x%y;
x=y;
y=r;
}
while(z!=0)
{
int r=x%z;
x=z;
z=r;
}
cout<<x;
return 0;
}
b)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,y,z,a,b,c;
cin>>x>>y>>z;
a=x;
b=y;
c=z;
while(y!=0)
{
int r=x%y;
x=y;
y=r;
}
int h=(a*b)/x;
while(z!=0)
{
int r=x%z;
x=z;
z=r;
}
cout<<(h*c)/x;
return 0;
}
c)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,y,z,maxx;
cin>>x>>y>>z;
maxx=x;
if(y>x)
{
maxx=y;
if(z>y)
maxx=z;
}
else if(z>x)
{
maxx=z;
if(y>z)
maxx=y;
}
cout<<maxx;
return 0;
}
d)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,y,z,minn;
cin>>x>>y>>z;
minn=x;
if(y<x)
{
minn=y;
if(z<y)
minn=z;
}
else if(z<x)
{
minn=z;
if(y<z)
minn=y;
}
cout<<minn;
return 0;
}
e)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,y,z,maxx;
cin>>x>>y>>z;
maxx=x;
if(y>x)
{
maxx=y;
if(z>y)
maxx=z;
}
else if(z>x)
{
maxx=z;
if(y>z)
maxx=y;
}
for(int i=1;i<=maxx;i++)
if(x%i==0 and y%i==0 and z%i==0)
cout<<i<<" ";
return 0;
}
Explicație:
Sper ca te-am ajutat!!