Problema com Matrizes

1. Problema com Matrizes

Gustavo Ziger
Wayy

(usa Outra)

Enviado em 15/03/2015 - 19:45h

Estou tentando resolver uma lista de exercícios para meu curso, mas travei em um dos problemas.

Escreva um algoritmo que leia 16 números informado pelo usuário para uma matriz 4x4. Exiba na tela somente os números positivos. No lugar dos números negativos imprima o carácter '&'.


Consegui a parte em que o usuário digita os elementos e em seguida é mostrada a matriz com os valores informados, com este código:

#include <stdio.h>

void main(){

int m[4][4], l, c;
int x = 1;

puts("Informe 16 números:");

for (l = 0; l < 4; l++)
for (c = 0; c < 4; c++) {
printf("Informe o elemento [%i]: ", x++);
scanf("%i" , &m[l][c]);
}

for (l = 0; l < 4; l++) {
for (c = 0; c < 4; c++) {
printf("[%i]", m[l][c]);
}
puts(" ");
}

}


Não consigo, usando o comando IF, o resultado que preciso. Como devo proceder?

Agradeço desde já,
Gustavo.


  


2. Re: Problema com Matrizes

Gustavo Ziger
wayy

(usa Outra)

Enviado em 15/03/2015 - 20:12h

SamL escreveu:

É só colocar um if dentro do segundo for antes de imprimir na tela. Por exemplo:

for (l = 0; l < 4; l++) {
for (c = 0; c < 4; c++) {
if (m[l][c] < 0) // verifica se é número negativo
printf(" & "); // imprime &
}
puts(" pula uma linha aqui");
}


NOTA: o código acima está incompleto mas você deve pesquisar como fazer. É simples. Pesquise como pular linha em C e como funciona o if() else


Consegui! Fiz uma alteração com else em seguida para imprimir o resto da matriz como o enunciado pedia. Deixei essa parte do código assim:

for (l = 0; l < 4; l++) {
for (c = 0; c < 4; c++) {

if (m[l][c] < 0) {
printf("[&]");
} else {
printf("[%i]", m[l][c]);
}
}
puts(" ");
}




3. Re: Problema com Matrizes

Paulo
paulo1205

(usa Ubuntu)

Enviado em 16/03/2015 - 08:56h

SamL escreveu:

Cara para pular linhas faça o seguinte, adicione \n no fim da string de saída. Por exemplo:

#include <stdio.h>
int main()
{
printf("Sou uma linha... \n");
puts("E eu também!...\n");
return 0;
}



puts() sempre avança linha ao final. Se você colocar "\n" como parte da string de formatação, vai avançar duas linhas.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts