No ejecuta switch correctamente
Publicado por daniel (4 intervenciones) el 10/03/2018 03:13:55
Hola amigos, soy yo de nuevo, quisiera que me ayudaran a encontrar en que parte de mi programa estoy fallando por que no me ejecuta los casos de switch como se debe:
Me compila y todo perp el problema de esto es que al realizar la operacion no me manda el resultado que espero... Quiero creer que es un error de sintaxis en mi programa pero como soy principante no soy muy bueno identificandolos...
Me compila y todo perp el problema de esto es que al realizar la operacion no me manda el resultado que espero... Quiero creer que es un error de sintaxis en mi programa pero como soy principante no soy muy bueno identificandolos...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include<stdio.h>
int leer ();
float call (int, int);
int main(){
float total;
int time, opc;
printf("Ingrese el numero de la region\nAmerica del norte=10\nAmerica Central=12\nAmerica del sur=13\nEuropa=15\nAsia=18\nAfrica=23\nOceania=27\n");
opc=leer();
printf("Cuantos minutos estuviste llamando?");
time=leer();
total=call(opc,time);
return 0;
}
float call(int opc,int time){
float r;
switch(opc){
case 10:
r=time*2.2; //esta parte al ser ejecutada me devuelve un numero grande que no va con el resultado que espero
printf("El total que pagaras es de:%i pesos",r);//aqui me devuelve un 0
break;
case 12:
r=time*2.5;
printf("El total que pagaras es de:%i pesos",r);//aqui me devuelve un 0
break;
case 13:
r=time*4.3;
printf("El total que pagaras es de:%i pesos",r);//aqui me devuelve un 0
break;
case 15:
r=time*3.5;
printf("El total que pagaras es de:%i pesos",r);//aqui me devuelve un 0
break;
case 18:
r=time*7.00;
printf("El total que pagaras es de:%i pesos",r);//aqui me devuelve un 0
break;
case 23:
r=time*7.00;
printf("El total que pagaras es de:%i pesos",r);//aqui me devuelve un 0
break;
case 27:
r=time*5.00;
printf("El total que pagaras es de:%i",r);//aqui me devuelve un numero negativo similar al del primer caso
break;
default:
printf("Opcion no valida");
}
return r;
}
int leer(){
int n=0;
scanf("%i",&n);
return n;
}
Valora esta pregunta


0