Показать сообщение отдельно
Старый 19.04.2015, 11:07   #10 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Рома123 Посмотреть сообщение
4) упорядочить значения трёх переменных a,b и c в порядке их убывания.
Тут есть куча способов. Например, так. Поясняю:
1. Введены вспомогательные функции поиска максимума двух (Max2) и (Max3) чисел.
2. Из трех введенных ищется максимальное.
3. Если это не первое из них (а), то путем обмена переменной а присваивается максимальное значение, а бывшей максимальной (b или c) - старое значение переменной а.
4. Делается аналогичная манипуляция по двум оставшимся переменным (b и c).
Код:
Var
 a,b,c,d,m:Real;

Function Max2(q1,q2:real):real;
begin
 if q1>q2 then Max2:=q1 else Max2:=q2;
end;

Function Max3(q1,q2,q3:real):real;
var p:real;
begin
 p:=max2(q1,q2);
 if p>q3 then Max3:=p else Max3:=q3;
end;

Begin
 Write('a = ');
 Readln(a);
 Write('b = ');
 Readln(b);
 Write('c = ');
 Readln(c);
 m:=Max3(a,b,c);
 if m=b then
  begin
   d:=a;
   a:=b;
   b:=d;
  end;
 if m=c then
  begin
   d:=a;
   a:=c;
   c:=d;
  end;
 m:=Max2(b,c);
 if m=c then
  begin
   d:=b;
   b:=c;
   c:=d;
  end;
 Writeln(a:0:3,'  ',b:0:3,'  ',c:0:3);
 Readln
End.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070