Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laby (1).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
5.58 Mб
Скачать

Зертханалық жұмыс №12.

Тақырыбы: Repeat … until – аяқталу шартымен берілген цикл операторы.

Техникалық жабдық: Дербес компьютер.

Бағдарламалық жабдық: Windows 98/200/XP, Borland Delphi7.

Мақсаты: Қайталанушы алгоритмдерді Delphi ортасында бағдарламалау дағдыларын қалыптастыру, өзіндік тапсырмаларды орындау.

Негізгі ұғымдар.

Есептің шешімін көрсететін алгоритмдерде қайталанатын командаларды немесе оның бағдарламасын құрғанда қайталанатын операторларды кездестіруге болады.

Турбо Паскальда мұндай қайталануларды жазу үшін цикл операторының үш түрі қолданылады.

While … do – жалғасу шартымен берілген цикл операторы;

Repeat … until – аяқталу шартымен берілген цикл операторы;

Fordo – параметрлі цикл операторы.

Repeat … until – аяқталу шартымен берілген цикл операторында цикл денесі ең болмағанда бір рет орындалады, өйткені әуелі цикл денесі орындалады да, сонан соң барып, шарт тексеріледі. Бағдарламада жалпы жазылу түрі:

Repeat S until R; мұндағы R – шарт, ол true(ақиқат) немесе false (жалған) мән қабылдайды, ал S – цикл денесі. Until қызметші сөзі дейін дегенді білдіреді.

1-мысал.

Геометриялық прогрессияның бірінші мүшесі және еселігі белгілі, алғашқы n мүшесінің қосындысын аяқталу шартымен берілген циклдің көмегімен есепте қажет.

Шешуі.

Бірінші мүшесін (р), еселігін (q) және мүшелер саны (n)-ді TEdit компоненттері арқылы оқып, ал нәтижесін TMemo-ның көмегімен шығарамыз. Жоғарыдағы R-шартты і-параметрі арқылы тексеріледі, яғыни і-ді бірге апарып оны n-нен үлкенбе деп тексеріледі. Сонымен қатар TMemo-да жазылатын мәтіннің шрифтісінің стилін және түсін өзгерту үшін TGroupBox контейнеріне екі TCheckBox компонентін орналастырайық. Компонент күйін State қасиеті көрсетеді. CbUn checked – жоқ, cb checked – иә, cbGrayed – білмеймін. Checked қасиеті қолданушының иә/жоқ типті таңдауын көрсетеді.

Есеп шешімін BitBtn1 компоентінің OnClick оқиғасында жүзеге асырамыз. Қосымша интерфейсі 1-сурете көрсетілген.

Форма мен оның компоненттерінің қасиеттерін төмендегідей орнату қажет.

Компоенттер

Қасиеттер

Меншіктелетін мән

Form1

Caption

Геометриялық прогрессия

Form1

Name

Form1

Label1

Caption

Бірінші мүшесін енгіз

Edit1

Text

Тазалау

Label2

Caption

Еселігін енгіз

Edit2

Text

Тазалау

Label3

Caption

Мүшесінің санын енгіз

BitBtn1

Kind

bkOK

BitBtn2

Kind

bkClose

Memo1

Lines

Тазалау

GroupBox1

Caption

Редакторды келтіру

CheckBox1

Caption

«курсив» стилі

CheckBox2

Caption

«қызыл» түс

1-сурет. Қосымша интерфейсі.

Бағдарлама кодын келтірейік.

procedure TForm1.BitBtn1Click(Sender: TObject);

var p,q,i,n,s:integer;

begin

p:=strtoint(edit1.Text);

q:=strtoint(edit2.Text);

n:=strtoint(edit3.Text);

i:=1;

repeat

s:=s+p;

p:=p*q;

i:=i+1;

until i>n;

memo1.Clear;

memo1.Lines.Add('Геометриялық прогрессияның'+' '+edit3.Text+' '+'мүшесінің қосындысы s='+inttostr(s));

end;

procedure TForm1.CheckBox1Click(Sender: TObject);

begin

if CheckBox1.State=cbChecked then

memo1.Font.Style:=[fsitalic]

else

memo1.Font.Style:=[];

end;

procedure TForm1.CheckBox2Click(Sender: TObject);

begin

if CheckBox2.State=cbChecked then

memo1.Font.Color:=clRed

else

memo1.Font.Color:=clBlack;

end;

Өзіндік жұмыс

Берілген n натурал саны және х нақты сандары үшін өрнектің мәнін есептеу программасын құр. Өрнектің мәні цикл операторының көмегімен есептелінеді. Бағдарлама құру барысында циклды ұйымдастыру үшін цикл операторын пайдалану қажет.

Нұсқалар

Алғашқы мәліметтер

Үшке қалдықсыз бөлінетін k-ға дейіггі натурал сандардың көбейтіндісін табыңдар.Алгоритм құрғанда бірінші сан 3 екендігін және әрбір келесі сан алдыңғысынан 3-ке артық болатындығын ескереміз

Экранға 10-нан 20-ға дейінгі сандардың квадратттарын шығаратын бағдарлама құрыңыздар.

1-ден 100-ге дейінгі сандардың қосындысын есептейтін бағдарлама құру.

Пернетақтадан оншақты теріс және оң сан енгізіңіздер. Барлық теріс сандарды олардың содульдерімен алмастырып сандарды экранға шығарыңыздар

Пернетақтадан 10 сан енгізіңіздер. Егер олардың ішінде 15-тен үлкені бар болса, онда оларды 15-пен алмастырыңыздар. Сандарды экранға басып шығарыңыздар.

Бақылау сұрақтары:

1. Цикл операторларының неше түрі бар?

2. Аяқталу шартымен берілген цикл операторының жалпы жазылу түрі?

3. CheckBox компонентінің қандай оқиғалары бар?

4 BitBtn компонентінің қандай оқиғалары бар?

5. Memo компонентінің қандай оқиғалары бар?

Әдебиеттер:

1. А. Я. Архангельский. Delphi 7.

2. М.М. Ерекешова, Т.А.Әмірғалиева Delphi ортасында программалау негіздері

3. Ю.А.Шпак Delphi 7 на примерах

К.З.Халықова Программалау тілдерін оқыту (Delphi)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]