Desafio: Arrays Multidimensionais
Às vezes, é útil declarar constantes para indexar arrays multidimensionais. A seguir está o array do quiz do último capítulo:
main.cs
1234567const int FRUITS = 0; const int VEGETABLES = 1; string[,] foods = { { "Apple", "Apricot", "Banana", "Grapes", "Lime" }, // fruits { "Tomato", "Cabbage", "Carrot", "Pumpkin", "Broccoli" }, // vegetables };
Foram criadas duas constantes FRUITS e VEGETABLES com valores 0 e 1, representando as linhas 0 para frutas e 1 para vegetais no array foods.
Assim, se for necessário acessar o elemento "Cabbage" dos vegetais, basta escrever:
main.cs
1foods[VEGETABLES][1];
Este truque pode não ser tão útil em arrays menores como este, porém, ao lidar com arrays mais complexos, constantes como essas podem ajudar a acessar facilmente os itens do array, evitando a necessidade de memorizar qual linha contém quais itens - especialmente quando os itens estão categorizados em linhas.
Agora, o desafio é criar um array 2D do tipo string chamado productOptions, com formato 4x3 (4 linhas, 3 colunas). Inicialize com os seguintes dados:
- Linha 1:
"Red", "Green", "White"; - Linha 2:
"Square", "Rectangle", "Sphere"; - Linha 3:
"Thick", "Medium", "Thin"; - Linha 4:
"Printed", "Crafted", "None".
Acesse o elemento "Crafted" por meio de indexação e exiba o resultado. Utilize a variável constante relevante para isso.
main.cs
123456789101112131415161718192021222324using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below _______ = { _______ }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }
- Para declarar um array multidimensional, adicionamos vírgulas dentro dos colchetes (
[]) conforme o número de dimensões do array. Por exemplo, um array inteiro 3D seria declarado comoint[,,] arrayName = { ... };. - É válido utilizar valores de variáveis ou constantes na indexação.
Por exemplo, se tivermos um array
int[] exampleArray = { 1, 2, 3, 4, 5 };e uma constanteconst int someIndex = 2, é válido escreverexampleArray[someIndex]para acessar o elemento 3 do array.
main.cs
123456789101112131415161718192021222324252627using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below string[,] productOptions = { { "Red", "Green", "White" }, { "Square", "Rectangle", "Sphere" }, { "Thick", "Medium", "Thin" }, { "Printed", "Crafted", "None" } }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you show me how to declare the constants for the rows in this new array?
What would the code look like to access and print the "Crafted" element using a constant?
Can you explain why using constants for indexing is helpful in larger arrays?
Awesome!
Completion rate improved to 1.59
Desafio: Arrays Multidimensionais
Deslize para mostrar o menu
Às vezes, é útil declarar constantes para indexar arrays multidimensionais. A seguir está o array do quiz do último capítulo:
main.cs
1234567const int FRUITS = 0; const int VEGETABLES = 1; string[,] foods = { { "Apple", "Apricot", "Banana", "Grapes", "Lime" }, // fruits { "Tomato", "Cabbage", "Carrot", "Pumpkin", "Broccoli" }, // vegetables };
Foram criadas duas constantes FRUITS e VEGETABLES com valores 0 e 1, representando as linhas 0 para frutas e 1 para vegetais no array foods.
Assim, se for necessário acessar o elemento "Cabbage" dos vegetais, basta escrever:
main.cs
1foods[VEGETABLES][1];
Este truque pode não ser tão útil em arrays menores como este, porém, ao lidar com arrays mais complexos, constantes como essas podem ajudar a acessar facilmente os itens do array, evitando a necessidade de memorizar qual linha contém quais itens - especialmente quando os itens estão categorizados em linhas.
Agora, o desafio é criar um array 2D do tipo string chamado productOptions, com formato 4x3 (4 linhas, 3 colunas). Inicialize com os seguintes dados:
- Linha 1:
"Red", "Green", "White"; - Linha 2:
"Square", "Rectangle", "Sphere"; - Linha 3:
"Thick", "Medium", "Thin"; - Linha 4:
"Printed", "Crafted", "None".
Acesse o elemento "Crafted" por meio de indexação e exiba o resultado. Utilize a variável constante relevante para isso.
main.cs
123456789101112131415161718192021222324using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below _______ = { _______ }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }
- Para declarar um array multidimensional, adicionamos vírgulas dentro dos colchetes (
[]) conforme o número de dimensões do array. Por exemplo, um array inteiro 3D seria declarado comoint[,,] arrayName = { ... };. - É válido utilizar valores de variáveis ou constantes na indexação.
Por exemplo, se tivermos um array
int[] exampleArray = { 1, 2, 3, 4, 5 };e uma constanteconst int someIndex = 2, é válido escreverexampleArray[someIndex]para acessar o elemento 3 do array.
main.cs
123456789101112131415161718192021222324252627using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below string[,] productOptions = { { "Red", "Green", "White" }, { "Square", "Rectangle", "Sphere" }, { "Thick", "Medium", "Thin" }, { "Printed", "Crafted", "None" } }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }
Obrigado pelo seu feedback!