wenas gente para mostrar lo que dice el ejercicio la (diferencia) hice si el stock real es mayor al stock minimo se restara asi obtengo lo que le falta para llegar al minimo pero no esta del todo bien si en cambio mi cantidad ya es menor al tope como muestro lo que le falta para llegar a ese. espero ayuda.
ejercicio
una fabrica de calzado elabora 10 modelos diferentes de zapatos en los numeros 34 al 45. en un momento dado esta fabrica desea conocer, para cada modelo, los numeros de zapatos cuyo stock esta por debajo del stock minimo que tiene fijado la fabrica.
para obtener esta informacion se han preparado 2 lotes, 1er lote con el stock minimo de cada modelo y numero de calzado.son 120 tarjetas. cada una de las cuales tiene.
modelo( 1 a 10)
numero de calzado (un numero entre 34 y 45)
stock minimo (una cantidad entera)
2do lote con la cantidad existente de cada modelo y numero de zapato.y cada tarjeta de informacion tiene:
modelo( 1 a 10)
numero de calzado (de 34 a 45)
cantidad en existencia (nro entero)
finaliza con una tarjeta con modelo !=0
contruya un programa para obtener un listado con todos los modelos y numeros de zapatos cuyo stock real es menor que el stock minimo, indicando ese faltante. informar asi:
modelo numero diferencia
1 37 -10
1 42 -12
#include <stdio.h>
#include<conio.h>
#include <string.h>
void main (void)
{
int m,cant,cante,nc,dif;
int mte[3][3]={0};
int stmn[3][3]={0};
for(int i=0; i<9; i++)
{
printf("modelo (3mx) "); //reduje los valores a validar asi lo hago mas rapido :P
scanf("%d",&m);
printf("nro calzado (34 a 36) ");
scanf("%d",&nc);
printf("stock minimo ");
scanf("%d",&cant);
stmn[m-1][nc-34]+=cant;
}
printf("modelo (3mx) ");
scanf("%d",&m);
while(m!=0)
{
printf("nro calzado (34 a 36) ");
scanf("%d",&nc);
printf("cantidad existente ");
scanf("%d",&cante);
mte[m-1][nc-34]+=cante;
printf("modelo (3mx) ");
scanf("%d",&m);
}
for(int k=0; k<3; k++)
{
for(int j=0; j<3; j++) // tengo que mostrar para cada modelo los nros zapatos cuyo stock real
{ // es menor que el minimo
if(mte[k][j]>stmn[k][j]) //la forma que use para obtener la diferencia era si mi cantidad era
//mayor resto con el stock minimo
{ //pero si en realidad mi stock real es menor al minimo como muestro la diferencia
dif=mte[k][j]-stmn[k][j]; //espero ayuda gracias
printf( " modelo %d nro zapato %d, la diferencia es %d \n",k+1,j+34,dif);
}
}
}
}