Bá tenho um exercicio bem chato eu acho de fazer, não sei se meu pensamento está certo, gostaria de opiniões, ele não está guardando os valores certos....
Criar uma matriz de 6 linhas e 10 colunas.Ler numeros até que o usuario encerre o programa.Distribuir os numeros de acordo com as regras abaixo descritas.
a) os primos guardados na 1 linha;
b)os pares guardados na 2 linha;
c)os impares guardados na 3 linha;
d)os positivos guardados na 4 linha;
e)os negativos guardados na 5 linha;
f)os zeros guardados na 6 linha;
Caso o numero lido obedeça a mais de um critério, ele deve ser guardado em todas as linhas que satisfazem a condição.Quando não houver mais espaços em uma linha de critério, esta passa a ser ignorada.
# define LINHA 6
# define COLUNA 10
#include <stdio.h>
int main (void)
{
int matriz [LINHA][COLUNA],l,c,vet[1000],i=0,x=0;
char valida;
int a=0,b=0,ce=0,de=0,e=0,fe=0;
int resto,resto3,resto5,resto7;
printf ("Voce deseja digitar um numero? s para sim ou qualquer tecla para não");
fflush(stdin);
scanf ("%c",&valida);
do{
printf ("Digite um numero ");
scanf ("%d",&vet[x]);
x++;
printf ("Voce deseja digitar um numero? s para sim ou qualquer tecla para não");
scanf ("%c",&valida);
}
while (valida!='s');
for (i=0;i<x;i++){
resto=vet[i]%2;
resto3=vet[i]%3;
resto5=vet[i]%5;
resto7=vet[i]%7;
if (resto==0){
if (b<10){
matriz[1][b]=vet[i];
b++;
}
}
if (resto!=0){
if (ce<10){
matriz[2][ce]=vet[i];
ce++;
}
}
if (vet[i]>0){
if (de<10){
matriz[3][de]=vet[i];
de++;
}
}
if (vet[i]<0){
if (e<10){
matriz[4][e]=vet[i];
e++;
}
}
if(vet[i]==0){
if (fe<10){
matriz[5][fe]=vet[i];
fe++;
}
}
if ((vet[i]==1)||(vet[i]==2)||(vet[i]==3)||(vet[i]==5)||(vet[i]==7)){
if (a<10){
matriz[0][a]=vet[i];
a++;
}
}
else if ((resto!=0)&&(resto3!=0)&&(resto5!=0)&&(resto7!=0)){
if (a<10){
matriz[0][a]=vet[i];
a++;
}
}
}
for (l=0;l<LINHA;l++)
{
for (c=0;c<COLUNA;c++){
printf (" %d ",matriz[l][c]);
}
printf ("\n");
}
system ("pause");
return (0);
}
Pergunta
alex_dino
Bá tenho um exercicio bem chato eu acho de fazer, não sei se meu pensamento está certo, gostaria de opiniões, ele não está guardando os valores certos....
Criar uma matriz de 6 linhas e 10 colunas.Ler numeros até que o usuario encerre o programa.Distribuir os numeros de acordo com as regras abaixo descritas.
a) os primos guardados na 1 linha;
b)os pares guardados na 2 linha;
c)os impares guardados na 3 linha;
d)os positivos guardados na 4 linha;
e)os negativos guardados na 5 linha;
f)os zeros guardados na 6 linha;
Caso o numero lido obedeça a mais de um critério, ele deve ser guardado em todas as linhas que satisfazem a condição.Quando não houver mais espaços em uma linha de critério, esta passa a ser ignorada.
Link para o comentário
Compartilhar em outros sites
0 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.