Вывод простых чисел из рандомного массива - C#
Формулировка задачи:
Добрый день.
Существует вот такой вот код:
Помогите вывести все числа массива, которые относятся к простым. Сам код не прошу, но не отказался бы.
Так же просьба, у кого есть время, посмотреть и помочь оптимизировать (уменьшить кол-во кода, подсказать, как было бы все это сделать проще и т.д.)
Так же возникла проблема при установке предела рандома. Была идея запихнуть ввод числа через консоль и выводить lMass[i] = random.Next(UstChislo); , где UstChislo введено в консоли.
Спасибо.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Задание_1 { class Program { static void Main(string[] args) { String Chet = ""; String Nechet = ""; String NulCH = ""; Console.Write("Введите размер массива: "); int[] lMass = new int[int.Parse(Console.ReadLine())]; //заполнение массива случайными числами var random = new Random(); for (int i = 0; i < lMass.Length; i++) { lMass[i] = random.Next(999); } Console.WriteLine("Исходный массив:"); for (int i = 0; i < lMass.Length; i++) Console.Write(lMass[i] + " "); //вывод четных и нечетных чисел Console.WriteLine("\n"); foreach (int x in lMass) { if (x == 0) NulCH = Convert.ToString(x); else if (x % 2 == 0) Chet = Chet + Convert.ToString(x) + ", "; else if (x % 2 != 0) Nechet = Nechet + Convert.ToString(x) + ", "; } Console.WriteLine("Четные числа массива: " + Chet+"\n Нечетные числа массива: " + Nechet); if (NulCH!="") Console.WriteLine("В массиве присутствует число, не относящее к четным или нечетным: " + NulCH); for (int i = 0; i < lMass.Length; i++) { if (lMass[i] == lMass.Min()) { Console.WriteLine("\nМинимальное значение массива: "+i+"-й, равен " + lMass.Min()); break; } } for (int i = 0; i < lMass.Length; i++) { if (lMass[i] == lMass.Max()) { Console.WriteLine("Максимальное значение массива: " + i + "-й, равен " + lMass.Max()); break; } } //Поиск чисел, кратных заданному Console.Write("Поиск чисел, кратное: "); int Kratn = int.Parse(Console.ReadLine()); int poisk = 0; foreach (int x in lMass) { if (x % Kratn == 0) Console.Write(x + ","); poisk++; } if (poisk == 0) Console.Write("Отсутствуют числа, кратные " + Kratn); Console.ReadKey(); } } }
Решение задачи: «Вывод простых чисел из рандомного массива»
textual
Листинг программы
private void button1_Click(object sender, EventArgs e) { string[] G = new string[] {"А", "а", "Е", "є", "Є","є", "И", "и", "І", "і", "Ї", "ї","О", "о", "У" ,"у", "Ю", "ю", "Я" ,"я"};//10 string[] P = new string[] {"Б", "б", "В", "в", "Г", "г", "Ґ", "ґ", "Д", "д", "Ж", "ж", "3", "з","Й", "й", "К", "к", "Л", "л", "М", "м", "Н", "н", "П", "п", "Р", "р", "С", "с", "Т", "т", "Ф", "ф", "X", "х", "Ц", "ц", "Ч", "ч", "Ш", "ш", "Щ", "щ"};//22 Random rnd = new Random(); string str = ""; string[] mas = new string[4]; mas[0] = G[rnd.Next(0, 9)]; mas[1] = P[rnd.Next(0, 21)]; mas[2] = P[rnd.Next(0, 21)]; mas[3] = rnd.Next(0,9).ToString(); bool flag = false; while(flag == false) { if(str.Length != 4) { string res = mas[rnd.Next(mas.GetLength(0))]; if (str.Contains(res)) { } else { str += res; } } else { flag = true; } } textBox1.Text = str; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д