tenho um programa perfeito que faz exatamento o que preciso. porem, como podem ver, a partir da variavel "a32", o COMPUTADOR faz uma conta errada!!!! não entendi por que ainda... alguém pode me ajudar???
esse programa pega um numero de 9 digitos qualquer e o divide em 9 variaveis, que ele depois coloca em forma de matriz 3x3. eu conferi a estrutura inumeras vezes, e não vi falhas ainda. o processo fica perfeito ateh a variavel "a32", que ao executar o script, coloca na variavel um valor diferente do 8º digito do numero inicialmente digitado. o erro se propaga, claro, e tb mostra um valor errado em "a33"
segue abaixo o programa para que possam me ajudar a identificar o erro.
agradeço antecipadamente se puderem me ajudar!!! preciso disso para amanha!!! =(
Pergunta
lapod
tenho um programa perfeito que faz exatamento o que preciso. porem, como podem ver, a partir da variavel "a32", o COMPUTADOR faz uma conta errada!!!! não entendi por que ainda... alguém pode me ajudar???
esse programa pega um numero de 9 digitos qualquer e o divide em 9 variaveis, que ele depois coloca em forma de matriz 3x3. eu conferi a estrutura inumeras vezes, e não vi falhas ainda. o processo fica perfeito ateh a variavel "a32", que ao executar o script, coloca na variavel um valor diferente do 8º digito do numero inicialmente digitado. o erro se propaga, claro, e tb mostra um valor errado em "a33"
segue abaixo o programa para que possam me ajudar a identificar o erro.
agradeço antecipadamente se puderem me ajudar!!! preciso disso para amanha!!! =(
int main(void)
{
float numero;
int a11, a12, a13, a21, a22, a23, a31, a32, a33, numeroestranhoquearrumouoproblema;
scanf("%f", &numero);
a11 = (int)((numero)/100000000);
a12 = (int)((numero)/10000000)-10*a11;
a13 = (int)((numero)/1000000)-100*a11-10*a12;
a21 = (int)((numero)/100000)-1000*a11-100*a12-10*a13;
a22 = (int)((numero)/10000)-10000*a11-1000*a12-100*a13-10*a21;
a23 = (int)((numero)/1000)-100000*a11-10000*a12-1000*a13-100*a21-10*a22;
a31 = (int)((numero)/100)-1000000*a11-100000*a12-10000*a13-1000*a21-100*a22-10*a23;
a32 = (int)((numero)/10)-10000000*a11-1000000*a12-100000*a13-10000*a21-1000*a22-100*a23-10*a31;
a33 = (int)((numero)/1)-100000000*a11-10000000*a12-1000000*a13-100000*a21-10000*a22-1000*a23-100*a31-10*a32;
printf("%d", a11);
printf(" %d ", a12);
printf("%d \n", a13);
printf("%d", a21);
printf(" %d ", a22);
printf("%d \n", a23);
printf("%d", a31);
printf(" %d ", a32);
printf("%d \n", a33);
system("PAUSE");
return 0;
}
Link para o comentário
Compartilhar em outros sites
3 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.