Как изменять размерность одномерного массива? - C#
Формулировка задачи:
Здравствуйте, пожалуйста объясните, как сделать так, чтобы n - кол-во элементов массива вводилось до того момента, пока n не будет соответствовать условию: n > 0 && n < 10?
К примеру: я ввожу n=15, и программа выдаёт: "Ошибка введения количества элементов массива!" и заканчивает работу.
А мне нужно, чтобы после вывода такого сообщения она повторно запрашивала ввести n.
Вот задание (но мне нужно узнать только то, как повторно ввести n):
Напишите программу, определяющую в целочисленном массиве размерностью n < 10 количество элементов, кратных некоторому числу m.
Программа должна выполнять следующие операции:
― вводить значения элементов массива в диалоговом режиме;
― вводить m в диалоговом режиме;
― выводить массив;
― выводить найденные элементы массива и общее число найденных элементов.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _2_лаба_4_семестр { class Program { static void Main(string[] args) { Console.WriteLine("Введите количество элементов массива < 10: "); string a; a = Console.ReadLine(); int n = Convert.ToInt32(a); // кол-во элементов массива int[] b = new int[n]; // массив string z; // элементы массива string f; int d = 0; // подсчет кол-ва эл. массива, кратных m if (n > 0 && n < 10) { for (int i = 0; i < n; i++) //цикл заполнения массива { Console.WriteLine("Введите элемент массива: "); z = Console.ReadLine(); b[i] = Convert.ToInt32(z); } Console.WriteLine("Массив: "); foreach (int elem in b) Console.Write(" " + elem); Console.WriteLine(); Console.WriteLine("Введите некоторое число m: "); f = Console.ReadLine(); int m = Convert.ToInt32(f); for (int i = 0; i < n; i++) //цикл поиска чисел кратных m { int t = b[i] % m; //остаток деления на m if (t == 0) { d = d + 1; Console.WriteLine("Число кратное m: " + b[i]); } } Console.WriteLine("Количество чисел кратных m: " + d); } else Console.WriteLine("Ошибка введения количества элементов массива!"); Console.ReadKey(); return; } } }
Решение задачи: «Как изменять размерность одномерного массива?»
textual
Листинг программы
using System; namespace ConsoleApplication2 { class Program { public static void Main() { int n = 0; do { Console.WriteLine("Введите количество элементов массива < 10: "); n = int.Parse(Console.ReadLine()); // кол-во элементов массива } while (n <= 0 || n >= 10); int[] b = new int[n]; // массив string z; // элементы массива string f; int d = 0; // подсчет кол-ва эл. массива, кратных m if (n > 0 && n < 10) { for (int i = 0; i < n; i++) //цикл заполнения массива { Console.WriteLine("Введите элемент массива: "); z = Console.ReadLine(); b[i] = Convert.ToInt32(z); } Console.WriteLine("Массив: "); foreach (int elem in b) Console.Write(" " + elem); Console.WriteLine(); Console.WriteLine("Введите некоторое число m: "); f = Console.ReadLine(); int m = Convert.ToInt32(f); for (int i = 0; i < n; i++) //цикл поиска чисел кратных m { int t = b[i] % m; //остаток деления на m if (t == 0) { d = d + 1; Console.WriteLine("Число кратное m: " + b[i]); } } Console.WriteLine("Количество чисел кратных m: " + d); } Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д