Dev - C++ - Hola necesito ayuda con un programa de almacen en lenguaje c

 
Vista:
Imágen de perfil de luis daniel

Hola necesito ayuda con un programa de almacen en lenguaje c

Publicado por luis daniel (1 intervención) el 31/05/2015 03:18:06
Bueno mi problema es el siguiente, mi programa guarda los datos generales de un producto para quedar en la memoria secundaria. Una vez guardado el producto este se puede modificar borrar etc... los datos que pido para el producto son:

-nombre del producto
-descripción del producto
-stock del producto

ahora lo que necesito es que cuando el usuario presione la tecla para consultar el producto con un stock menor a 5, este me muestre solo esos productos con el stock menor a 5, lo mismo para los productos con stock mayor a 25. Pero al querer hacer esto no lo hace correctamente mi código por favor ayuda!! les muestro mi código:

Por favor díganme como hacer para solucionarlo creo que lo que hace mal mi programa sucede en el case 5 y 6.

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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
typedef struct {
int codigo;
float numero,dato;
char des[40];
char nombre[20];
float precio;
int  subopcion,leerentero;
float existencia;} PRODUCTO;
 
int menu(void) {
int op1;
printf("\n\n\t\t ***MI PROPIO MENU***\n\n\t\t");
printf("\n\n\t 1-. ALTAS DE PRODUCTOS           |");
printf("\n\n\t 2-. BAJAS DE PRODUCTOS           |");
printf("\n\n\t 3-. CAMBIOS DE PRODUCTOS         |");
printf("\n\n\t 4-. LISTAR PRODUCTOS             |");
printf("\n\n\t 5-. STOCK MENOR A 5              |");
printf("\n\n\t 6-. STOCK MAYOR A 25             |");
printf("\n\n\t 7-. SALIR                        |");
printf("\n\n\n\t DAME LA OPCION DESEADA           |\n\n");
printf("\n -");
 
scanf("%d",&op1);
return(op1);
}
 
int main(void){
PRODUCTO b[100];
int op=0, I=0,J,si;
while(op < 7) {
system("cls");
op = menu();
system("cls");
switch (op){
case 1:{
printf("\n ALTA DE PRODUCTO");
do {fflush( stdin );
printf("\n dame el nombre del producto: ");
gets(b[I].nombre);
fflush( stdin );
printf("\n dame la descripcion del producto: ");
gets(b[I].des);
printf("\n dame el stock:");
scanf("%d",&b[I].numero);
 
printf("\n\n Para agregar otro producto presione 1\n\n o cualquier numero para continuar");
scanf("%d",&si);
I=I+1;
}while(si==1);
break;
}
 
case 2:{
printf("\n bajas de productos");
printf("\n");
 
 
 
break;
}
case 3:{
printf("\n cambios de productos");
getche();
break;
}
case 4:{
printf("\n listas de productos\n");
for(J=0;J<I;J++){
printf("\n %s...%s...%d",b[J].nombre,b[J].des,b[J].numero);
 
}
getche();
break;
}
 
case 5:{
printf("\n Productos con stock menor a 5");
for(J=0;J<I;J++){
printf("\n%s\n%s\n%d",b[J].nombre,b[J].des,b[J].numero<5);
}
getche();
break;
}
case 6:{
printf("\n Productos con stock mayor a 25");
for(J=0;J<I;J++){
printf("\n%s\n%s\n%d",b[J].nombre,b[J].des,b[J].numero>25);
}
getche();
break;
}
case 7:{
printf("\n salir");
getche();
break;
}
default:{
printf("\n\n La opcion no existe presione del 1 al 7\n\n\n");
system("pause");
menu();
break;
}
 
if(op < 7) {
printf("\n\n");
system("PAUSE");
}
 
}
}
  system("PAUSE");
  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