Título: ayuda con mi source Publicado por: 0x3c en 2 Enero 2013, 17:39 pm Hola un usuario de este foro($Edu$) me sugirio que hiciera una calculadora, asi que me puse a practicar y el codigo resultante fue este:
Código: #include <stdio.h> pero ahora tengo un problema...cuando se muestran las opciones todo anda bien pero luego se vuerve un desastre... Código: 1 = Sumar ayuda y gracias de ante mano Título: Re: ayuda con mi source Publicado por: avesudra en 2 Enero 2013, 19:03 pm Tiene toda la pinta de ser por que se ha llenado el buffer y se ha vuelto loco :rolleyes: . O limpias el buffer de esta manera:
Código Poniendo el código anterior antes de cada scanf. O usando fgets + sscanf(para evitar que se llene el buffer)(Este código lo puso Eternal Idol en su momento): Código Revisa este post que está en las chinchetas: |Lo que no hay que hacer en C/C++. Nivel basico| (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html) Título: Re: ayuda con mi source Publicado por: 0x3c en 2 Enero 2013, 19:30 pm bueno gracias por hecharle un ojo a mi code reduje el codigo tanto como pude y todavia sigo teniendo problemas :/ quite las lineas donde aparecia getchar() y nada le quite los ; a las sentencias que contiene condicionales(eso tambien era un error) y nada....seguire tratando hasta que el codigo me funcione tomare tu consejo...
saludos Título: Re: ayuda con mi source Publicado por: leosansan en 2 Enero 2013, 20:20 pm bueno gracias por hecharle un ojo a mi code reduje el codigo tanto como pude y todavia sigo teniendo problemas :/ quite las lineas donde aparecia getchar() y nada le quite los ; a las sentencias que contiene condicionales(eso tambien era un error) y nada....seguire tratando hasta que el codigo me funcione tomare tu consejo... Pues quitando los getchar, los punto y coma y "poniendo las llaves a los if" funciona ..... eso sí, le añadí un else por si se equivocan de signo y poco más:Código Saluditos!. ...... :rolleyes: :rolleyes: :rolleyes: :rolleyes: :rolleyes: :rolleyes: Título: Re: ayuda con mi source Publicado por: 0x3c en 3 Enero 2013, 04:47 am muchisimas gracias! de verdad funciono :D ahora tengo unas dudas sobre las modificaciones que hiciste..
1- ese { que usaste lo usaste por que es necesario para el condicional? Código: if(op == '1'){ 2- cambiaste el indentificador de la variable es decir cambiaste pusiste %g en vez de %f, por que? y como esto no afecta el funcionamiento del code? Código: scanf("%g%c%g",&val1,&c,&val2); saludos y gracias Título: Re: ayuda con mi source Publicado por: durasno en 3 Enero 2013, 07:10 am Citar 1- ese { que usaste lo usaste por que es necesario para el condicional? No es de mala onda pero en cualquier libro, nota, etc. acerca de C explica el uso del condicional if, cuando se abre las llaves y cuando se puede omitirCódigo: if(op == '1'){ Citar 2- cambiaste el indentificador de la variable es decir cambiaste pusiste %g en vez de %f, por que? y como esto no afecta el funcionamiento del code? Con solo googlear: %g: Scan a floating-point number in either normal or exponential notation. Saludos Título: Re: ayuda con mi source Publicado por: 0x3c en 3 Enero 2013, 11:24 am bueno el problema del condicional es que estoy siguiendo un libro y no he legado a esa parte todavia(ha sido mas por pereza que por falta de tiempo) pero seguire practicando...y seguire publicando los codigos, dudas y preguntas que tenga en este foro :D que por cierto me alegra que sea tan activo :P
saludos Título: Re: ayuda con mi source Publicado por: leosansan en 3 Enero 2013, 17:30 pm .......que por cierto me alegra que sea tan activo :P Citar De novatillo a novatillo o sea entre tú y yo: Saluditos!. ............ [/size] :rolleyes: :rolleyes: :rolleyes: :rolleyes: :rolleyes: :rolleyes:* Si el "cuerpo" del if, else, etc se compone de una sola sentencia no hacen falta las llaves. Fíjate que en el código que te pase hay if que sí tienen llaves -se componen de varias sentencias- y otros que no -sólo contienen una sentencia-. ** Si uso %f para imprimir 2 o 2.5 imprimirá 2.000000 o 2.500000, mientras que usando %g imprimirá 2 o 2.5, es decir "reduce" los decimales a su mínima expresión *** El uso del "else" es opcional. Lo incluí por si la operación que se entra por teclado no se correspondía con la opción elegida.. Título: Re: ayuda con mi source Publicado por: 0x3c en 4 Enero 2013, 02:29 am bueno gracias por aclararme las dudas que tenia...las tendre pendiente para la proxima...
saludos |