exercício de Quadrado Mágico
Boa Tarde gostaria de ajuda neste exercício. Não Consegui fazer nada então se puderem postar uma solução bem explicada seria de grande ajuda.
"Segundo o wikipédia, "Quadrado mágico é uma tabela quadrada de lado n, onde a soma dos números das linhas, das colunas e das diagonaisé constante, sendo que nenhum destes números se repete."
Ex:
6 | 1 | 8
7 | 5 | 3
2 | 9 | 4
Neste problemas trataremos de quadrados mágicos de um tipo bem específico, os que possuem a medida n ímpar e uma lógica própia e bastante simples para sua contrução.
Iniciamos sempre pelo número 1, que deve ser colocado na coluna do meio da primeira linha. No exemplo acima ele está na coluna 2 da linha 1. A partir dele, determinamos a posição de todos os outros números, que são gerados em uma sequência aritmética crescente de 1 em 1 (ou seja, depois do 1 inicial, inserimos o 2 no quadrado, em seguida o 3, depois o 4, etc). Tendo colocado no quadrado um determinado número X em sua posição correta, a localização do próximo número, que chamaremos de Y, é relativamente simples: ele deve ficar na linha de cima de onde X está, na coluna anterior deste. Caso X esteja na primeira linha, Y deve ir para a última linha do quadrado (afinal, não há linha anterior à primeira linha); caso X esteja na primeira coluna, Y deve ser colocado na última coluna (no quadrado não existem colunas antes da primeira coluna, e inclusive é por isso que ela se chama primeira!). Essa regra só muda caso a posição onde deveria ser colocado o valor de Y já esteja sendo ocupada: nesse caso Y deverá ser colocado na célula imediatamente abaixo de X (linha de baixo, na mesma coluna).
Entrada
A entrada é composta por diversos casos de teste. Em cada caso, um valor N (0 N 25) é apresentado, indicando a dimensão de cada lado do quadrado mágico a ser construído. A entrada é encerrada com N = 0, valor esse que não deverá ser processado.
Saída
Seu programa deve imprimir, para cada caso de teste, o respectivo número e a mensagem “O valor de N não e impar”, sem acentos, caso N seja par, ou então imprimir o quadrado mágico correspondente, conforme o exemplo apresentado a seguir, que deverá ser seguido rigorosamente.
Discussão (1)
Carregando comentários...