C/Visual C - Problema básico en lenguaje C.

 
Vista:

Problema básico en lenguaje C.

Publicado por Heals (2 intervenciones) el 15/11/2016 03:56:03
Bueno la verdad trate de hacerlo hasta donde pude, me cuesta entender el while todavía.Me gustaría que me ayuden a completarlo(para entenderlo), y también quería saber¿esta bien la parte del vector para mostrar el total?. Muchas gracias. Si no entienden algo de lo que hice me avisan.


/*En una casa de ropa se ofrece tres prendas en promocion. Las tres prendas posibles con sus repectivos precios son:
1- Camisa, la cual cuesta $400.
2-Pantalon, el cual cuesta $1000.
3-Campera, la cual cuesta $1500.

De acuerdo a la opcion elegida tenemos la posibilidad de elegir la promocion para dicha opcion o simplemente tomar solo la opcion elegida.

-Camisa.
a) Camisa+remera ($200 mas).
b) Camisa sola.

-Pantalon.
a)Pantalon+medias ($100 mas).
b) Pantalon solo.

-Campera.
a)Campera+camisa ($200 mas):
b) Campera sola.

Informar el precio final de acuerdo a las opciones elegidas, sumando los adicionales correspondientes segun la promocion seleccionada. Esto se debera almacenar en un vector de 3 posiciones que contendra los saldos totales de las
opciones. Asi mismo se informara por separado a cuanto asciende el saldo total de la compra.*/




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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include<stdio.h>
#include<conio.h>
 
int main (){
 
	int cat=0,opc=0,vec[3];
	char c;
 
	printf ("\n¿Desea realizar una nueva compra o adquirir otro producto? Presione la tecla s para continuar.");
	scanf ("%c",&c);
 
     while (c=='s')
     {
 
	 printf ("\t\tTienda de ropa.");
	printf ("\nCatalogo de productos.");
	printf ("\n Seleccione la opcion que desee a continuacion: \n 1.Camisa. \n2.Pantalon. \n3.Campera.");
 
	switch (cat)
	{
		case 1: printf ("\n La opcion elegida posee la siguiente promocion: Camisa+remera ($200 mas), para seleccionar la promocion presione la tecla 1, y cualquier otra tecla para el producto solo.");
		         scanf ("%i",&opc);
		         if(opc==1)
		         {
					vec[1]=600;
				  }
				  else
				  {
					vec[1]=400;
				  }
		break;
 
			case 2: printf ("\n La opcion elegida posee la siguiente promocion: Pantalon+medias ($100 mas), para seleccionar la promocion presione la tecla 1, y cualquier otra tecla para el producto solo.");
		         scanf ("%i",&opc);
		         if(opc==1)
		         {
					vec[2]=1100;
				  }
				  else
				  {
					vec[2]=1000;
				  }
		break;
			case 3: printf ("\n La opcion elegida posee la siguiente promocion: Campera+camisa ($200 mas), para seleccionar la promocion presione la tecla 1, y cualquier otra tecla para el producto solo.");
		         scanf ("%i",&opc);
		         if(opc==1)
		         {
					vec[3]=1700;
				  }
				  else
				  {
					vec[3]=1500;
				  }
		break;
 
		    default: printf ("\nOpcion ingresada invalida");
 
	 }
 
}
 
	  int tot=0;
 
	tot=vec[1]+vec[2]+vec[3];
	printf ("El total a pagar es de:$%i",tot);
 
 
	getch ();
	return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 296
Bronce
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Problema básico en lenguaje C.

Publicado por agustin (272 intervenciones) el 15/11/2016 16:45:20
El vector esta mal usado, estas produciendo un desbordamiento. Los arrais empiezan con el índice 0 con lo que los tres elementos son vec[0], vec[1], vec[2].
Por otro lado, ya que haces uso de conio podrías usar para elegir las opciones una variable de tipo char y usar getch() en vez de scanf.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema básico en lenguaje C.

Publicado por Heals (2 intervenciones) el 15/11/2016 18:33:18
Si eso me lo habian dicho en otro foro, muchas gracias de todas maneras. Lo que no se es como colocar el while o si usar el for.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 296
Bronce
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Problema básico en lenguaje C.

Publicado por agustin (272 intervenciones) el 16/11/2016 07:36:43
En principio el while esta bien así aunque yo usaría un do while y la pregunta la haría al final del bucle y no al principio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar