Sábado 14 de Diciembre de 2024, 15:54
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Re: Amiguitos les pido ayuda con esto
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Re: Amiguitos les pido ayuda con esto (Leído 2245 veces)
ana carolina
Nuevo Miembro
Mensajes: 15
Re: Amiguitos les pido ayuda con esto
«
en:
Martes 6 de Mayo de 2003, 08:08 »
0
Tengo que hacer un codigo de esto
El administrador de una tienda de música desea automatizar el proceso de cobro a sus clientes, por esto le solicita a Ud. que elabore un programa en C++ que efectúe las operaciones que hagan mas eficiente el cobro, así:
Según la popularidad del artista, los discos se clasifican en 4, y de acuerdo a esto varía el precio de los discos :
DISCOS PRECIO NETO
CLASE A 30000
CLASE B 20000
CLASE C 15000
CLASE D 10000
La tienda también ofrece descuentos, de acuerdo al cliente y a la cantidad de discos:
Según el cliente:
NORMAL 5 %
ESPECIAL 15 %
Según el número de discos:
3 < = Número de discos < 5 10 %
5 < = Número de discos < 8 15 %
Número de discos > = 8 20 %
(Los descuentos se hacen sobre el precio neto del disco)
El programa debe pedir los datos pertinente y al final debe entregar:
• Número de discos vendidos al cliente.
• Tipo de cliente
• Total descuento
• Total a pagar
Se desea que el programa solo termine cuando el usuario (cajero) así lo desee, o sea, que si el programa terminó de hacer los cálculos de una venta, y el usuario desea continuar, entonces el programa debe regresar a la parte inicial para realizar las operaciones de una nueva venta .
Tweet
ana carolina
Nuevo Miembro
Mensajes: 15
Re: Amiguitos les pido ayuda con esto
«
Respuesta #1 en:
Martes 6 de Mayo de 2003, 08:10 »
0
si alguien me puede explicar le estoy muy agradecida
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: Amiguitos les pido ayuda con esto
«
Respuesta #2 en:
Martes 6 de Mayo de 2003, 16:02 »
0
Esta es la idea de loq ue debe hacer el programa:
etapas
a-preguntar que clase de cliente es
b-preguntar cuantos discos y de que clase de discos desea comprar
c-calcular
etapa a-clase de clientes
se debe mostrar en pantalla las clases de clientes hay y preguntar al cliente de que clase es el.
b-preguntar cuantos discos y de que clase de discos desea comprar
Se muestran en pantalla las clases de discos y se pregunta cuantos disco y de que clase...se hace la multiplicacion y se guarda el resultado en una variable,
calculos
luego teniendo en cuenta estos datos se calculan los descuentos...tener en cuenta cantidad de discos, clase de disco, y clase de cliente.Mostrar en pantalla resultados.
Esto es lo que debe de hacer el rpograma, pero debes tebner en cuenta que una vez hechos los calculos debes pregunstr sui desea volver a comprar, si responde si..tu programa vuelve a preguntar si es espoecial o normal, sio responde no tu programa se sale..
b-preguntar cuantos discos y de que clase de discos desea comprar.
En resumen tu programa queda asi:
Código: Text
int main()
{
int cantidad=0, valor=0, canttotal=0,valtotal=0;
int resp=0, esp=0;
int decesp=0, desccant=0;
int siguecompra=0;
while(resp==0)
{
//dentro de este bucle se controla si desea seguir o no
ptintf("es cliente 1normal, 2.especial");
scanf("%d",&esp);
if (esp==2)//descuento segun si es especial o no
descesp=15
else
desesp=5;
/*dentro de este bucle se controlan las compras*/
while(siguecompra=0)
{
//mostrar en pantalla los datos
//pedir datos de cantidad
//pedir datos de tipo de disco
//establecer decuento segun cantidad
//establecer descuento segun tipo de cliente(ya cklculado al comienzo)
//hacer los calculos y acumularlos encaso de que se quiera seguir comprando
printf("otra compra 1.no 0.si");
scanf("%d",&siguecompra);
}
// mostrar Número de discos vendidos al cliente.
// Tipo de cliente
// Total descuento
//Total a pagar
printf("otra compra 1.no 0.si");
scanf("%d",&resp);
}
//fin
return 1;
}
Bueno este fue a groso modo el bosquejo de tu programa..si tienes alguna duda no dudes en hacermela saber que con gusto te ayudare.
Chau
Juank
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
ana carolina
Nuevo Miembro
Mensajes: 15
Re: Amiguitos les pido ayuda con esto
«
Respuesta #3 en:
Martes 6 de Mayo de 2003, 17:47 »
0
Juan Te estoy muy agradecida:
lei tu perfil y me di cuenta que sos de colombia, yo tambien, soy de medellin, y estudio en la Universidad de Antioquia, es mi primer materia de Computadores I y laboratorio, nos pusieron a hacer este codigo, pero solo nos han enseñado, la funcion IF, la funcion while no la han explicado, por eso es que estoy en problemas.
Juan, sera posible que te pueda seguir escribiendo a tu email, para que me colabores con algunas dudas que tengo?
Muchas Gracias
Att
Ana
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: Amiguitos les pido ayuda con esto
«
Respuesta #4 en:
Martes 6 de Mayo de 2003, 17:58 »
0
claro que me puedes escribir al mail, aunque preferirira que tambien lo hicieras en el foro, porque al solucionar tus inquietudes tambien se pueden solucionar las de otras pesonas ..no crees?... de todos modos puedes escribicrme, siempre es rico tener amigos cerca.
Con respecto a lo del while...puedes utilizar esto otro, pero se supone que va en contra de los princiopios de programacion estructurada..de todos modos como no te han enseñado más...
while(esp==0)
{
...
...
}
cambialo por
bandera:
...
...
...
if(esp==0)
goto bandera;
esto hace lo mismo que el while
espero que te sirva de mucho .
chauu
Juank
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
ana carolina
Nuevo Miembro
Mensajes: 15
Re: Amiguitos les pido ayuda con esto
«
Respuesta #5 en:
Martes 6 de Mayo de 2003, 18:34 »
0
Hola Juan.
Bueno entonces te voy a decir las inquietudes que tengo respecto a este codigo.
1) Tengo que hacer el programa en turbo c++ , hay unas partes que pusiste pero no entiendo como:
scanf("%d",&esp);
2)Donde colocaste una instruccion dentro de / / queres decir que hay tengo que completar el codigo con las operaciones?
3)al principio del codigo te faltaron las librerias conio.h y iostream.h?
4) he visto algunos programas con una introduccion dentro de un cuadro, me podrias decir como se hace?, o me podes dar una recomendacion para hacer una buena presentacion del programa?
Gracias
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: Amiguitos les pido ayuda con esto
«
Respuesta #6 en:
Martes 6 de Mayo de 2003, 18:56 »
0
1-Tengo que hacer el programa en turbo c++ , hay unas partes que pusiste pero no entiendo como:
scanf("%d",&esp);
scanf captura un valor digitado en la pantalla y lo uarda en una variable, el & es porque trabaja por referencia..no te dire mucho de eso de "referencia" para no complicarte, en este caso lo que digiten en pantalla se guarda en la variable esp.
2-Donde colocaste una instruccion dentro de / / queres decir que hay tengo que completar el codigo con las operaciones?
si, de hecho si tu colocas en c estas dos // lo que escribas en frente son solo comentarios y no cuentan en el programa.
3-al principio del codigo te faltaron las librerias conio.h y iostream.h?
si y no.... si fuera un programa si, de hecho deberia haber colocado
#include<stdio.h>
conio.h actualmente ya no es necesario pero en turboc que no es muy actual si es necesario. iostream... bueno no es c standart asi que no lo uso..pero he visto que casi todo el mundo si lo usa.
4) he visto algunos programas con una introduccion dentro de un cuadro, me podrias decir como se hace?, o me podes dar una recomendacion para hacer una buena presentacion del programa?
Eso se hace con la funcion printf, escribiendo caracteres ascii:
desde el caracter 191 hasta el 197
y desde 200 hasta 206
y desde 185 a 188..
que que es esto.. si en turbo c precionas ALT + uno de estos nujmeros..obtendras partes del borde de un cuadro, asi que si colocas y ordenas esto dentro de printf, te podras dibujar el cuadro.
Esto es la manera mas sencilla de hacer esa presentacion.
Recuerda que el codigo que te coloque arriba es solo un modelo de guia, debes basarte en este modelo para poder hacer tu programa mas facilmente, porque si observas ese modelo por si solo no hace nada, si tienes problemas en el desarrollo del programa me cuentas y te voy ayudando en la medida que mi trabajo me lo permita.
Juank
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
ana carolina
Nuevo Miembro
Mensajes: 15
Re: Amiguitos les pido ayuda con esto
«
Respuesta #7 en:
Jueves 8 de Mayo de 2003, 17:51 »
0
Juan kis:
Te pido disculpas, por que mi compañero de trabajo es algo intenso, y se adelanto a escribirte, la verdad tenia pensado recibir la clase en la U sobre el condicional mientras, pero aun no lo vi, por lo que empece a adelantar el trabajo sin el while y llegue a esto:
#include <iostream.h>
#include <conio.h>
void main()
{
float cantda,cantdb,cantdc,cantdd;
float valorda,valordb,valordc,valordd;
float tipoclien,descesp,totald,descant,valortotald;
clrscr();
textcolor(4);textbackground(7);
gotoxy(20,10);
textcolor(4);textbackground(7);
cout<<"El Cliente Es Normal(1) o Especial(2)? 1 o 2 ? ";cin>>tipoclien;
if (tipoclien=1)
{descesp=5;}
else
{descesp=15;}
clrscr();
gotoxy(20,10);
cout<<"Digite La Cantidad De Discos Clase A ";cin>>cantda;
if (cantda>=1)
{valorda=cantda*30000;}
else {valorda=0;}
clrscr();
gotoxy(20,10);
cout<<"Digite La Cantidad De Discos Clase B ";cin>>cantdb;
if (cantdb>=1)
{valordb=cantdb*20000;}
else {valordb=0;}
clrscr();
gotoxy(20,10);
cout<<"Digite La Cantidad De Discos Clase C ";cin>>cantdc;
if (cantdc>=1)
{valordc=cantdc*15000;}
else {valordc=0;}
clrscr();
gotoxy(20,10);
cout<<"Digite La Cantidad De Discos Clase D ";cin>>cantdd;
if (cantdd>=1)
{valordd=cantdd*10000;}
else {valordd=0;}
totald=cantda+cantdb+cantdc+cantdd;
if ((totald>=3)&&(totald<5))
{descant=10;}
else
if ( (totald>=5)&&(totald<8))
{descant=15;}
else {descant=20;}
clrscr();
gotoxy(20,10);
cout<<"Total de discos "<<totald;
cout<<"descuento cantidad"<<descant;
valortotald=valorda+valordb+valordc+valordd;
cout<<"valor total "<<valortotald;
cout<<"descuento especial "<<descesp;
getch(); }
Hasta ahora me funciona todo menos el de la pregunta si es cliente normal o especial
estuve revisando pero no encontre el problema, te pido el favor que me digas cual es el error, y me ayudes con el condicional while, por lo que lei en un libro basta con encerrar todo el codigo dentro de:
While (condicion)
{ejecute}, pero no se que condicion darle, buen Juan de nuevo te agradezco.
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: Amiguitos les pido ayuda con esto
«
Respuesta #8 en:
Jueves 8 de Mayo de 2003, 18:04 »
0
lo que pasa es que ya hice el programa,
lo hice con while, scanf y printf
si lo requieres te explico como funcionan
y me dices para que te pase el programa.
Juank
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
ana carolina
Nuevo Miembro
Mensajes: 15
Re: Amiguitos les pido ayuda con esto
«
Respuesta #9 en:
Jueves 8 de Mayo de 2003, 18:43 »
0
Claro que si!!
Por Fa, explicame lo del while, lo del scanf no se que es, pero el printf cumple la mismas funciones del cout???, ah porfis juan, ayudame con algunas tecnicas para una buena presentacion, tambien quisiera incluir una imagen al principio del programa como un logo de un cd o algo, para que quede mas lindo,
Gracias again..
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Amiguitos les pido ayuda con esto
«
Respuesta #10 en:
Jueves 8 de Mayo de 2003, 18:51 »
0
conectate al chat y charlamos...
bueno, creo que no alcansaste a ver el mensaje..
Lo de la imagen tendra que esperar, porque te haria falta aprender muchisisisimo más... lo podriamos hacer pero el profesor nunca tye creeria que lo hiciste tu... más adelante tal vez , por el momento no te preocupes por eso que hasta ahora estas comenzando.
Lo de la presentacion..en el programa que hice ya inclui un poco de eso para que se den una idea y lo mejoren... necesito que te conectes al chat para explicarte....
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Re: Amiguitos les pido ayuda con esto