|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.12.2008, 12:16 | #1 |
Пользователь
Регистрация: 06.12.2008
Сообщений: 16
|
Помогите решить задачку...(Матрица)
Дана матрица А(5,3)
1)Найти строку содержащую минимальный элемент матрицы. 2)Найденную строку поменять местами с 4-ой строкой. 3)В полученной матрице подсчитать сумму для элементов 3-ей строки по формуле. S=сумма от j-1 до 4 (корень(модуль(1,2+a3i))) Нужна программа. |
06.12.2008, 13:40 | #2 |
Форумчанин
Регистрация: 06.12.2008
Сообщений: 613
|
Держи :D
program search;
{Дана матрица А(5,3): 1)Найти строку содержащую минимальный элемент матрицы. 2)Найденную строку поменять местами с 4-ой строкой. 3)В полученной матрице подсчитать сумму для элементов 3-ей строки по формуле. S=сумма от j-1 до 4 (корень(модуль(1,2+a3i))) } const c=5; {Размеры массива} b=3; var A : array [1..c,1..b] of shortInt; {Массив} i,k,n : byte; { Счетчики и последний - строка с минимальным элементом } min,t : shortInt; { Минимальный элемент и дополнительная переменная для обмена местами строк массива } Sum : real; { Вещественная сумма } begin { Начало программы } Randomize; { Инициализируем генератор случайных чисел } { Заполняем элементы матрицы: } for i:=1 to c do for k:=1 to b do a[i,k]:=random(50)-25; { Выводим матрицу } writeln ('Ваша матрица :'); for i:=1 to c do begin for k:=1 to b-1 do write (A[i,k],'|'); writeln (A[i,b]); end; min:=25; { Присваиваем максимальное из возможного значения, которое может дать генератор случайных чисел } { Ищем минимальный элемент, пока не исчерпаем матрицу } for i:=1 to c do for k:=1 to b do if A[i,k]<min then { Если очередной элемент матрицы меньше минимального, то минимальным на этом этапе становится это элемент } begin min:=A[i,k]; n:=i { И записываем номер строки этого минимального элемента } end; writeln ('Минимальный элемент ',min,' в ',n,' строке'); { Теперь меняем местами 4 строку и ту, в которой обнаружили самыq минимальны элемент: если минимальный элемент в 4 строке, то менять не нужно } if n<>4 then for k:=1 to b do begin t:=A[n,k]; A[n,k]:=A[4,k]; A[4,k]:=t end; { Выводим новую матрицу с замененными строками (или матрицу без изменений, если минимальный элемент оказался в 4 строке } writeln ('Ваша новая матрица:'); for i:=1 to c do begin for k:=1 to b-1 do write (A[i,k],'|'); writeln (A[i,b]); { Тут лихо делаем в конце каждой строки матрицы перенос на новую строку для "наглядности" матрицы :D} end; for i:=1 to b do { Тут считаем сумму элементов 3-ей строки по заданной формуле } Sum:=Sum+sqrt(abs(1.2+A[3,i])); { Выводим сумму } writeln ('Сумма элементов 3-ей строки:'); writeln (Sum :4:4); readln end. { Конец программы } { The End xD} Не очень понял, что значит строчка "S=сумма от j-1 до 4" - просто написал тебе сумму по формуле Sum:=Sum+корень из модуля 1.2+элемент 3 строки |
06.12.2008, 16:08 | #3 |
Пользователь
Регистрация: 08.03.2008
Сообщений: 14
|
---------------
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ПОМОГИТЕ ПРОВЕРИТЬ ЗАДАЧКУ НА ПАСКАЛЕ!Матрица,2-Х мерный массив! | vdv08 | Помощь студентам | 6 | 23.09.2008 13:13 |
Помогите решить задачку | rainbow1 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 28.08.2008 16:59 |