|
Titlul: Un pic de ajutor daca se poate :) Scris de: Anton Bogdan din Octombrie 31, 2015, 21:20:23 Salut, am si eu de facut o problema care suna in modul urmator: Sa se scrie un program in care se declara o structura pentru reprezentarea unui triunghi prin valorile laturilor sale. Se defineste o functie care citeste valorile pentru o data de tip triunghi, o functie care afiseaza valorile unei date de tip triunghi si o a treia functie care returneaza aria unui triunghi preluat ca parametru.
Eu am facut problema in modul urmator si nu imi dau seama ce este gresit: Citat #include<iostream> #include<math.h> using namespace std; struct triunghi {int a,b,c; }x; void citire() { do{cout<<"a=";cin>>x.a; cout<<"b=";cin>>x.b; cout<<"c=";cin>>x.c;} while((x.a+x.b<=x.c && x.a+x.c<=x.b && x.b+x.c<=x.a)||(x.a<=0||x.b<=0 || x.c<=0)); } void afisare() { cout<<"Laturile triunghiului sunt:"<<endl; cout<<"a="<<x.a<<endl; cout<<"b="<<x.b<<endl; cout<<"c="<<x.c<<endl; } int arie(int d, int e, int f) { float sp, aria; sp=(float)(d+e+f)/2; cout<<sp<<endl; aria=(float)sqrt(sp*(sp-d)*(sp-e)*(sp-f)); return aria; } int main() { citire(); afisare(); cout<<"Aria="<<arie(x.a,x.b,x.c); } Titlul: Răspuns: Un pic de ajutor daca se poate :) Scris de: Anton Bogdan din Noiembrie 03, 2015, 19:57:00 Nu se face citirea intr-o bucla, acea conditie este in caz ca valorile introduse nu sunt laturi de triunghi, de exemplu daca pun o latura 0 ma pune sa introduc alte valori, daca valorile sunt bune numai introduc altele, deci nu aceea este problema. Aceea este la arie, nu stiu din ce cauza nu o calculeaza corect de fiecare data.
Titlul: Răspuns: Un pic de ajutor daca se poate :) Scris de: FMI Razvan Birisan din Noiembrie 03, 2015, 20:09:37 Formula de arie pare bună.
|