Я делаю консольное приложение на C #, я начинаю с этого языка, поэтому у меня есть некоторые препятствия.Моя задача - создать приложение, которое позволит вам выбрать один из подготовленных алгоритмов и провести с ним некоторые вычисления.Я должен создать три типа массивов, случайный, пользовательский и предопределенный.Затем мне нужно позволить пользователю выбрать один из них и использовать его в других алгоритмах.Например, мне нужно вычислить сумму по элементам из массива.Пользователь должен выбрать массив и затем нажать другую кнопку, чтобы запустить алгоритм.
Пока у меня есть это:
namespace Menu
{
static class MenuProste
{
public static void StartMenuProste()
{
Console.Title = "Moje menu";
while (true)
{
Console.Clear();
Console.WriteLine(">>> Witaj! Wciśnij klawisz, aby wybrać algorytm! <<<");
Console.WriteLine("1- Wybierz zdefiniowany wcześniej ciąg.");
Console.WriteLine("2- Zdefiniuj własny ciąg.");
Console.WriteLine("3- Wybierz losowy ciąg.");
Console.WriteLine("4- Suma elementów ciagu n-elementowego.");
Console.WriteLine("5- Iloczyn elementów ciagu n-elementowego.");
Console.WriteLine("6- Srednia arytmetyczna elementów ciagu n-elementowego.");
Console.WriteLine("7- Wypisanie elementów ciagu Fibonacciego");
Console.WriteLine("8- Ile razy dany element podany na wejsciu wystepuje w danym ciagu n-elementowym. ");
Console.WriteLine("9- Znajdowanie elementu najwiekszego (najmniejszego) w danym ciagu n-elementowy.");
Console.WriteLine("0- Koniec");
int[] tab = null;
ConsoleKeyInfo klawisz = Console.ReadKey();
switch (klawisz.Key)
{
case ConsoleKey.D1:
Console.Clear();
tab = PreDefinedArray();
break;
case ConsoleKey.D2:
Console.Clear();
tab = UserDefinedArray();
opcjaWBudowie();
break;
case ConsoleKey.D3:
Console.Clear();
tab = RandomArray();
//average.Execute(tab);
break;
case ConsoleKey.D4:
Console.Clear();
opcjaWBudowie();
break;
case ConsoleKey.D5:
Console.Clear();
opcjaWBudowie();
break;
case ConsoleKey.D6:
Console.Clear();
opcjaWBudowie();
break;
case ConsoleKey.D7:
Console.Clear();
opcjaWBudowie();
break;
case ConsoleKey.D8:
Console.Clear();
opcjaWBudowie();
break;
case ConsoleKey.D9:
Console.Clear();
opcjaWBudowie();
break;
case ConsoleKey.Escape:
case ConsoleKey.D0:
Environment.Exit(0); break;
default: break;
}
}
}
private static int[] RandomArray()
{;
Random RandomArray = new Random();
int number = RandomArray.Next(1, 100);
System.Console.WriteLine(number);
Console.ReadKey();
}
private static int[] UserDefinedArray()
{
throw new NotImplementedException();
}
private static int[] PreDefinedArray()
{
int[] Array = new int[6] {4, 8, 15, 16, 23, 42 };
return PreDefinedArray();
}
static void opcjaWBudowie()
{
Console.Write("Opcja w budowie!");
Console.ReadKey();
}
}
}
Алгоритмы находятся в том же решении,в разных файлах проекта.Я должен объединить все это.Может ли кто-нибудь помочь мне написать эти массивы, а затем помочь мне изменить мой код, чтобы он использовал эти новые массивы?Это мои средние алгоритмы, подсчитывающие среднее число чисел, которые вы введете
namespace AverageNums
{
class average
{
public static void Execute(int[] tab)
{
int iloscLiczb = 0; //Zmienne, wyzerowane na początku
double suma = 0;
Console.Write("Ile liczb chcesz zawrzeć w średniej: "); //Otrzymuję ile liczb będzie branych pod uwagę, int32.Parse konwertuje je na int.(liczbę całkowitą)
iloscLiczb = Int32.Parse(Console.ReadLine());
for (int i = 0; i < iloscLiczb; i++) //pętla obliczająca
{
Console.Write("Podaj liczbę: "); //Liczby wpisywane przez użytkownika, suma = suma + liczba
suma += double.Parse(Console.ReadLine());
}
Console.WriteLine("Średnia arytmetyczna z podanych liczb wynosi: " + suma / iloscLiczb);
Console.ReadKey();
}
}
}
Также мой код из алгоритма суммы элементов:
namespace sum
{
class Sum
{
//Suma elementów ciągu n-elementowego
public void Main(string[] args)
{
int wynik = 0; //Wynik wynosi 0
int[] zbior = new int[] { 4, 8, 15, 16, 23, 42 }; //Zbiór liczb ciągu, + pozycji, zaczyna się od i[0]=4
for (int i = 0; i < zbior.Length; i++) //Rozpoczęcie pętli, dla i o indexie 0, które jest mniejsze od ilościu elementów zbioru, i zwiększa się o:
{
wynik += zbior[i]; // Wynik + 4 + 8 + 15 + 16
}
Console.WriteLine($"Wynik sumy elementów ciągu wynosi: {wynik.ToString()}");
Console.ReadKey();
}
}
}
Как изменить код такон будет использовать предопределенные массивы?И я получаю сообщение об ошибке
"private static int [] RandomArray (): не все пути кода возвращают значение"