Постановка задачи
Известно, что оптимальный вес человека определяется так: рост человека минус 100. Если твой фактический вес меньше оптимального, то ты худой, и наоборот, если больше, то надо похудеть.
Надо разработать такую программу, чтобы пользователь, введя свой рост и фактический вес, мог бы с помощью программы определить, худой он или полный, и насколько надо поправиться или похудеть (см. рис 1).
Рисунок 1.
Рекомендуемый план разработки проекта.
1. В соответствии с рис.2 расположите необходимые компоненты. В Edit1 будем вводить вес в кг., а в Edit2 – рост в см.
Рисунок 2
2. Сохраните оба файла проекта в папке Weight.
3. Введите в раздел VAR переменные для сохранения значений фактического веса (faktW), оптимального веса (optW), роста (Rost) и разницы между оптимальным весом и фактическим (Delta). Пусть значения этих переменных будут округленными, в этом случае тип этих переменных можно объявить как Integer.
VAR
factW, optW, Rost, Delta : integer;
4. Образуйте процедуру, реагирующую на щелчок по кнопке Button1, и заполните ее следующим кодом.
procedure TForm1.Button1Click(Sender: TObject);
Begin
factW := StrToInt(Edit1.text);
Rost := StrToInt(Edit2.Text);
OptW :=Rost - 100;
Delta := abs(factW - OptW);
if OptW = factW then Label3.caption := 'Ваш вес оптимален'
Else
if OptW > factW then Label3.caption := 'Вам надо поправиться на '+IntToStr(Delta)+' кг.'
Else
Label3.caption := 'Вам надо похудеть на '+IntToStr(Delta)+' кг.'
End;
4. В предыдущем пункте мы договорились вводить округленные исходные данные. Но это не всегда приемлимо. Усовершенствуйте программу так, чтобы можно было бы вводить десятичные величины. Для этого в разделе Var назовите тип переменных не Integer, а Real.
VAR
factW, optW, Rost, Delta : real;
Кроме этого, преобразование действительных чисел в строковый будет выполняться с помощью функции: FloatToStr( ).
В целом процедура Button2Click будет выглядеть следующим образом:
procedure TForm1.Button1Click(Sender: TObject);
begin
factW := StrToFloat(Edit1.text);
Rost := StrToFloat(Edit2.Text);
OptW :=Rost - 100;
Delta := factW - OptW;
if OptW = factW then Label3.caption := 'Ваш вес оптимален'
else
if OptW > factW then Label3.caption := 'Вам надо поправиться на '+FloatToStr(Delta)+' кг.'
else
Label3.caption := 'Вам надо похудеть на ‘ + FloatToStr(Delta)+' кг.';
end;
Дата добавления: 2014-12-01; просмотров: 985;