Определить произведение элементов одномерного массива кратных заданному числу - C#
Формулировка задачи:
Всем доброго времени суток! Задание:
Дан массив из N элементов (натуральные числа). Определить произведение элементов, кратных заданному числу Р. Всё это следует проделать с помощью функции
. Ниже представлен мой нерабочий код с функцией. А ещё ниже представлен мой рабочий код, но это уже без функции. (все коды в спойлере).
Листинг программы
- namespace ConsoleApplication1
- {
- class Program
- {
- static void Main(string[] args)
- { int m = 1;
- int N;
- N = Convert.ToInt32(Console.ReadLine());
- int[] myArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
- Console.WriteLine("myArr: ");
- for (int i = 0; i < 18; i++)
- {
- Console.Write(myArr[i] + " ");
- }
- itog = r2(m,N, myArr);
- Console.WriteLine(itog);
- Console.ReadKey();
- }
- public static int r2 (int m, int N, int MyArr )
- {
- bool isFlag = false;
- Console.WriteLine("\n Enter N: ");
- foreach (int i in myArr)
- if (i % N == 0)
- {
- m *= i;
- isFlag = true;
- }
- if (isFlag)
- {
- Console.WriteLine("\n Multiplying: " + m);
- }
- else
- {
- Console.WriteLine("Элементов, кратных числу {0} в массиве не найдено", N);
- }
- return (itog);
- }
- }
- } int m = 1;
- bool isFlag = false;
- int N;
- int[] myArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; //задаем одномерный массив
- Console.WriteLine("myArr: ");
- for (int i = 0; i < 18; i++)
- {
- Console.Write(myArr[i] + " ");
- }
- Console.WriteLine("\n Enter N: ");
- N = Convert.ToInt32(Console.ReadLine()); //Преобразует строку, считанную в консоли к типу int (целое число).
- foreach (int i in myArr)
- if (i % N == 0) // если число в массиве кратно заданному N, то цикл начинает выполняться
- {
- m *= i; // находит произведение элементов
- isFlag = true;
- }
- if (isFlag)
- {
- Console.WriteLine("\n Multiplying: " + m);
- }
- else
- {
- Console.WriteLine("Элементов, кратных числу {0} в массиве не найдено",N);
- }
- Console.ReadKey();
Решение задачи: «Определить произведение элементов одномерного массива кратных заданному числу»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace cb
- {
- class Program
- {
- static void Main(string[] args)
- {
- int p=2;
- int N,i;
- N = Convert.ToInt32(Console.ReadLine());
- int[] myArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
- Console.WriteLine("myArr: ");
- for (i = 0; i < N; i++)
- {
- Console.Write(myArr[i] + " ");
- }
- int a=r2(p, N, myArr);
- Console.WriteLine();
- if (a != 1)
- { Console.WriteLine("Itog={0}", a); }
- else Console.WriteLine("Не найдено") ;
- Console.ReadKey();
- }
- public static int r2( int p, int N, int[] MyArr)
- {
- int i;
- int m = 1;
- for (i = 0; i < N; i++)
- {
- if (MyArr[i] % p == 0)
- {
- m *= MyArr[i];
- }
- }
- return (m);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д