Заменить нулевые значения матрицы на 200 - C#

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

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

ДОбрый день, помогите пожалуйста, дана матрица, надо нулевые значения сменить на 200, я как бы пытался сделать это, но у меня диагональные меняет, а нужно только нулевые) Спасибо заранее
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace lab17
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. Console.Title = "Передача двовимірних масивів у якості параметрів методів";
  12. Console.BackgroundColor = ConsoleColor.DarkGray;
  13. Console.ForegroundColor = ConsoleColor.Yellow;
  14. Console.Clear();
  15. double[,] a = {{ 2, 4, -6, 7.4 }, {4.5, -3, 5, 0 },
  16. {9.7, 4.2, -3.8, 2.75 }, { 3.3, -0.6, 0, 3.5 } };
  17. double[,] b = { { -1 - 2, 3, 0 }, { 2.5, 6.3, 1 }, { 1.1, 2, 4.2 } };
  18. double[,] c = new double[5, 5];
  19. for (int i = 1; i <= c.GetLength(0); i++)
  20. for (int j = 1; j <= c.GetLength(1); j++)
  21. c[i - 1, j - 1] = (1 + j) * i * i + j;
  22. double[,] d = new double[6, 6];
  23. for (int i = 1; i <= d.GetLength(0); i++)
  24. for (int j = 1; j <= d.GetLength(1); j++)
  25. d[i - 1, j - 1] = Math.Sin(i * j) + 2.2;
  26. Console.WriteLine("Матриці до виконання заміни:");
  27. Console.WriteLine("Матриця А:");
  28. Vyvid(a);
  29. Console.WriteLine("Матриця B:");
  30. Vyvid(b);
  31. Console.WriteLine("Матриця C:");
  32. Vyvid(c);
  33. Console.WriteLine("Матриця D:");
  34. Vyvid(d);
  35. Zamina(a);
  36. Zamina(b);
  37. Zamina(c);
  38. Zamina(d);
  39. Console.WriteLine("Матриці після виконання заміни:");
  40. Console.WriteLine("Матриця А:");
  41. Vyvid(a);
  42. Console.WriteLine("Матриця B:");
  43. Vyvid(b);
  44. Console.WriteLine("Матриця C:");
  45. Vyvid(c);
  46. Console.WriteLine("Матриця D:");
  47. Vyvid(d);
  48. Console.ReadKey();
  49. }
  50. static void Vyvid(double[,] w)
  51. {
  52. for (int i = 0; i < w.GetLength(0); i++)
  53. {
  54. for (int j = 0; j < w.GetLength(1); j++)
  55. Console.Write("{0,6:F} ", w[i, j]);
  56. Console.WriteLine();
  57. }
  58. }
  59. static void Zamina(double[,] w)
  60. {
  61. double min = w[0, 0];
  62. for (int i = 0; i < w.GetLength(0); i++)
  63. for (int j = 0; j < w.GetLength(0); j++)
  64. if (w[i, j] < min) min = w[i, j];
  65. for (int i = 0; i < w.GetLength(0); i++)
  66. w[i, i] = 200;
  67. }
  68. }
  69. }

Решение задачи: «Заменить нулевые значения матрицы на 200»

textual
Листинг программы
  1.         static void Main(string[] args)
  2.         {
  3.             var arr = new[,]
  4.             {
  5.                 {1, 2, 0},
  6.                 {5, 0, 4},
  7.                 {55, 8, 0}
  8.             };
  9.  
  10.             for (int i = 0; i < arr.GetLength(0); i++)
  11.             {
  12.                 for (int j = 0; j < arr.GetLength(1); j++)
  13.                 {
  14.                     if (arr[i, j] == 0)
  15.                         arr[i, j] = 200;
  16.                 }
  17.             }
  18.  
  19.             for (int i = 0; i < arr.GetLength(0); i++)
  20.             {
  21.                 for (int j = 0; j < arr.GetLength(1); j++)
  22.                 {
  23.                     Console.Write(arr[i, j] + " ");
  24.                 }
  25.  
  26.                 Console.WriteLine();
  27.             }
  28.         }

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


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

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

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

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

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

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