Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Aula 2 lista de exercícios

O enunciado do exercício é o seguinte 7 - Adicione um novo elemento (por exemplo,15) na terceira linha e segunda coluna da lista bidimensional matriz criada anteriormente.

Na sugestão do instrutor foi alterado o valor 8 por 15, não deveria ter sido realizado um splice ou eu entendi errado a proposta?

let matriz    = [];
let matriznum = 0;
// Montando a matriz 3x3 usando 2 loops para adicionar 3 linhas e 3 colunas
for (let i = 0; i < 3; i++) {
    let linha = [];
    for (let j = 0; j < 3; j++) {
        linha.push(++matriznum); // como comecei em 0 adiciona primeiro o valor e depois o push é realizado
    }
    matriz.push(linha);
}

console.log(`Matriz 3x3`, matriz);
console.log(`Valor da  linha 2 coluna 3 é: ${matriz[1][2]}`);

// adicionei o elemento na 3 linha 2 coluna
matriz[2].splice(1, 0, 15)
console.log(matriz);

Os outros exercícios

const concatena = (arr, arr1) => arr.concat(arr1);

const listaNome  = ['José', 'Mariana', 'Maria'];
const listaNomes = ['Fernando', 'Carol', 'Samanta'];
const numeros    = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; 
const listaTodosNomes = concatena(listaNome, listaNomes);

console.log(`Resultado da concatenação dos arrays: ${listaTodosNomes}`);

const parteNumeros = numeros.slice(3, 8);
console.log(`Esse é o novo array desejado: ${parteNumeros}`);

const frutas = ['Maçã', 'Banana', 'Laranja', 'Limão', 'Abacaxi'];

frutas.splice(2,2, 'Kiwi', 'Pêssego');
console.log(frutas);
const menuPrincipal = ['Feijoada', 'Churrasco', 'Pizza', 'Hambúrguer', 'Frango Assado'];
const menuDeSobremesas = ['Pudim', 'Torta de Limão', 'Brownie', 'Mousse de Chocolate', 'Sorvete'];

const menuCompleto = concatena(menuPrincipal, menuDeSobremesas);
console.log(`Aqui está o menu completo: ${menuCompleto}`);
1 resposta
solução!

Olá Israel! Como vai?

No seu caso, a matriz é uma lista bidimensional, ou seja, um array de arrays. Para adicionar um novo elemento na terceira linha e segunda coluna, você pode usar a atribuição direta, já que está apenas substituindo o valor existente. No entanto, se o objetivo fosse inserir um novo elemento e deslocar os outros, o splice seria uma boa escolha.

No seu exemplo, você usou matriz[2].splice(1, 0, 15), que insere o número 15 na terceira linha (índice 2) e segunda coluna (índice 1), empurrando os outros elementos para a direita. Se você apenas quer substituir o valor sem deslocar, pode fazer assim:

matriz[2][1] = 15;

Ambas as abordagens estão corretas, mas a escolha depende do que exatamente você quer fazer: substituir ou inserir e deslocar. Espero que isso esclareça sua dúvida!

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.