Ir ao conteúdo
  • Cadastre-se

Gerar uma matriz multidimensional


Posts recomendados

Pessoal queria saber se alguém poderia me ajudar com esse problema :

Descrição

Escreva um programa que leia um número inteiro N (0 ≤ N ≤ 100) que corresponde à ordem de uma matriz bidimensional de números inteiros e imprima a matriz de acordo com o exemplo de saida.

Formato de entrada

A entrada consiste de vários números inteiros, um por linha, correspondendo a ordens de matrizes a serem construídas. O fim da entrada é indicado por zero (0).

Formato de saída

Para cada número inteiro de entrada, imprimir a matriz correspondente de acordo com o exemplo. Nenhum espaço deve ser impresso após o último caractere de cadalinha da matriz. Uma linha em branco deve ser impresso após cada matriz.

Ao fim de tudo, uma quebra de linha.

Queria saber como faço para gerar o a matriz que ele me pede, encontrei exemplos na net mas todos eram para tamanhos já definidos e não conseguir transformar para exemplos aonde o tamanho é indefinido .

Se alguém poder me ajudar agradeço muito .

Sou novo no fórum.

Segue aqui o link do problema https://www.thehuxley.com/problem/323

 

Link para o comentário
Compartilhar em outros sites

Quando o tamanho é indefinido, ao invés de usar alocação estática, você usa alocação dinâmica.

 

Lembre-se que o computador sempre vai ler matrizes de forma linear, ou seja, não importa a dimensão dela (se é 2x2, 3x3, 4x4 ou maior), os valores sempre serão lidos um por um e armazenados na memória.

 

No caso do exercício ali, é bom você usar um padrão. Para linhas que terminam em números pares, você coloca x números iguais e no meio um número superior. Para linhas que terminam em números ímpares, você coloca os números iguais normalmente, sempre formando o quadrado.

 

A lógica é bem simples.

 

Mas lembre-se que há um limite para o tamanho dessas matrizes, que dependendo do compilador que você estiver usando, vai de 25 a 30 ponteiros.

 

O limite seria mais ou menos tentar fazer isso na alocação:

 

int****************************************** variavel = nullptr;

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...