A maior rede de estudos do Brasil

Uma matriz convencional contém duas dimensões (2D), ou seja, trabalha com linhas e colunas

Uma matriz convencional contém duas dimensões (2D), ou seja, trabalha com linhas e colunas.
Agora, imagine que você precisa desenvolver um código de uma matriz 3D, ou seja, em 3 dimensões, onde
existem linhas, colunas e profundidade.
Você resolve desenvolver o código para uma matriz de QUALQUER dimensão de número inteiros, e declara
as seguintes variáveis:
int linha, coluna, profundidade;
int Matriz3D[linha][coluna][profundidade];
Selecione a alternativa que contém uma possível implementação desta matriz 3D em linguagem C/C++, onde
a leitura dos valores inteiros são feitos.
 
A
for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
for (int k = 0; k < profundidade; k++)
{
Matriz3D[i][j][k] = scanf("%d",%numero);
}
}
}
Para uma matriz de 3 dimensões é necessário o uso de 3 FORs encadeados.
Além disso, a linguagem C/C++ permite que você adicione quantas dimensões forem necessárias,
através de colchetes [] extras. Em 3 dimensões fica: Matriz3D[i][j][k].
 
B for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
for (int k = 0; k < profundidade; k++)
{
Matriz3D[i][j][k] = scanf("%d",%numero);
}
}
}
 
C
for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
Matriz3D[i][j][k] = scanf("%d",%numero);
}
}
 
D
for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
for (int k = 0; k < profundidade; k++)
{
Matriz3D[i][j] = scanf("%d",%numero);
Matriz3D[i][k] = scanf("%d",%numero);
}
}
}
 
E
for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
for (int k = 0; k < profundidade; k++)
{
Matriz3D[i][k] = scanf("%d",%numero);
Matriz3D[j][k] = scanf("%d",%numero);
}
}
}
 
27/12/2017 AVA UNIVIRTUS
4/10
{
for (int j = 0; j < colunas; j++)
{
for (int k = 0; k < profundidade; k++)
{
Matriz3D[i][j][k] = scanf("%d",%numero);
}
}
}
C
for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
Matriz3D[i][j][k] = scanf("%d",%numero);
}
}
D
for (int i = 0; i < linhas; i++)
{
for (int j = 0; j < colunas; j++)
{
for (int k = 0; k < profundidade; k++)
{
Matriz3D[i][j] = scanf("%d",%numero);
Matriz3D[i][k] = scanf("%d",%numero)
Programação IUNINTER

4 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Nesse exercício vamos verificar a validade de implementações de matrizes tridimensionais.


A princípio nenhuma das implementações está correta pois a leitura de um número inteiro em uma variável x é feita por:

scanf(“ %d”,&x);


Vamos avaliar então a alternativa que mais se aproxima. Para a leitura de uma matriz tridimensional precisamos de 3 for aninhados, o que elimina a alternativa C.


Além disso precisamos indexar as três dimensões da matriz, isto é:

Matriz3D[i][j][k]

O que elimina as alternativas D e E.


Os códigos das alternativas A e B são idênticos, além de que o texto da alternativa A está correto.


Temos então, que nenhuma alternativa é correta devido ao erro de uso do scanf. Desconsiderando esse fato, as alternativas A e B estão corretas.

Nesse exercício vamos verificar a validade de implementações de matrizes tridimensionais.


A princípio nenhuma das implementações está correta pois a leitura de um número inteiro em uma variável x é feita por:

scanf(“ %d”,&x);


Vamos avaliar então a alternativa que mais se aproxima. Para a leitura de uma matriz tridimensional precisamos de 3 for aninhados, o que elimina a alternativa C.


Além disso precisamos indexar as três dimensões da matriz, isto é:

Matriz3D[i][j][k]

O que elimina as alternativas D e E.


Os códigos das alternativas A e B são idênticos, além de que o texto da alternativa A está correto.


Temos então, que nenhuma alternativa é correta devido ao erro de uso do scanf. Desconsiderando esse fato, as alternativas A e B estão corretas.

User badge image

Andre

Há mais de um mês

Nesse exercício vamos verificar a validade de implementações de matrizes tridimensionais.


A princípio nenhuma das implementações está correta pois a leitura de um número inteiro em uma variável x é feita por:

scanf(“ %d”,&x);


Vamos avaliar então a alternativa que mais se aproxima. Para a leitura de uma matriz tridimensional precisamos de 3 for aninhados, o que elimina a alternativa C.


Além disso precisamos indexar as três dimensões da matriz, isto é:

Matriz3D[i][j][k]

O que elimina as alternativas D e E.


Os códigos das alternativas A e B são idênticos, além de que o texto da alternativa A está correto.


Temos então, que nenhuma alternativa é correta devido ao erro de uso do scanf. Desconsiderando esse fato, as alternativas A e B estão corretas.

User badge image

Andre

Há mais de um mês

 

Agora, imagine que você precisa desenvolver um código de uma matriz 3D, ou seja, em 3 dimensões, onde


existem linhas, colunas e profundidade.


Você resolve desenvolver o código para uma matriz de QUALQUER dimensão de número inteiros, e declara


as seguintes variáveis:


int linha, coluna, profundidade;


int Matriz3D[linha][coluna][profundidade];


Selecione a alternativa que contém uma possível implementação desta matriz 3D em linguagem C/C++, onde


a leitura dos valores inteiros são feitos.


 


A


for (int i = 0; i < linhas; i++)


{


for (int j = 0; j < colunas; j++)


{


for (int k = 0; k < profundidade; k++)


{


Matriz3D[i][j][k] = scanf("%d",%numero);


}


}


}


Para uma matriz de 3 dimensões é necessário o uso de 3 FORs encadeados.


Além disso, a linguagem C/C++ permite que você adicione quantas dimensões forem necessárias,


através de colchetes [] extras. Em 3 dimensões fica: Matriz3D[i][j][k].


 


B for (int i = 0; i < linhas; i++)


{


for (int j = 0; j < colunas; j++)


{


for (int k = 0; k < profundidade; k++)


{


Matriz3D[i][j][k] = scanf("%d",%numero);


}


}


}


 


C


for (int i = 0; i < linhas; i++)


{


for (int j = 0; j < colunas; j++)


{


Matriz3D[i][j][k] = scanf("%d",%numero);


}


}


 


D


for (int i = 0; i < linhas; i++)


{


for (int j = 0; j < colunas; j++)


{


for (int k = 0; k < profundidade; k++)


{


Matriz3D[i][j] = scanf("%d",%numero);


Matriz3D[i][k] = scanf("%d",%numero);


}


}


}


 


E


for (int i = 0; i < linhas; i++)


{


for (int j = 0; j < colunas; j++)


{


for (int k = 0; k < profundidade; k++)


{


Matriz3D[i][k] = scanf("%d",%numero);


Matriz3D[j][k] = scanf("%d",%numero);


}


}


}


Nesse exercício vamos verificar a validade de implementações de matrizes tridimensionais.


A princípio nenhuma das implementações está correta pois a leitura de um número inteiro em uma variável x é feita por:

scanf(“ %d”,&x);


Vamos avaliar então a alternativa que mais se aproxima. Para a leitura de uma matriz tridimensional precisamos de 3 for aninhados, o que elimina a alternativa C.


Além disso precisamos indexar as três dimensões da matriz, isto é:

Matriz3D[i][j][k]

O que elimina as alternativas D e E.


Os códigos das alternativas A e B são idênticos, além de que o texto da alternativa A está correto.


Temos então, que nenhuma alternativa é correta devido ao erro de uso do scanf. Desconsiderando esse fato, as alternativas A e B estão corretas.

Essa pergunta já foi respondida por um dos nossos especialistas