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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.01.2014, 21:34   #1
maksim1908
Новичок
Джуниор
 
Регистрация: 27.01.2014
Сообщений: 1
По умолчанию Описать процедуру которая для трех чисел a b c осуществляет перераспределение значений по правилу а>= b>=c

Описать процедуру которая для трех чисел a b c осуществляет перераспределение значений по правилу а>= b>=c
maksim1908 вне форума Ответить с цитированием
Старый 27.01.2014, 22:16   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
procedure aga(var a,b,c:integer);
var q:integer;
begin
 if a<b then begin q:=a;a:=b;b:=q;end;
 if b<c then begin q:=b;c:=b;c:=q;end;
end;
Вроде так. Но пишу с потолка. Не проверял.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.01.2014, 22:37   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, во-первых, опечатка:
Цитата:
Код:
if b<c then begin q:=b;c:=b;c:=q;end;
Код:
if b<c then begin q:=c;c:=b;b:=q;end;
добавим брутальности..
как вам такой вариант:
Код:
procedure aga(var a,b,c:integer);
var q:integer;
begin
 while (a<b) or (a<c) or (b<c) do begin
   if a<c then begin q:=a;a:=c;c:=q;end;
   if a<b then begin q:=a;a:=b;b:=q;end;
   if b<c then begin q:=c;c:=b;b:=q;end;
 end;
end;

Последний раз редактировалось Serge_Bliznykov; 27.01.2014 в 22:44.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.01.2014, 23:11   #4
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

А как Вас такой?
Код:
uses Math;

b := a+b+c-Min(Min(a, c), b)-Max(Max(a, c), b);
c := Min(Min(a, c), b);
a := Max(Min(a, c), b);
Poma][a вне форума Ответить с цитированием
Старый 27.01.2014, 23:54   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Poma][a, если в с или a попадет b, то уже что-то не так. А вообще для a=1, b=2, c=3 получим из твоего кода a=2, b=2, c=1
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.01.2014, 23:56   #6
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Угу.. Теряем значение.. спасибо.. проглядел..
Poma][a вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Описать процедуру Minmax(X, Y), записывает в переменную X минимальное из значений X и Y, а в переменную Y - максимальное kinash96 Помощь студентам 3 12.10.2013 19:49
Программа с применением пользовательских функций,которая осуществляет выбор способа обмена данными NIKI18 C++ Builder 0 19.12.2011 19:32
описать процедуру которая объединяет 2 упорядоченных по возрастанию списка в один упорядоченный по возрастанию Анастасья Помощь студентам 0 28.11.2011 17:33
Описать функцию или процедуру,которая: Определяет,яляется ли список L пустым Ksardas Помощь студентам 2 14.12.2009 16:41