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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.01.2011, 08:36   #1
neomax38
Пользователь
 
Регистрация: 17.09.2010
Сообщений: 72
Восклицание Задание на процедуры и функции

Вот задание:
Даны векторы A[10], B[18]. У каждого вектора, компоненты которого не образуют неубывающей последовательности, отрицательные компоненты заменить максимальным элементом.

Проверьте правильность написания, в чем ошибка?

Код:
Program procedur;
Uses CRT;
type mas=array[1..18] of real;

Procedure Vvod(k:byte;var x:mas);{ввод}
var i:integer;
Begin
for i:=1 to k do
begin
write('Введите элемент [', i,']= ');
readln(x[i]);
end;
end;

Procedure Vyvod(k:byte; x:mas);{вывод}
var i:integer;
begin
for i:=1 to k do
write(x[i]:4);
end;

function GetMaxSwap (var M: mas; count: integer):real;//отрицательных компонентов
var
i: integer;
max: real;
begin
max := M[1];
for i := 1 to count do
if M[i] > max then max := M[i];
for i := 1 to count do
if M[i] < 0 then M[i] := max;
end;

function CheckAndReplace(var M: mas; count: integer):boolean;
var
i: integer;
begin
for i := 2 to count do
if M[i-1] > M[i] then begin // есть элемент, который меньше какого-то из предыдущих
GetMaxSwap(M, count); //отрицательные компоненты заменить максимальным элементом
break; // Выход, больше проверять нечего
end;
end;

var c,t,f:mas;
n:integer;

BEGIN
clrscr;
writeln('Матрица А:');
Vvod(10,C);
Vyvod(10,C);
writeln('Матрица В:');
Vvod(18,T);
Vyvod(18,T);

writeln('вывод ',CheckAndReplace(C,n));

end.

Последний раз редактировалось neomax38; 07.01.2011 в 10:44.
neomax38 вне форума Ответить с цитированием
Старый 07.01.2011, 12:58   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Программа компилируется?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.01.2011, 22:00   #3
bender_prog
 
Регистрация: 06.01.2011
Сообщений: 4
По умолчанию

да, компилится
bender_prog вне форума Ответить с цитированием
Старый 07.01.2011, 22:12   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Значит все ок
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.01.2011, 23:16   #5
rubius2008
Форумчанин
 
Регистрация: 19.03.2010
Сообщений: 409
По умолчанию

я так думаю, что еще стоит добавить вывод преобразованного вектора
Есть вопросы, пишите в ЛС.
rubius2008 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задание функции (Pascal) k0tone Помощь студентам 2 15.11.2010 16:29
Квик СИ (Задание собственной функции) Студент Владимир Помощь студентам 0 22.04.2010 21:13
Задание массива с помощю функции Junk1E Общие вопросы C/C++ 8 11.12.2009 17:00
Процедуры и функции junkie Паскаль, Turbo Pascal, PascalABC.NET 5 27.04.2009 19:05