1-misol:
for (int n = 1; n<= 10; n++) { . . . }
Bu misolda n o‘zgaruvchisi 1 dan 10 gacha qiymatlarning barchasini qabul qiladi, y’ani sikl tanasi 10 marotaba bajariladi.
2-misol: for (int i = 1, j = 100; i != j; i ++, j --) {. . .}
Bu operatorda inistializatsiya sektsiyasida ikkita o‘zgaruvchiga boshlang‘ich qiymatlar berilgan. Har bir takrorlanishda i ning qiymati bittaga oshadi, j ning qiymati esa bittaga kamayib boradi. Takrorlanish jarayoni ikkita o‘zgaruvchining qiymati o‘zaro teng bo‘lganda, ya‘ni 100/2 = 50 da to‘xtaydi.
misol: for (int k = 1; ; k++) { . . . }
Bu yerda sikldan chiqish shartinig o‘rnida “;” (nuqtali vergul) belgisidan iborat bo‘sh operator turibdi. Demak, takrorlanish jarayoni sikl tanasida boshqaruvni uzatuvchi operatorga duch kelmaguncha qaytariladi. O‘zgaruvchi k ning qiymati esa har bir takrorlanishda birga oshib boradi.
Do while operatorini sikl albatta bir marta bajarilishi zarur bol’gan hollarda ishlatish qulay.
For operatorini sanagich orqali boshqariladigan sikllarni tashkil etishda ishlatish maqsadga muvofiqdir.
Bir vаriаntning yechimi
1-masala. f1 va f2 funktsiyalarning qiymatini hisoblash dasturi tuzilsin. Х o‘zgaruvchisining qiymatlari a dan b gacha h qadam bilan o‘zgarsin (a<=x<=b).
f1=
x3 ex
va f2=1 2sin x .
Dasturning konsol rejimidagi ko‘rinishi quyidagicha:
//---------------------------------------------------------------
#include
#include
#include
#include
#pragma hdrstop
//---------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
float a, b, h, f1, f2, x ;
cout<<" A, B, Hqiymatlarini kiriting" <>a>>b>>h;
x=a;
while (x<=b)
{
f1=sqrt(pow(x,2))*x+1*exp(-x); f2=1+2*sin(x);
cout<<"x= "< f1="<tajriba ishida Memo, Lable, Edit, Button komponentalari ishlatilgan.
Editlar soni foydalanuvchining nechta qiymat kirgazishiga bog‘liq. Button1 Y funktsiyasining qiymatlarini hisoblash uchun yaratilgan. Memo1 [a,b] oralig‘ida Y funktsiyasining barcha qiymatlarini ko‘rsatish uchun o‘rnatilgan.
Dastur kodi:
//----------------------------------------------------------------
#include
#include
#pragma hdrstop
#include "Unit1.h"
//-----------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm" TForm1 *Form1;
//------------------------------------------------------------------
fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
Xulosa
Komponentalarni shaklga o’rnatish uchun komponentlar palitrasidagi kerakli piktogramma tanlanadi, so’ngra shaklning komponenta joylanishi kerak bo’lgan joyi tanlanadi. Shundan so’ng komponentalar xossalarini ob’ektlar inspektori yordamida tahrirlash mumkin. Properties bandida komponentalar xossalarining ro’yxati (chapda) va bu xossalarning qiymatlar ro’yxati (o’nggda) joylashgan.
Komponentalar ko’rinadigan (vizual) va ko’rinmaydigan (vizual bo’lmagan) larga bo’linadi. Vizual komponentalar bajarilish paytida proektlash paytidagidek paydo bo’ladi. Bunga knopkalar va tahrirlanuvchi maydonlar misol bo’la oladi. Vizual bo’lmagan komponentalar proektlan vaqtida shakldagi piktogramma ko’rinishida paydo bo’ladi. Ular bajarilish paytida hech qachon ko’rinmaydi, ammo ma’lum funksionallikga ega bo’ladi (masalan, berilganlarga murojatni ta’minlaydi, Windowsning standart muloqatlarini chaqiradi).
Xossalar komponentalarning tashqi ko’rinishi va tabiatini aniqlovchi atributlar hisoblanadi. Xossalar ustunidagi ko’p xossalar komponentalari oldindan o’rnatilgan (po umolchaniyu) qiymatlarga ega bo’ladi (masalan, knopkplar balandligi). Komponentalar xossalari xossalar varag’i (Properties) da aks ettiriladi. Ob’ektlar inspektori komponentalarning nashr etilgan (published) xossalarini aks ettiriladi. published-xossalardan tashqari komponentalar umumiy (public), faqat ilovalarning bajarilish paytidagina murojat qilish mumkin bo’lgan nashr qilingan xossalarga ega bo’ladi. Xossalar ro’yxati ob’ektlar inspektori xossalar varag’ida joylahadi. Xossalarni proektlash paytida aniqlash mumkin yoki ilovalarning bajarilish paytida ko’rinishini o’zgartirish uchun kod yozish mumkin. Komponenta xossalarini proektlash paytida aniqlash uchun shakldagi komponenta tanlanadi, ob’ektlar inspektori xossalari varag’i ochiladi, aniqlanadigan xossa tanlanadi va zurur bo’lsa xossalar muharriri yordamida o’zgartiriladi (bu kiritish uchun oddiy maydon yoki son, osilib tushuvchi ro’yxat, ochiluvchi ro’yxat, muloqat paneli va boshqalar bo’lishi mumkin).
Biror komponentaning xossalarini dasturning bajarilish paytida o’zgartirish uchun «Imya Komponenta» –> «Nazvanie svoystva» tavsifiga o’zaruvchidek murojat qilish kerak, ya’ni qiymatlarni o’zimiz hohlagandek o’qishimiz yoki almashtirishimiz mumkin.
Foydalanilgan adabiyotlar
Абрамов В.Г., Трифонов Н.П., Трифонова Г.Н. Введение в язык Паскаль.-М.:Наука, 1988.-
320с.
Абрамов С.А.,Гнезделова Капустина Е.Н.и др. Задачи по программированию. - М.: Наука,
1988.
Вирт Н. Алгоритмы + структуры данных программа.-М.:Мир,1985.- 405с.
Культин Н.Б. Программирование в Turbo Pascal 7.0 и Delphi. СПб.: БХВ-Петербург, 2001.-
416с.
Кэнту М. Delphi 5 для профессионалов.- СПб: Питер, 2001. -944 с.
Немнюгин С.А. Turbo pascal, учебник. Изд. Питер., 2001, -496 с.
Ставровский А.Б. Турбо Паскаль. 7.0 и Delphi. 2-е изд. 2001, -416с.
Файсман А. Профессиональное программирование на Турбо-Паскаль. Ташкент 1992.
Шумаков П.В.Delphi3и разработка приложений баз данных.- М.:«НОЛИДЖ»,1998.-704
Пилшиков В.Н. Упражнения по языку Паскал-М.: МГУ, 1986.
Б. Керниган. Д. Ритчи «Язык програмирования Си» М. Финансы и статистика 1992 г.
Д. Маслова «Введение в языку Си» М. 1991 г.
Л. Амераль «Програмирование графики на Турбо Си» М., «Сол систем» 1992 г.
В. В. Подбельский, С. С. Фомин, «Программирование на языке Си», М. «Финансы и статистика», 1999 г.
P.Karimov, S.Irisqulov, A.Isabaеv «Dasturlash» Toshkеnt-2003 yil.
Advanced Information System, Inc., Oracle. Энциклопедия пользователя. М., Бином, 1996 г.
А. Нейбауэр. «Моя первая программа на Си/Си++». Петербург. 1995 г.
А. А. Мот, Дж. Ратклифф и др. «Секреты программирование игр». Петербург. 1995 г.
Муррей. «Описание языка Си++». Нью-Йорк,
Do'stlaringiz bilan baham: |