Informatică, întrebare adresată de One07, 9 ani în urmă

Imi da eroare la penultimul else si nu stiu de ce

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main()
{ float a, b, c;
    printf("Introduceti numerele:\n");   
printf("Numerele sunt:\n");   
 scanf("%d %d %d", &a, &b, &c);     
  if ((a<b+c) && (b<a+c) && (c<a+b))     
   {        if((a==b) && (b==c))       
 {            printf("Triunghiul este echilateral\n");       
 }     
  else     
  if((a==b)||(a==c)||(b==c))   
    {            printf("Triunghiul este isoscel\n");   
     }     
  else       
 if ((c*c+b*b==a*a) || (a*a+c*c==b*b) || (a*a+b*b==c*c));     
  {            printf("Triunghiul este dreptunghic\n");       
 }     
  else     
   {            printf("Triunghiul este oarecare\n");   
    }
          }else     
       printf("Nu este triunghi\n");
    return 0;    }


One07: A 12-a

Răspunsuri la întrebare

Răspuns de express
1
Problema merge bine...numai ca la ultimul if ai pus ; inainte de "triunghiul este dreptunghic". Ti-am facut sursa care merge bine. Succes!
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main()
{ float a, b, c;
printf("Introduceti numerele:\n"); 
printf("Numerele sunt:\n"); 
scanf("%d %d %d", &a, &b, &c); 
if ((a<b+c) && (b<a+c) && (c<a+b)) 
{ if((a==b) && (b==c)) 
{ printf("Triunghiul este echilateral\n"); 

else 
if((a==b)||(a==c)||(b==c)) 
{ printf("Triunghiul este isoscel\n"); 

else 
if ((c*c+b*b==a*a) || (a*a+c*c==b*b) || (a*a+b*b==c*c))
{ printf("Triunghiul este dreptunghic\n"); 

else 
{ printf("Triunghiul este oarecare\n"); 
}
}else 
printf("Nu este triunghi\n");
return 0; }

One07: Multumesc mult
Alte întrebări interesante