Сумма столбцов матрицы с использованием функций - C#

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

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

Добрый день! Прошу помочь откорректировать программу по условию: Если К-й столбец прямоугольной матрицы имеет минимальную сумму элементов, определить сумму элементов столбцов до К-го, иначе сумму столбцов после К-го. Написал, а в чем помарки не могу додумать. Заранее большое спасибо!
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace ConsoleApplication433
  7. {
  8. class Program
  9. {
  10. void Create(out int [3,5]temp)
  11. {
  12. for (int i = 0; i<3; i++)
  13. {
  14. for (int j = 0; j<5; j++)
  15. temp[i,j]=rand.Next();
  16. }
  17. }
  18. void show(out int [3,5]temp)
  19. {
  20. for (int i = 0; i<3; i++)
  21. {
  22. for (int j = 0; j<5; j++)
  23. Console.WriteLine(temp[i,j]+" ");
  24. Console.WriteLine();
  25. }
  26. }
  27. void result(out int [3,5]temp)
  28. {
  29. int k,summ=0,min;
  30. int *sum = new int [5];
  31. for (int i=0;i<5;i++)
  32. sum[i]=0;
  33. for (int i = 0; i < 3; i++)
  34. {
  35. for (int j = 0; j < 5; j++)
  36. sum[j] += temp[i,j];
  37. }
  38. Console.WriteLine("Введите номер столбца: ");
  39. Console.ReadLine(k);
  40. if (k<0 || k>5)
  41. {
  42. Console.WriteLine("Недопустимое значение!");
  43. }
  44. Console.WriteLine("Сумма элементов "+k " столбца: "+sum[k-1]);
  45. for (int i=0;i<5;i++)
  46. if (sum[i]<sum[i+1])
  47. min=sum[i];
  48. if (sum[k-1]==min)
  49. {
  50. Console.WriteLine(", является самой минимальной: ");
  51. for (int i = 0; i < 3; i++)
  52. for (int j = 0; j < k-1; j++)
  53. summ+=temp[i,j];
  54. }
  55. else
  56. {
  57. Console.WriteLine(", не является самой минимальной: ");
  58. for (int i = 0; i < 3; i++)
  59. {
  60. for (int j = k; j < 5; j++)
  61. summ+=temp[i,j];
  62. }
  63. }
  64. Console.WriteLine("Сумма элементов: " +summ);
  65. }
  66. }
  67. static void Main(string[] args)
  68. {
  69. int[,] array = new int[3,5];
  70. Console.WriteLine("Матрица 3*5:");
  71. Create(array);
  72. show(array);
  73. result(array);
  74. Console.WriteLine();
  75.  
  76. Console.ReadLine();
  77. }
Додумал только одно. Забыл определить функцию случайного заполнения матрицы Random rand = new Random(); Помогите пожалуйста откорректировать

Решение задачи: «Сумма столбцов матрицы с использованием функций»

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3. using System.Text;
  4.  
  5. namespace ConsoleApplication233
  6. {
  7.     class Program
  8.     {          
  9.        
  10.        static void Create(int [,] temp)
  11.        {
  12.            Random rand = new Random();
  13.            for (int i = 0; i<3; i++)
  14.               for (int j = 0; j<5; j++)
  15.               temp[i,j]=rand.Next(-10,10);
  16.        }
  17.  
  18.       static void show(  int [,] temp)
  19.        {
  20.            for (int i = 0; i < 3; i++)
  21.            {
  22.                for (int j = 0; j < 5; j++)
  23.                    Console.Write(string.Format("{0,3} ", temp[i, j]));
  24.  
  25.                Console.WriteLine();
  26.            }  
  27.         }
  28.  
  29.        static void result( int [,] temp)
  30.         {
  31.             int k, summ = 0, min = Int32.MaxValue;
  32.            int [] sum = new int [5];
  33.  
  34.            for (int i=0; i<5; i++)
  35.               sum[i]=0;
  36.  
  37.            for (int i = 0; i < 3; i++)
  38.               for (int j = 0; j < 5; j++)
  39.                 sum[j] += temp[i,j];
  40.        
  41.            min = sum.Min();
  42.  
  43.           Console.WriteLine("Введите номер столбца: ");
  44.           int.TryParse(Console.ReadLine(),out k);
  45.  
  46.           if (k < 0 || k > 5)
  47.              Console.WriteLine("Недопустимое значение!");
  48.              
  49.           if (sum[k-1] == min)
  50.                 {
  51.                    Console.WriteLine(", является самой минимальной: ");
  52.                    for (int i = 0; i < 3; i++)
  53.                    for (int j = 0; j < k-1; j++)
  54.                      summ += temp[i,j];
  55.                 }
  56.             else
  57.                 {
  58.                    Console.WriteLine(", не является самой минимальной: ");
  59.                    for (int i = 0; i < 3; i++)
  60.                    for (int j = k; j < 5; j++)
  61.                     summ += temp[i,j];
  62.                 }
  63.  
  64.             Console.WriteLine("Сумма элементов: " +summ);
  65.         }
  66.      
  67.         static void Main(string[] args)
  68.         {
  69.            
  70.            int[,] array = new int[3,5];
  71.            Console.WriteLine("Матрица 3*5:");
  72.            Create(array);
  73.            show(array);
  74.            result(array);
  75.  
  76.            Console.ReadLine();
  77.         }
  78.     }
  79. }

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


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

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

10   голосов , оценка 4.2 из 5

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

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

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