Въпрос от Arrays-запис на точно определени елементи от един масив в друг с различна дължина от първоначалния
Изгледах няколко лекции от Programming Fundamental за масиви, търсех информация във форуми, но не успях да намеря отговора на въпроса ми. Възможно е и нещо да съм пропуснала от обучението. Зная как да записвам елементи от един масив в друг, но ако искам новия масив да е с различна дължина записа не се получава. Моля за малко разяснение за да мога да приключа с масивите и да продължа по-нататъка. Вече трета седмица стоя само на масиви.
Ето един пример за по-нагледно:
Input: Output:
1 3 2 4 6 2 4
2 even
Input: Output:
1 3 2 4 6 2 4 6 (искам да печата, колкото има, т.е в случая само 3)
4 even
Input: Output:
2 2 4 6 "Invalid index"
3 odd
Input: Output:
1 4 6 8 3 5 1 3 5
3 odd
За съжаление успявам само да прочета масива и командата, но не и да запиша четните числа в нов масив:
using System;
using System.Linq;
namespace Arrays1
{
class MainClas
{
public static void Main()
{
int[] array = Console.ReadLine().Split().Select(int.Parse).ToArray();
string command = Console.ReadLine();
string[] commandArr = command.Split();
int index = int.Parse(commandArr[0]);
string type = commandArr[1];
if (type == "even")
{
int[] newArr = new int[index];
if (index <= array.Length)
{
for (int i = 0; i < array.Length - 1 && i < index; i++)
{
if (array[i] % 2 == 0)
{
newArr[index] = array[i];
}
}
Console.WriteLine(string.Join(" ", newArr));
}
else
{
Console.WriteLine("Invalid index");
}
}
}
}
}
Благодаря! Тъкмо навлизам в списъците и ми трябва малко време да осъзная решението Ви, но със сигурност ще ми е от полза.
Поздрави!