Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: R3Z en 26 Abril 2015, 00:36 am



Título: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 00:36 am
Una Pregunta Sencilla Como Hago Para Que Me Digita La Devuelta

Código
  1. #include<stdio.h>
  2. #include<conio.c>
  3.  
  4. char Descripcion[40];
  5. int s=5,x=0;
  6.  
  7. float devuelta,Efectivo,tsueldo,itbis,Precio;
  8.  
  9. main()
  10.  
  11. {
  12.      textbackground(WHITE);
  13.      textcolor(6);
  14.      clrscr();
  15.      gotoxy(10,1);printf("------------------------------------------------------------------");
  16.      gotoxy(27,2);printf("FACTURA PARA EL CONSUMIDOR");
  17.      gotoxy(10,3);printf("------------------------------------------------------------------");
  18.      gotoxy(10,4);printf("Descripcion                Itbis                      Precio RD$");
  19.      gotoxy(10,5);printf("------------------------------------------------------------------");
  20.      gotoxy(10,18);printf("------------------------------------------------------------------");
  21.      gotoxy(52,17);printf("Total-->RD$");
  22.      gotoxy(30,21);printf("Efectivo:");
  23.      gotoxy(30,23);printf("Devuelta:");
  24.     for(x=1; x<=10; x=x+1)
  25.  
  26.      {
  27.          s=s+1;
  28.          fflush(stdin);
  29.          gotoxy(10,s);scanf("%s",&Descripcion);
  30.          gotoxy(66,s);scanf("%f",&Precio);
  31.          tsueldo=tsueldo+Precio;
  32.          itbis=0.18*Precio;
  33.          devuelta=tsueldo-Efectivo;
  34.          gotoxy(64,17);printf("%.2f",tsueldo);
  35.          gotoxy(38,s);printf("%.2f",itbis);
  36.          gotoxy(40,23);printf("%.2f",devuelta);
  37.          gotoxy(40,21);scanf("%f",&Efectivo);
  38.      }
  39.  
  40.  
  41. getch();          
  42.  
  43. }

Mod: Código resaltado con etiquetas GeSHi


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 00:39 am
recomiendo leer
http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html)

fflush no se debe usar con stdin

ya te imprime la devuelta an la linea 36
Código
  1. gotoxy(40,23);printf("%.2f",devuelta);;


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 00:51 am
Bueno me sale asi

me sale lo mismo que total siempre no se resta  solo se queda igual

Descripcion:               ITBIS:                Precio:RD$

Pollo                           40.50                          225



Efectivo:1000

Devuelta:225.00


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 00:53 am
tu pregunta
Citar
Una Pregunta Sencilla Como Hago Para Que Me Digita La Devuelta

el programa
Citar
Devuelta:225.00

no entiendo el problema... explicalo en detalle

lee estos 2 temas y formula con detalle tu pregunta
10 pasos para plantear una duda informática (http://foro.elhacker.net/index.php/topic,159345.msg751417.html#msg751417)
FAQ : Como hacer preguntas "inteligentes" (http://foro.elhacker.net/index.php/topic,7122.0.html)


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 01:00 am
Yo Estoy Haciendo  Una Factura como los del Supermercados


yo quiero realizar una compra de 5 productos
si el total me hace 1,500 pesos    y yo le doy 2000 pesos  yo quiero que me diga la devuelta es de (Como Hacen Con la Factura)
ejemplo               itbis(0.18*precio)                  precio RD$

Arroz                                                             200
Pollo                                                              300
Bizcocho                                                        500
Salchicha                                                       225
Jugo                                                               50


                                                          Total=la suma de los precios



Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 01:08 am
primero inicializa los valores a 0

segundo
los 2000 pesos se los das al inicio o al final, pero no dentro del ciclo...

al final sumas todos los valores acumulados y le restas el efectivo... ese es tu vuelto

lee el primer link que te dejé, corrije los errores, has eso que te dije y muestra a ver como llevas el código


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 01:23 am
(http://lookpic.com/O/i2/1513/6hHc79td.jpeg)

Mira Como Sale

primero inicializa los valores a 0 so lo que quieres decir  efectivo=0 asi


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 01:29 am
si, siempre deben estar a 0 inicialmente porque pueden contener basura de la memoria, al parecer tu compilador la limpia, pero eso no es parte del standard...

modificaste el código? muestra tus cambios


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 01:35 am
Lo Estoy Modificando Poco A Poco Pero sigue igual


Código:
#include<stdio.h>
#include<conio.c>

char Descripcion[40];
int s=5,x=0;

float total,devuelta,Efectivo=0,valor,tsueldo,itbis,Precio;

main()

{
      textbackground(WHITE);
      textcolor(6);
      clrscr();
      gotoxy(10,1);printf("------------------------------------------------------------------");
      gotoxy(27,2);printf("FACTURA PARA EL CONSUMIDOR");
      gotoxy(10,3);printf("------------------------------------------------------------------");
      gotoxy(10,4);printf("Descripcion                Itbis                      Precio RD$");
      gotoxy(10,5);printf("------------------------------------------------------------------");
      gotoxy(10,18);printf("------------------------------------------------------------------");
      gotoxy(52,17);printf("Total-->RD$");
      gotoxy(30,21);printf("Efectivo:");
      gotoxy(30,23);printf("Devuelta:");
     for(x=1; x<=10; x=x+1)
     
      {
          s=s+1;
          fflush(stdin);
          gotoxy(10,s);scanf("%s",&Descripcion);
          gotoxy(66,s);scanf("%f",&Precio);
          tsueldo=tsueldo+Precio;
          itbis=0.18*Precio;
          gotoxy(64,17);printf("%.2f",tsueldo);
          gotoxy(38,s);printf("%.2f",itbis);
     
      }
      devuelta=tsueldo-Efectivo; 
      gotoxy(40,21);scanf("%f",&Efectivo);
      gotoxy(40,23);printf("%.2f",devuelta);;   
     
getch();         
     
}


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 01:44 am
hombre cuando programes, sientate a pensar bien la logica primero ;)

Código
  1. devuelta=tsueldo-Efectivo;  
  2.      gotoxy(40,21);scanf("%f",&Efectivo);
  3.      gotoxy(40,23);printf("%.2f",devuelta);  

primero restas el efectivo y luego le das valor...

Citar
devuelta = 1800 - 0
efectivo = 2000
imprimir(devuelta) -> 1800

todos los valores que no van a recibir valor directo deben ir inicializados (tsueldo tambien)

procura usar las etriquetas GeSHi (en lugar de usar el #, a su derecha hay un combobox que dice GeSHi)


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 02:20 am
al efectivo tu no le puede asignar un valor si tu no sabes como el cliente va pagar

Código
  1. #include<stdio.h>
  2. #include<conio.c>
  3.  
  4. char Descripcion[40];
  5. int s=5,x=0;
  6.  
  7. float Efectivo=2000,devuelta=0,valor,tsueldo=0,itbis,Precio;
  8.  
  9. main()
  10.  
  11. {
  12.      textbackground(WHITE);
  13.      textcolor(6);
  14.      clrscr();
  15.      gotoxy(10,1);printf("------------------------------------------------------------------");
  16.      gotoxy(27,2);printf("FACTURA PARA EL CONSUMIDOR");
  17.      gotoxy(10,3);printf("------------------------------------------------------------------");
  18.      gotoxy(10,4);printf("Descripcion                Itbis                      Precio RD$");
  19.      gotoxy(10,5);printf("------------------------------------------------------------------");
  20.      gotoxy(10,18);printf("------------------------------------------------------------------");
  21.      gotoxy(52,17);printf("Total-->RD$");
  22.      gotoxy(30,21);printf("Efectivo:RD$");
  23.      gotoxy(30,23);printf("Devuelta:RD$");
  24.     for(x=1; x<=5; x=x+1)
  25.  
  26.      {
  27.          s=s+1;
  28.          fflush(stdin);
  29.          gotoxy(10,s);scanf("%s",&Descripcion);
  30.          gotoxy(66,s);scanf("%f",&Precio);
  31.          tsueldo=tsueldo+Precio;
  32.          itbis=0.18*Precio;
  33.          gotoxy(64,17);printf("%.2f",tsueldo);
  34.          gotoxy(38,s);printf("%.2f",itbis);
  35.  
  36.      }
  37.  
  38.      valor=tsueldo-Efectivo;
  39.      gotoxy(42,23);printf("%.2f",valor);  
  40.  
  41. getch();          
  42.  
  43. }


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 02:28 am
repito
hombre cuando programes, sientate a pensar bien la logica primero ;)

Código
  1. devuelta=tsueldo-Efectivo;  
  2.      gotoxy(40,21);scanf("%f",&Efectivo);
  3.      gotoxy(40,23);printf("%.2f",devuelta);  

primero restas el efectivo y luego le das valor...

Citar
devuelta = 1800 - 0
efectivo = 2000
imprimir(devuelta) -> 1800


debe ser
Código
  1.      gotoxy(40,21);scanf("%f",&Efectivo);
  2.      devuelta=tsueldo-Efectivo;  
  3.      gotoxy(40,23);printf("%.2f",devuelta);  
para que sea

Citar
efectivo = 2000
devuelta = 2000- 1800

imprimir(devuelta) -> 200



Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 02:34 am
ya lo termine iva borra lo que puso hace 6min  

solo tuve que pensar un chin







Gracias Engel Lex Se Le Agradece mucho



Código
  1. #include<stdio.h>
  2. #include<conio.c>
  3.  
  4. char Descripcion[40];
  5. int s=5,x=0;
  6.  
  7. float Efectivo=0,devuelta,valor,tsueldo,itbis,Precio;
  8.  
  9. main()
  10.  
  11. {
  12.      textbackground(WHITE);
  13.      textcolor(6);
  14.      clrscr();
  15.      gotoxy(10,1);printf("------------------------------------------------------------------");
  16.      gotoxy(27,2);printf("FACTURA PARA EL CONSUMIDOR");
  17.      gotoxy(10,3);printf("------------------------------------------------------------------");
  18.      gotoxy(10,4);printf("Descripcion                Itbis                      Precio RD$");
  19.      gotoxy(10,5);printf("------------------------------------------------------------------");
  20.      gotoxy(10,18);printf("------------------------------------------------------------------");
  21.      gotoxy(52,17);printf("Total-->RD$");
  22.      gotoxy(30,21);printf("Efectivo:RD$");
  23.      gotoxy(30,23);printf("Devuelta:RD$");
  24.     for(x=1; x<=5; x=x+1)
  25.  
  26.      {
  27.          s=s+1;
  28.          fflush(stdin);
  29.          gotoxy(10,s);scanf("%s",&Descripcion);
  30.          gotoxy(66,s);scanf("%f",&Precio);
  31.          tsueldo=tsueldo+Precio;
  32.          itbis=0.18*Precio;
  33.          gotoxy(64,17);printf("%.2f",tsueldo);
  34.          gotoxy(38,s);printf("%.2f",itbis);
  35.  
  36.      }
  37.      Efectivo=0;
  38.      gotoxy(42,21);scanf("%f",&Efectivo);
  39.      valor=tsueldo - Efectivo;
  40.      gotoxy(42,23);printf("%.2f",valor);  
  41.  
  42. getch();          
  43.  
  44. }
  45.  


(http://lookpic.com/O/i2/1770/qIlSNjyU.jpeg)

Mod: No hagas doble post, usa el botón modificar


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 02:45 am
te falta algo... un error logico... da -900 por qué? ;) corrigelo


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 03:04 am
Código
  1.  
  2.      gotoxy(42,21);scanf("%f",&Efectivo);
  3.      Efectivo=0;
  4.      valor=Efectivo - tsueldo;
  5.      gotoxy(42,23);printf("%.2f",valor);


ya era el valor

Ahora Ni Se Donde ponerlo  como quiere Sale Menos


Título: Re: Programacion Factura: DevC++
Publicado por: engel lex en 26 Abril 2015, 03:36 am
Código
  1. gotoxy(42,21);scanf("%f",&Efectivo);
  2. Efectivo=0;//<- error!!! esto no va
  3. valor=Efectivo - tsueldo;
  4. gotoxy(42,23);printf("%.2f",valor);

mira lo que haces! lees el valor de efectivo y luego lo vuelves 0!!! cuidado con eso!


Título: Re: Programacion Factura: DevC++
Publicado por: R3Z en 26 Abril 2015, 03:51 am
si me di cuenta lo estaba declarando dos veces


Gracias Engel Lex Fuiste una Gran ayuda