De la tastatură se citesc datele despre n (n>2) dreptunghiuri (lungimea și lățimea). Elaboraţi un program care va afişa dreptunghiul (lungimile laturilor, aria și perimetru) cu suprafața maximă şi dreptunghiul cu cel mai mic perimetru.
In C++ va rog mult.
Răspunsuri la întrebare
Răspuns:
Rezolvare -structuri-
#include <iostream>
using namespace std;
struct dreptunghi
{
int ln,la,arie,per;
}dmax,dmin,d;
int main()
{
int n;
cin>>n>>dmax.ln>>dmax.la;
dmax.arie=dmax.ln*dmax.la;
dmax.per=dmax.ln*2+dmax.la*2;
dmin.per=dmax.per;
dmin.arie=dmax.arie;
dmin.ln=dmax.ln;
dmin.la=dmax.la;
while(n-1)
{
cin>>d.ln>>d.la;
if(d.ln*d.la>dmax.arie)
{
dmax.arie=d.ln*d.la;
dmax.per=d.ln*2+d.la*2;
dmax.ln=d.ln;
dmax.la=d.la;
}
if(d.ln*2+d.la*2<dmin.per)
{
dmin.arie=d.ln*d.la;
dmin.per=d.ln*2+d.la*2;
dmin.ln=d.ln;
dmin.la=d.la;
}
n--;
}
cout<<"Dreptunghiul cu suprafata maxima:\nlungime:"<<dmax.ln<<"\nlatime:"<<dmax.la<<"\narie:"<<dmax.arie<<"\nperimetru:"<<dmax.per<<"\n";
cout<<"Dreptunghiul cu perimetrul minim:\nlungime:"<<dmin.ln<<"\nlatime:"<<dmin.la<<"\nperimetru:"<<dmin.per<<"\narie:"<<dmin.arie<<"\n";
return 0;
}
Explicație: