2.6.-rasm.
2.2. Vaznni nazorat qilish
unit Vazn_U; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type
TForm1 = class(TForm) Label1: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label2: TLabel;
Label3: TLabel;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
w:real; { vazn } h:real; { bo'y } opt:real;{ optimal vazn } d:real;
begin w:=StrToFloat(Edit1.text); h:=StrToInt(Edit2.Text); opt:=h-100;
if w=opt then
Label3.caption:='Siz yaxshi formadasiz!'
else
if w < opt then
begin
end.
else
end;
end begin
end;
d:=opt-w; Label3.caption:='Siz '
+ FloatToStr(d)+ ' kg. ga semirishingiz kerak.';
d:=w-opt; Label3.caption:='Siz'
+ FloatTostr(d)+ ' kg. ga ozishingiz kerak.';
Case buyrug’i
Avvalgi misolda ko’p variantli tanlash ichma-ich joylashgan ikkita if buyrug’idan foydalanib ammalga oshirilgan. Bunday yondoshish doimo qulay emas. Ayniqsa dasturda tanlash varianti ko’p bo’lsa.
Delphi tilida ko’p variantlardan tanlash uchun Case buyrug’idan foydalaniladi. Uning umumiy ko’rinishi quyidagicha:
case tanlovchi of
ro’yhat1:
begin
end;
ro’yhat2:
begin
end;
{ buyruqlar 1 }
{ buyruqlar 2 }
.................................
ro’yhatN:
begin
else
end;
bu yerda:
end; begin end;
{ buyruqlar N }
{ buyruq )
tanlovchi — dasturning keyingi bajariladigan qadamini aniqlovchi qiymatni beruvchi ifoda.
Ro’yhat N — konstantalar ro’yhat. Agar konstantalar sonlar diapazonidan iborat bo’lsa, u holda ro’yhat o’rniga birinchi va ohirgi kostantalarni orasiga ikkita nuqta qo’yib berish mumkin. Masalan, 1,2,3,4,5,6 ro’yhat 1..6 ko’rinishida yozilishi mumkin.
Case buyrug’i quyidagicha ishlaydi:
Dastlab tanlovchi ifodaning qiymatini hisoblaydi.
tanlovchi ifodaning qiymati ketma-ket kostantalar ro’yhatidagi kostantalar bilan solishtiriladi.
Agar ifoda qiymati ro’yhadagi konstanta bilan mos tushsa, u holda shu ro’yhatga mos buyruqlar bajariladi. Shu bilan case buyrug’i ishi yakunlanadi.
Agar ifoda qiymati ro’yhatdagi kostantalarda birortasiga ham mos kelmasa, u holda else buyrug’idagan keyingi buyruqlar ketma-ketligi bajariladi.
Agar else yozilmasa u holda case bajarilmasa case dan keyingi buyruqlar bajariladi. 2.7-rasmda case buyrug’ining ishlash algoritmi keltirilgan.
Do'stlaringiz bilan baham: |