№2 разработать модуль, в котором определить простейшие процедуры: 1.ввода двумерного массива 2.вычисления суммы его диагональных элементов. в программе вычислить общую сумму диагональных элементов 3-х массивов. нужен паскаль abc.net
267
395
Ответы на вопрос:
Версия языка: pascalabc.net 3.2, сборка 1437 от 03.05.20171. сохраняем текст модуля в файле garnaga.pas и выполняем компиляцию (ctrl+f9) unit garnaga; interface type mass2d=array [,] of integer; function getmass(rand: boolean: =true): mass2d; function sumdiag(a: mass2d): integer; implementation function getmass(rand: boolean): mass2d; begin var n: =readinteger('количество строк/столбцов в массиве: '); if rand=true then begin var a: =readinteger('минимальное значение для заполнения: '); var b: =readinteger('максимальное значение для заполнения: '); result: =matrrandom(n,n,a,b) end else begin writeln('вводите элементы массива: '); result: =readmatrinteger(n,n) end end; function sumdiag(a: mass2d): integer; begin result: =0; var n: =a.rowcount-1; for var i: =0 to n do result+=a[i,i]+a[i,n-i]; if n.iseven then begin n: =n div 2; result-=a[n,n] end end; end. 2. создаем новый файл и помещаем в него программу, использующую созданный модуль uses garnaga; begin var a: =getmass; a.println; writeln; var b: =getmass; b.println; writeln; var c: =getmass(false); writeln; writeln('sдиаг=',sumdiag(a)+sumdiag(b)+sumdiag(c)) end. 3. запускаем программу на выполнение. пример работы: количество строк/столбцов в массиве: 4 минимальное значение для заполнения: -20 максимальное значение для заполнения: 35 4 -14 -14 26 26 -6 12 22 13 10 -20 26 -3 22 14 -4 количество строк/столбцов в массиве: 5 минимальное значение для заполнения: 0 максимальное значение для заполнения: 50 13 48 5 12 2 43 31 45 35 23 36 30 6 47 42 11 8 29 36 39 11 33 14 48 29 количество строк/столбцов в массиве: 3 вводите элементы массива: 1 6 2 8 3 4 7 0 5 sдиаг=208
№1) код программы получился довольно таки большой , но можно сам файл *.pas закинуть в интернет и оттуда скачать. №2) uses crt; var m: array[1..100,1..100] of integer; i,i1,j,str,stb,temp: integer; begin clrscr; writeln(' введите число строк массива: '); readln(str); writeln(' введите число столбцов массива: '); readln(stb); clrscr; writeln('массиа из ',str,' строк, и из ',stb,' столбцов успешно создан! '); writeln; for i: =1 to str dobegin for j: =1 to stb do begin m[i,j]: =random(80)+1; write(m[i,j]: 3,' '); end; writeln; end; writeln; writeln(' отсортирован по убыванию'); writeln; for i1: =1 to str do for i: =1 to str-1 do for j: =i+1 to str do if m[i1,i]< m[i1,j] then begin temp: =m[i1,i]; m[i1,i]: =m[i1,j]; m[i1,j]: =temp; end; writeln; for i: =1 to str dobegin for j: =1 to stb do begin write(m[i,j]: 3,' '); end; writeln; end; readkey; end.запускаешь водишь строк и столбцов после нажимаешь enter программы сделает своё дело
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
daniliwotchesi30.09.2020 21:01
-
Cennet5513.08.2020 14:41
-
Katyastudio02.05.2020 15:38
-
ilmir12345678908.07.2021 00:36
-
Сумасшедшая5555505.01.2022 10:32
-
геометрия6418.06.2022 07:11
-
lllllll4790073216.01.2022 20:28
-
Данил627006.01.2022 01:11
-
даналеди06.05.2022 17:07
-
sarah20568225.01.2020 22:25
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.