Autor
|
Tema: ploblema al compilar ejercicio en C (Leído 5,967 veces)
|
DARKDMR
Desconectado
Mensajes: 24
|
Buenas amigos eh aquí mi inquietud: me mandaron a hacer este ejercicio: elabore un programa que permita calcular el monto final a pagar en un supermercado a partir de el monto de los alimentos, perfumería y otros. en el caso de los alimentos no se cobra impuesto, en el caso de perfumería y otros se cobrara un impuesto del 5%. este es mi código: #include<stdio.h> int main() { int monto,alim,perf,otros; int perft,otrost; int esperar; printf("introduzca el monto a pagar en articulos de alimentos: ); scanf("%d",&alim); printf("introduzca el monto a pagar en articulos de perfumeria: ); scanf("%d",&perf); printf("introduzca el monto a pagar en otros articulos: ); scanf("%d",&otros); perft=(perf*0.5)+perf; otrost=(otros*0.5)+otros; monto=alim+perf+otrost; printf("el monto total a cancelar es: %d.",monto); scanf("%d",esperar); }
al compilarlo me marca muchos errores y no entiendo porque?
|
|
|
En línea
|
|
|
|
.:BlackCoder:.
Desconectado
Mensajes: 388
Cada dia C++!!
|
Va a sonar feo, pero leete un libro desde 0 Falta el return 0; de la funcion main.... Falta cerrar comillas en el argumento de la funcion printf... Y quien sabe q mas... Saludos... PD: la variable esperar no tiene sentido... Para la pausa, puedes usar getchar(); o system("PAUSE"); pero es mejor getchar, el por que lo puedes conseguir en este mismo foro...
|
|
|
En línea
|
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja
|
|
|
MG2010
Desconectado
Mensajes: 31
|
Es muy simple,
recojes 3 variables. integer perfumes, la multiplicas por 1.05; integer otros, la multiplicas por 1.05; alimentos, no lo multiplicas por nada;
al final sumas todo y lo imprimes.... es demasiado sencillo.
|
|
|
En línea
|
User
|
|
|
DARKDMR
Desconectado
Mensajes: 24
|
Va a sonar feo, pero leete un libro desde 0 Falta el return 0; de la funcion main.... Falta cerrar comillas en el argumento de la funcion printf... Y quien sabe q mas... Saludos... PD: la variable esperar no tiene sentido... Para la pausa, puedes usar getchar(); o system("PAUSE"); pero es mejor getchar, el por que lo puedes conseguir en este mismo foro... no es por nada pero estoy viendo clase de ello y te puedo asegurar que sin colocar lo que me has dicho el programa corre lo de las comillas se me ah pasado y gracias por la ayuda.
|
|
|
En línea
|
|
|
|
.:BlackCoder:.
Desconectado
Mensajes: 388
Cada dia C++!!
|
Bueh, solo dire que el hecho de que corra no significa tanto... Pero hazlo como quieras...
|
|
|
En línea
|
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
BlackCoder si no vas a responder de una manera seria por favor obvia postear, cuando no colocas el return se da un warning, no se da un error... DARKDMR te marque las lineas donde estan los errores, si te fijas no cierras las comillas dentro de printf, por eso es que dan los errores. Tambien mira la variable que pasas al ultimo scanf deberias de pasar la direccion de memoria. #include<stdio.h> int main() { int monto,alim,perf,otros; int perft,otrost; int esperar; printf("introduzca el monto a pagar en articulos de alimentos: ); scanf("%d",&alim); printf("introduzca el monto a pagar en articulos de perfumeria: ); printf("introduzca el monto a pagar en otros articulos: ); scanf("%d",&otros); perft=(perf*0.5)+perf; otrost=(otros*0.5)+otros; monto=alim+perf+otrost; printf("el monto total a cancelar es: %d.",monto); scanf("%d",esperar); }
|
|
« Última modificación: 20 Octubre 2010, 07:22 am por Lord R.N.A. »
|
En línea
|
|
|
|
do-while
Desconectado
Mensajes: 1.276
¿Habra que sacarla de paseo?
|
no es por nada pero estoy viendo clase de ello y te puedo asegurar que sin colocar lo que me has dicho el programa corre lo de las comillas se me ah pasado y gracias por la ayuda.
Disculpa, yo este año tambien he empezado un ciclo de programacion y te puedo asegurar que lo que enseñan esta lejos de ser correcto. Supongo que utilizaras un compilador borland (el 5.XX ejemplo) que te dejara compilar con un monton de errores que un compilador que respete el estandar no te dejara compilar. int main()
Estas diciendo que main es una funcion que devuelve un entero. Y por mucho que diagas lo contrario estas cometiendo un error, ya que no estas devolviendo nada al entorno que lo ejecuta. Lo de las comillas ya se te ha dicho. Me parece que tambien te han dicho que estas guardadndo valores reales en valores enteros, por lo que estas perdiendo informacion. Y por ultimo (creo), scanf necesita que le pases direcciones de memoria para poder cambiar variables y en alguno de los que tu has puesto (buscalo), has puesto directamente una variable en lugar de su direccion... (que por cierto, me acabo de dar cuenta, tambien te lo habian dicho... Si se te corrige es porque no sabes o porque haces mal las cosas. Si no quieres aceptar lo que se te dice en las respuestas no preguntes. Nos ahorraras tiempo. ¡Saludos!
|
|
« Última modificación: 20 Octubre 2010, 12:48 pm por do-while »
|
En línea
|
- Doctor, confundo los números y los colores. - Vaya marrón. - ¿Marrón? ¡Por el culo te la hinco!
|
|
|
тαптяα
Desconectado
Mensajes: 1.151
Sic utere tuo ut alienum non laeda
|
con code::bloks también corre por cierto.
y si quiere hacer el costo total.
ha de sumar perft a lo otro
|
|
|
En línea
|
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
con code::bloks también corre por cierto.
y si quiere hacer el costo total.
ha de sumar perft a lo otro
sin solucionar los errores de sintaxis que se presentan el compilador no lo compilara.
|
|
|
En línea
|
|
|
|
тαптяα
Desconectado
Mensajes: 1.151
Sic utere tuo ut alienum non laeda
|
mingw lo compila(IDE code::blocks)
y sin ningun warning
|
|
|
En línea
|
|
|
|
|
|