Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] Замена действительных чисел полусуммами


Автор: KycTo 15.1.2008, 22:02
 1.
Если сумма трех попарно различных действительных чисел x,y,z меньше единицы, то наименьшее из этих  трех чисел заменить полусуммой двух других, в противном случае заменить меньшее из x и y полусуммой двух оставшихся значений
 

Автор: KycTo 16.1.2008, 14:18
Цитата

1.
Если сумма трех попарно различных действительных чисел x,y,z меньше единицы, то наименьшее из этих  трех чисел заменить полусуммой двух других, в противном случае заменить меньшее из x и y полусуммой двух оставшихся значений


Код

procedure TForm1.Button1Click(Sender: TObject);
var x,y,z: real;
begin
x:=StrToFloat (edit1.Text);
y:=StrToFloat (edit2.Text);
z:=StrToFloat (edit3.Text);
if ((x+y+z)<1) then
begin
if ((x<y) and (x<z)) then
begin
x:=(y+z)/2;
end
else begin
if ((y<x) and (y<z)) then
begin
y:=(x+z)/2;
end
else begin
z:=(y+x)/2;
end;
end;
end
else begin
if (x<y) then
begin
x:=(y+z)/2;
end
else begin
y:=(x+z)/2;
end;
end;
end;
ShowMessage ('x=' + FloatToStr(x) + #13 + 'y=' +FloatToStr);
end;

Наваял кое-что в этой проге все работает (по примеру как нам давали в универе) только немогу разобраться как сделать так чтобы ответ выводился, чз ShowMessage неполучаеться

Автор: Hang 17.1.2008, 19:58
код на работоспособность не проверял!
Код

procedure TForm1.Button1Click(Sender: TObject);
var x,y,z: real;
begin
  x:=StrToFloat (edit1.Text);
  y:=StrToFloat (edit2.Text);
  z:=StrToFloat (edit3.Text);
  if ((x+y+z)<1) then
  begin
    if ((x<y) and (x<z)) then
      x:=(y+z)/2
    else
      begin
        if ((y<x) and (y<z)) then
          y:=(x+z)/2
        else
          z:=(y+x)/2;
      end;
  end
else
  begin
    if (x<y) then
      x:=(y+z)/2
    else
      y:=(x+z)/2;
  end;
  ShowMessage ('x=' + FloatToStr(x) + #13 + 'y=' +FloatToStr(y));
end;

Автор: KycTo 18.1.2008, 01:04
спс smile , работает!!!

Автор: katerina001 21.12.2009, 19:03
Друзья, помогите с этой же задачей, только нужно написать на паскале. заранее спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)