Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2012, 17:38   #1
ArKaWa
 
Регистрация: 07.11.2012
Сообщений: 3
По умолчанию задача

ребят помогите переделать код.

Program PoiskMin;
Const m=5;n=3; {число строк и столбцов}
Type arrA=array[1..m,1..n]of real; {описание типа массива}
Var A:arrA; {описание переменных}
{процедура ввода элементов массива}
Procedure VVOD;
var i,j: integer;
Begin
for i:=1 to m do
for j:=1 to n do begin
Write('Введите элемент массива а[',i,',',j,']: ');
readln(a[i,j]);
end;
End ;
{Функция поиска строки с минимумом. На выходе - номер строки}
Function MinStr: integer;
var i,j: integer;
mins: integer;
min: real;
begin
min:=a[1,1];
mins:=1;
for i:=1 to m do
for j:=1 to n do
if a[i,j]<min then begin
mins:=i;
min:=a[i,j];
end;
MinStr:=mins;
end;
{Процедура замены строк. str1, str2 - номера строк для замены}
Procedure StrReplace(str1,str2: integer);
var j: integer;
begin
For j:=1 to n do begin
a[str1,j]:=a[str1,j]+a[str2,j]; {Классический вариант смены значений без ввода
дополнительной переменной: a:=a+b}
a[str2,j]:=a[str1,j]-a[str2,j]; {b:=a-b}
a[str1,j]:=a[str1,j]-a[str2,j]; {a:=a-b}
end;
End;
{Функция подсчета суммы строки s}
Function SumStr(s: integer): real;
var j: integer;
sum: real;
begin
sum:=0;
For j:=1 to n do sum:=sum+sqrt(abs(1.2+a[s,j]));
SumStr:=sum;
end;

{Процедура вывода массива}
Procedure OutArray;
var i,j: integer;
begin
for i:=1 to m do begin
for j:=1 to n do Write(a[i,j]:2:2,' ');
WriteLn;
end;
End;
{Основная программа}
begin
Vvod;
WriteLn('Исходный массив: ');
OutArray;
WriteLn;
WriteLn('Номер строки с минимумом: ',MinStr);
WriteLn;
StrReplace(MinStr,4);
WriteLn('Массив после замены строк: ');

OutArray;
WriteLn;
WriteLn('Сумма элементов 3-ей строки: ',SumStr(3):2:2);
ReadLn;
End.



так, чтобы он подходил для решения задачи:

Дана матрица А(4,4).
Найти сумму S отрицательных элементов на побочной диагонали.
Найти наибольший элемент второго столбца и его местоположения.
Заменить найденный максимальный элемент во 2-ом столбце на значение суммы S.

Последний раз редактировалось ArKaWa; 23.12.2012 в 17:41.
ArKaWa вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача на структуру(struct)/задача на работу с файлом SevenArth Помощь студентам 0 26.04.2012 19:06
Задача о станках Задача Джонсона Aiga Помощь студентам 4 05.02.2012 21:48
Задача на оптимальный расчет маршрута (задача в презентации) в табличном процессоре Excel Toofed Помощь студентам 0 30.11.2011 01:12
Задача минимизации дисбаланса на линии сборки (задача минимакса) LenZab Microsoft Office Excel 13 13.03.2011 22:51