Pessoal, fiz um código com a informação de vendas de uma loja, no período de 30 dias. O código varre todos os valores e imprime o i) DIA e ii) Maior QTD desse período.
A dúvida:
- quando eu altero de 30 para 29 dias, o código roda normalmente;
- quando eu altero de 29 para 28 dias, o código roda normalmente;
- quando eu altero de 28 para 27 dias, o código roda normalmente;
- quando eu altero de 27 para 26 dias, o código roda normalmente;
- quando eu altero de 26 para 25 dias, o código tem um PROBLEMA na SAIDA!
No 1 caso (com 30 dias) ele mostra a seguinte saída:
i: 0
qtd_venda: 0
dia_venda: 0
O dia de maior venda foi o 8, com a quantidade de 8999992
No 2 caso (com 25 dias) ele mostra a seguinte saída:
i: 0
qtd_venda: 0
dia_venda: 0
O dia de maior venda foi o 32767, com a quantidade de 0
Tentei rodar diversas vezes para encontrar a resposta mas não achei. Parece ser alguma coisa em relação e memória. Eu até mandei imprimir os valores para saber o que acontece quando eu altero de 26 pata 25 e na variável "dia_venda"aparece o valor 32767 (nos anteriores aparecia 0!).
Pergunta
renan_j
Pessoal, fiz um código com a informação de vendas de uma loja, no período de 30 dias. O código varre todos os valores e imprime o i) DIA e ii) Maior QTD desse período.
A dúvida:
- quando eu altero de 30 para 29 dias, o código roda normalmente;
- quando eu altero de 29 para 28 dias, o código roda normalmente;
- quando eu altero de 28 para 27 dias, o código roda normalmente;
- quando eu altero de 27 para 26 dias, o código roda normalmente;
- quando eu altero de 26 para 25 dias, o código tem um PROBLEMA na SAIDA!
No 1 caso (com 30 dias) ele mostra a seguinte saída:
i: 0
qtd_venda: 0
dia_venda: 0
O dia de maior venda foi o 8, com a quantidade de 8999992
No 2 caso (com 25 dias) ele mostra a seguinte saída:
i: 0
qtd_venda: 0
dia_venda: 0
O dia de maior venda foi o 32767, com a quantidade de 0
Tentei rodar diversas vezes para encontrar a resposta mas não achei. Parece ser alguma coisa em relação e memória. Eu até mandei imprimir os valores para saber o que acontece quando eu altero de 26 pata 25 e na variável "dia_venda"aparece o valor 32767 (nos anteriores aparecia 0!).
Alguém consegue me ajudar nessa?
-------------------- CÓDIGO 1 (OK)--------------------
# include <stdlib.h>
# include <stdio.h>
int main () {
int dia[30];
dia[0] = 11;
dia[1] = 23;
dia[2] = 54;
dia[3] = 77;
dia[4] = 13;
dia[5] = 2;
dia[6] = 26;
dia[7] = 8999992;
dia[8] = 40;
dia[9] = 218;
dia[10] = 2319;
dia[11] = 3438;
dia[12] = 99995;
dia[13] = 3;
dia[14] = 23;
dia[15] = 23;
dia[16] = 23;
dia[17] = 23;
dia[18] = 23;
dia[19] = 23;
dia[20] = 23;
dia[21] = 23;
dia[22] = 23;
dia[23] = 23;
dia[24] = 23;
dia[25] = 23;
dia[26] = 23;
dia[27] = 23;
dia[28] = 23;
dia[29] = 23;
for (int i = 0; i < 30; i++){
printf("%d_", dia);
}
int i =0;
int qtd_venda = 0;
int dia_venda;
printf("\n\ni: %d\n", i);
printf("qtd_venda: %d\n", qtd_venda);
printf("dia_venda: %d\n\n\n", dia_venda);
for (int i; i < 30; i++){
if (dia > qtd_venda){
dia_venda = (i + 1);
qtd_venda = dia;
}
}
printf("O dia de maior venda foi o %d, com a quantidade de %d\n", dia_venda, qtd_venda);
return 0;
}
-------------------- CÓDIGO 2 (PROBLEMA)--------------------
# include <stdlib.h>
# include <stdio.h>
int main () {
int dia[25];
dia[0] = 11;
dia[1] = 23;
dia[2] = 54;
dia[3] = 77;
dia[4] = 13;
dia[5] = 2;
dia[6] = 26;
dia[7] = 8999992;
dia[8] = 40;
dia[9] = 218;
dia[10] = 2319;
dia[11] = 3438;
dia[12] = 99995;
dia[13] = 3;
dia[14] = 23;
dia[15] = 23;
dia[16] = 23;
dia[17] = 23;
dia[18] = 23;
dia[19] = 23;
dia[20] = 23;
dia[21] = 23;
dia[22] = 23;
dia[23] = 23;
dia[24] = 23;
for (int i = 0; i < 25; i++){
printf("%d_", dia);
}
int i =0;
int qtd_venda = 0;
int dia_venda;
printf("\n\ni: %d\n", i);
printf("qtd_venda: %d\n", qtd_venda);
printf("dia_venda: %d\n\n\n", dia_venda);
for (int i; i < 25; i++){
if (dia > qtd_venda){
dia_venda = (i + 1);
qtd_venda = dia;
}
}
printf("O dia de maior venda foi o %d, com a quantidade de %d\n", dia_venda, qtd_venda);
return 0;
}
Editado por renan_jLink para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.