Array
(
)

Duvidas na Transformação da Matriz

Cd.wagner.sena
   - 03 jun 2009

Pessoal tenho q desenvolver o algoritmo abaixo:

Crie um algoritmo capaz de ler uma matriz qualquer e realize a seguinte
transformação: os elementos de cada linha serão deslocados à direita a
quantidade de posições da linha, retornando ao início quando ultrapassar o
término da linha. Exemplo:
1 4 7 Linha 1 ( 1 posição à direita) -> 7 1 4
2 5 8 Linha 2 ( 2 posições à direita) -> 5 8 2
3 6 9 Linha 3 ( 3 posição à direita) -> 3 6 9

segue abaixo o codigo criado, porem nao consigo realizar a transformação

#Código


#include <stdio.h>
include <stdlib.h>

int main(int argc, char *argv[])
{
int Linha,Coluna,NL, NC, Aux;
printf ("\t\tLISTA 05 EXERCICIO 4\n\n");
printf("informe a quantidade de linhas da Matriz: ");
scanf("¬i", &NL);
printf("informe a quantidade de Colunas da Matriz: ");
scanf("¬i", &NC);
int matriz[NL][NC];
// popula a matriz inicial
for(Linha = 0;(Linha < NL); Linha++)
for(Coluna = 0; (Coluna < NC); Coluna++){
printf("informe o valor para posicao ¬i x ¬i: ", Linha + 1, Coluna + 1);
scanf("¬i",&matriz[Linha][Coluna]);
}
// imprime a matriz inicial
printf("\nMATRIZ INICIAL\n");
for(Linha = 0;(Linha < NL); Linha++){
for(Coluna = 0; (Coluna < NC); Coluna++){
printf("¬i ", matriz[Linha][Coluna]);
}
printf("\n");
}
// Transformação da Matriz Inicial
//??????????

// imprime a matriz transformada
printf("\nMATRIZ INICIAL\n");
for(Linha = 0;(Linha < NL); Linha++){
for(Coluna = 0; (Coluna < NC); Coluna++){
printf("¬i ", matriz[Linha][Coluna]);
}
printf("\n");
}
system("PAUSE");
return 0;
}