Определить произведение элементов одномерного массива кратных заданному числу - C#

Узнай цену своей работы

Формулировка задачи:

Всем доброго времени суток! Задание:

Дан массив из N элементов (натуральные числа). Определить произведение элементов, кратных заданному числу Р. Всё это следует проделать с помощью функции

. Ниже представлен мой нерабочий код с функцией. А ещё ниже представлен мой рабочий код, но это уже без функции. (все коды в спойлере).
Листинг программы
  1. namespace ConsoleApplication1
  2. {
  3. class Program
  4. {
  5. static void Main(string[] args)
  6. { int m = 1;
  7.  
  8. int N;
  9. N = Convert.ToInt32(Console.ReadLine());
  10. int[] myArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
  11. Console.WriteLine("myArr: ");
  12. for (int i = 0; i < 18; i++)
  13. {
  14. Console.Write(myArr[i] + " ");
  15. }
  16. itog = r2(m,N, myArr);
  17. Console.WriteLine(itog);
  18. Console.ReadKey();
  19. }
  20. public static int r2 (int m, int N, int MyArr )
  21. {
  22.  
  23. bool isFlag = false;
  24. Console.WriteLine("\n Enter N: ");
  25.  
  26. foreach (int i in myArr)
  27. if (i % N == 0)
  28. {
  29. m *= i;
  30. isFlag = true;
  31. }
  32. if (isFlag)
  33. {
  34. Console.WriteLine("\n Multiplying: " + m);
  35. }
  36. else
  37. {
  38. Console.WriteLine("Элементов, кратных числу {0} в массиве не найдено", N);
  39. }
  40. return (itog);
  41. }
  42. }
  43. } int m = 1;
  44. bool isFlag = false;
  45. int N;
  46. int[] myArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; //задаем одномерный массив
  47. Console.WriteLine("myArr: ");
  48. for (int i = 0; i < 18; i++)
  49. {
  50. Console.Write(myArr[i] + " ");
  51. }
  52. Console.WriteLine("\n Enter N: ");
  53. N = Convert.ToInt32(Console.ReadLine()); //Преобразует строку, считанную в консоли к типу int (целое число).
  54. foreach (int i in myArr)
  55. if (i % N == 0) // если число в массиве кратно заданному N, то цикл начинает выполняться
  56. {
  57. m *= i; // находит произведение элементов
  58. isFlag = true;
  59. }
  60. if (isFlag)
  61. {
  62. Console.WriteLine("\n Multiplying: " + m);
  63. }
  64. else
  65. {
  66. Console.WriteLine("Элементов, кратных числу {0} в массиве не найдено",N);
  67. }
  68. Console.ReadKey();

Решение задачи: «Определить произведение элементов одномерного массива кратных заданному числу»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace cb
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.  
  14.             int p=2;
  15.  
  16.  
  17.             int N,i;
  18.             N = Convert.ToInt32(Console.ReadLine());
  19.  
  20.  
  21.             int[] myArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
  22.             Console.WriteLine("myArr: ");
  23.             for (i = 0; i < N; i++)
  24.             {
  25.                 Console.Write(myArr[i] + " ");
  26.  
  27.             }
  28.            
  29.             int a=r2(p, N, myArr);
  30.            Console.WriteLine();
  31.            if (a != 1)
  32.            { Console.WriteLine("Itog={0}", a); }
  33.            else Console.WriteLine("Не найдено") ;
  34.             Console.ReadKey();
  35.          
  36.         }
  37.         public static int r2( int p, int N, int[] MyArr)
  38.         {
  39.             int i;
  40.             int m = 1;
  41.             for (i = 0; i < N; i++)
  42.             {
  43.                 if (MyArr[i] % p == 0)
  44.                 {
  45.                     m *= MyArr[i];
  46.                    
  47.                 }
  48.             }
  49.             return (m);
  50.         }
  51.     }
  52. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы