Заполнить комплекснозначную матрицу по правилу - PascalABC.NET
Формулировка задачи:
Помогите
Решение задачи: «Заполнить комплекснозначную матрицу по правилу»
textual
Листинг программы
const nmax=7; {чтобы матрица вошла на экран по ширине} type complex=record re,im:real; end; procedure Vyvod(var f:complex);{вывод комплексного числа} begin write(f.re:5:1); if f.im<0 then write(f.im:0:1,'i ') else write('+',f.im:0:1,'i '); end; procedure Summa(var f:complex;g:complex);{сложение двух комплексных чисел} begin f.re:=f.re+g.re; f.im:=f.im+g.im; end; var a:array[1..nmax,1..nmax] of complex; n,i,j,k,m:byte; sr:complex; begin randomize; repeat write('Размер матрицы от 2 до ',nmax,' n='); readln(n); until n in [2..nmax]; writeln('Матрица комплексных чисел:'); sr.re:=0; sr.im:=0; for i:=1 to n do begin for j:=1 to n do begin a[i,j].re:=10*random-4; a[i,j].im:=10*random-4; Summa(sr,a[i,j]); Vyvod(a[i,j]); end; writeln; end; writeln; sr.re:=sr.re/n/n; sr.im:=sr.im/n/n; write('Среднее арифметическое='); Vyvod(sr); end.
Объяснение кода листинга программы
- В начале кода объявляются константы и типы данных, включая тип complex, который представляет комплексное число.
- Затем определены две процедуры: Vyvod для вывода комплексного числа и Summa для сложения двух комплексных чисел.
- Далее объявляется двумерный массив a, представляющий комплекснозначную матрицу размером n на n, и несколько переменных для управления циклами и временного хранения результата сложения.
- После этого происходит инициализация генератора случайных чисел и начинается цикл, который повторяется до тех пор, пока пользователь не введет допустимый размер матрицы.
- Внутри цикла выводится сообщение о размере матрицы и заполняется матрица a случайными комплексными числами.
- Затем происходит суммирование всех элементов матрицы в переменной sr и вычисляется среднее арифметическое путем деления суммы на n в квадрате.
- Наконец, выводится среднее арифметическое комплексное число.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д