38 - Considera o seguinte método Main()
:
static void Main(string[] args)
{
// Declaração de variáveis
int n;
int[] numbers;
// Pedir ao utilizador o tamanho do array de inteiros
Console.Write("Qual o tamanho do array?");
n = Convert.ToInt32(Console.ReadLine());
// Gerar números de 1 até n
numbers = CreateNumbersToN(n);
// Inverter os conteúdos do array
Reverse(numbers);
// Imprimir os conteúdos do array
PrintNumbers(numbers);
}
Implementa, dentro da classe Program
, os métodos CreateNumbersToN()
,
Reverse()
e PrintNumbers()
de modo a que façam o que está indicado nos
respetivos comentários no método Main()
.
static int[] CreateNumbersToN(int n)
{
int[] numbers = new int[n];
// Ciclo for que gera os nºs de 1 a n
for (int i = 0; i < n; i++)
{
numbers[i] = i + 1;
}
return numbers;
}
static void Reverse(int[] numbers)
{
int[] reverseNumbers = new int[numbers.Length];
// Ciclo for que reverte os nºs gerados do array numbers e os retorna
// no array reverseNumbers
for (int i = numbers.Length - 1, j = 0; i >= 0; i--, j++)
{
reverseNumbers[j] = numbers[i];
}
for (int i = 0; i < numbers.Length; i++)
{
numbers[i] = reverseNumbers[i];
}
}
static void PrintNumbers(int[] numbers)
{
Console.Write("Reversed Array: ");
for (int i = 0; i < numbers.Length; i++)
{
Console.Write($"{numbers[i]} ");
}
Console.WriteLine();
}
Por Pedro Inácio.
static int[] CreateNumbersToN(int n)
{
// Variável temporária
int[] numbers = new int[n];
// Dar números de 1 a n ao array temporário numbers
for (int i = 0; i < n; i++)
numbers[i] = 1 + i;
return numbers;
}
static void Reverse(int[] numbers)
{
// Inverter a variável numbers com a ajuda de outro método
Array.Reverse(numbers, 0, numbers.Length);
}
static void PrintNumbers(int[] numbers)
{
// Imprimir o array
Console.Write("\n[ ");
foreach (int number in numbers)
Console.Write($"{number} ");
Console.WriteLine("]");
}
Por Tomás Franco