Sacar promedio [C]

Iniciado por Darklexis312, 19 Abril 2018, 02:50 AM

0 Miembros y 1 Visitante están viendo este tema.

Darklexis312

Hola a todos como le hago para que cuando ingrese calificaciones con  valores mayores a 100 no saque el promedio y solo imprima un error.

int promedio() {
int a, b, c, Promedio;
printf("Introduce tus tres calificaciones: \n");
scanf_s("%d %d %d", &a, &b, &c);
if ((a >= 0 && a <= 100) && (b >= 0 && b <= 100) && (c >= 0 && c <= 100))
printf("Valores validos\n");
else
printf("ERROR\n");
Promedio = (a + b + c) / 3;
printf("El promedio es %d",Promedio);
return Promedio;
}

engel lex

printf("ERROR\n");
return -1;


y en la sección que ejecutas la funcion "si promedio es -1, entonces no hacer nada" ya que -1 es un numero imposible como promedio


consejo: siempre coloca las llaves en el if... a menos que estés muy pulido en C y algoritmia, no colocar llaves usualmente lleva a errores
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

Adry_cr23

#2
despues del printf("ERROR"); tienes que poner un exit(0) o un  return 0, para que el programa acabe.
Y seria mejor crear la variable promedio de tipo float o double, para que al hacer el promedio salgan los numeros decimales. (%f o %g) respestivamente.

Xargam

#3
Colocale llaves al if y al else. El codigo que calcula el promedio y el printf("") que lo muestra metelo dentro del if, para que se ejecute unicamente si el numero es valido.