Процедура не работает, ошибок не выдает, а в результате пишет всегда 0 - PascalABC.NET

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

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

Процедура не работает, ошибок не выдает, а в результате пишет всегда 0. Что не так. Помогите, пожалуйста!

Решение задачи: «Процедура не работает, ошибок не выдает, а в результате пишет всегда 0»

textual
Листинг программы
type
  matr=array [1..10,1..10] of integer;
var
  A:matr;
  i,j,n:integer;
  S:real;
 
procedure SGD(x:matr; var sum:real);
var
  i: integer;
begin
  Sum:=0;
  for i:=1 to n do
    Sum:=Sum+x[i,i];
end;
 
begin
  write ('Введите количество строк/столбцов квадратной матрицы - ');
  readln (n);
  randomize;
  for i:=1 to N do
    for j:=1 to N do
      A[i,j]:= random(100);
 
  for i:=1 to n do
    begin
      for j:=1 to n do
        write ('  ',A[i,j]:5);
      writeln;
    end;
  writeln;
  SGD(A, S);
  writeln('Cумма: ',s:8:3);
  readln;
end.

Объяснение кода листинга программы

  1. Объявление переменных:
    • A - двумерный массив (матрица) целых чисел размером 10x10;
    • i, j - индексы для обхода матрицы;
    • n - количество строк/столбцов квадратной матрицы;
    • S - сумма.
  2. Объявление процедуры SGD:
    • Принимает двумерный массив x и ссылку на переменную sum в качестве параметров;
    • Вычисляет сумму элементов главной диагонали матрицы x и сохраняет результат в переменной sum.
  3. Главный цикл программы:
    • Запрос на ввод количества строк/столбцов квадратной матрицы;
    • Инициализация генератора случайных чисел;
    • Заполнение матрицы A случайными целыми числами от 0 до 99;
    • Вывод содержимого матрицы A на экран;
    • Вызов процедуры SGD для вычисления суммы главной диагонали матрицы A;
    • Вывод значения переменной S на экран;
    • Ожидание нажатия клавиши для завершения программы.
  4. В процедуре SGD:
    • Инициализация переменной Sum значением 0;
    • Обход главной диагонали матрицы x и суммирование ее элементов;
    • Возврат полученного значения суммы.

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


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

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

8   голосов , оценка 4.5 из 5
Похожие ответы