Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/06/2014, 10:20
Avatar de caillounazi
caillounazi
 
Fecha de Ingreso: junio-2014
Mensajes: 2
Antigüedad: 10 años, 3 meses
Puntos: 0
Pregunta C base: novato al ataque.

Güenas y no tan güenas. Hace como una semana empecé a INTENTAR aprender a programar en C. Llevo unos ejercicios y los voy haciendo como puedo. Si el compilador me da error puedo, más-menos, suponer donde está e intentar solucionarlo, pero cuando me compila, pero el resultado del programa no es el esperado, me pierdo.
Si alguien sería tan amable de darme una ayudita diciéndome dónde he fallado en el siguiente programa, se lo agradecería.
No busco una solución, sino un camino:



El ejercicio pide un programa al cual se le den tres angulos y determine si se trata de un ángulo válido o inválido, y, en caso de que sea válido, determinar si es equilátero, isósceles o escaleno. He aquí el código:

Código C:
Ver original
  1. #include <stdio.h>
  2.  
  3. void main() {
  4. int ang1, ang2, ang3, sumang;
  5.  
  6. /* declaración de variables. cada variable es un ángulo, menos la última, la cual  
  7. representa la suma de los mismos */
  8.  
  9. printf("Introduzca el primer ángulo: ");
  10. scanf("%d", &ang1);
  11. printf("Introduzca el segundo ángulo: ");
  12. scanf("%d", &ang2);
  13. printf("Introduzca el segundo ángulo: ");
  14. scanf("%d", &ang3);
  15.  
  16. sumang=ang1+ang2+ang3;
  17.  
  18. /*sumang será igual a 180 para ser un ángulo válido.*/
  19.  
  20. if (sumang!=180) printf("El triángulo no es válido.\n");
  21.   else { if (ang1=ang2=ang3) printf("Es un triángulo equilátero.\n");
  22.      /* si los tres ángulos son iguales, entonces será equilátero */
  23.         else
  24.             if ((ang1!=ang2!=ang3))
  25.                 /* si los tres ángulos son distintos unos de otros, entonces será escaleno*/
  26.                 printf("Es un triángulo escaleno.\n");
  27.                     else  printf("Es un triángulo isósceles.\n");
  28.                     }
  29.  
  30.  
  31. }


el programa me compila, todo bien. cuando pruebo, efectivamente, me distingue entre ángulos válidos y no válidos, pero cuando viene la miga de detectar si son equilateros, isósceles o escalenos, no lo hace como es debido.



PS: ¡por favor, no me matéis si es muy obvio para vosotros!