VISUAL STUDIO MUXITIDA BUDILNIK DASTURINI YARATISH
![O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA
KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
URGANCH FILIALI
KOMPYUTER INJINIRINGI FAKULTETI
DASTURIY INJINIRINGI KAFEDRASI
C++ DA DASTURLASH FANIDAN
Kurs ishi
MAVZU: VISUAL STUDIO MUXITIDA BUDILNIK DASTURINI YARATISH.
Bajardi:
911-14 guruh
talabasi
Babajanov
Xursandbek
Ilmiy rahbar:
Dasturiy injiniring
kafedrasi
assistenti
Xo’jayev Otabek](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_1.png)
![MUNDARIJA
KIRISH …………………………………………………………………. ..2
I. NAZARIY QIS M ……………………………………………………… 3
1.1. Budilnik dasturi haqida umumiy ma’lumot ……………………….. 3
1.2. Visual Studio 2012 dastur lash muhiti ……………………………… 5
1.3.Masalaning qo’yilishi ………………………………………………... 10
II. ASOSIY QISM …………………… ………………………………… 11
2.1. Dastur komponentalari …………………………………………….... 11
2.2 . Foydalanuvchi uchun qo’llanma ……………………………………. 15
XULOS A ………………………………………………………………... 19
FOYDALANILGAN ADABIYOTLAR ……………………………… 20
ILOVA …………………………………………………………………... 21](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_2.png)
![KIRISH.
Ilmiy texnika rivojining diqqatga sazovor xususiyatlaridan biri - hisoblash
texnikasining inson faoliyatining barcha sohalariga keng miqyos ida tatbiq
qilinishidir. Xalq xo’jaligining rivoji o’z navbatida yuqori unumli elektron
hisob lash mashinalarini (EHM), raqamli -programmali boshqariladigan stanoklar va
qurilmalar, sanoat robotlari va ishlab chiqarish modullarini ishlab chiqarishni
ko’paytirish va keng miqyosda tatbiq etishni talab etadi. Avtomatlashtirishning
asosiy quroli bo’lib, o’zining algoritmik va programma ta’minotiga ega bo’lgan
kompyuterlar xizmat qiladi. Dvigatel va robotlarning kashf qilinishi jismoniy
mehnatni avtomatlashtirish asrini ochgan bo’lsa, kompyuter va sun’iy intellekt
vositalarning paydo bo’lishi inson aqliy faoliyatida xuddi shunday yangi davrni
boshlab berdi.
A хborot te хnologiyalari jahonda jadal sur'atlar bilan rivojlanib,
takomillashib borayotgan sohadir. Bu sohaning rivoji uchun bizning buyuk
ajdodlarimizning ilmiy kashfiyotlari asos bo’lib хizmat qilmoqda. Bu haqda
Prezidentimiz I.A.Karimov o’zining "Yuksak ma'naviyat - yengilmas kuch"
asarida quyidagi fikrlarni keltirib o’tadi: "Shu nuqtai nazardan qaraganda,
zaminimizda yashab o’tgan buyuk allomalarimiz, mutafakkir bobolarimizning
ibratli hayoti va faoliyati, bemisl ilmiy -ijodiy kashfiyotlari bugun ham jaho n ahlini
hayratga solayotganin i g’urur bilan ta'kidlash lozim‖ .
Xususiy kompyuterlarning paydo bo’lishi informatikani tatbiq etish va
"kompyuter bo’yicha savodsizlik"ni tugatishni tezlatishga asosiy turtki bo’ldi.
Hozirgi zamon kompyuterlariga bo’lgan qizi qish shuning uchun ham oshdiki, ular
masalani yechishda mehnat unumdorligini keskin oshirdi. Bu integral sxemalar
yangi kompyuterlarda qo’llanishini hisobga olsak, kompyuterlarning
mukammallashib borishi juda tez yuz berishi va yaqin orada juda ham mukamma l
kompyuterlar yaratilishi kutilishiga umid qilishimiz mumkin.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_3.png)
![I. NAZARIY QISM
1.1. Budilnik dasturi haqida umumiy ma’lumot
Ushbu kurs ishi Budilnik dasturini yaratishga qaratilgan bo`lib, bu
dasturning vazifasi vaqtni belgilash yoki biror narsani esl atishni amalga oshirish
hiso blanadi.
Ushbu dasturiy vositani ishlab chiqishda o’ziga hos talablar
mavjud. Bu talablar quyida sanab o’tiladi.
Dasturiy vositani ishlab chiqish uchun masalaning qo’yilishi haqida yoritib
beramiz.
Dastur kompleksi quyidagi vaz ifalarni bajarishi talab etiladi.
Eslatmalarni amalga oshirish;
Vaqtni soat bo’yicha to’g’rilash
Vaqtni sekund, minut, soatlarda belgilash;
Budilnik qadim zamonlardan beri keng foydalanib kelinayotgan dastur h isoblanadi.
Budilnik dasturini bir necha xil v az ifada ishlatish mumkin :
1.Uyg’otgic h
2.Eslatma
Biz asosan bundan uyg’otgich sifatida foydalanamiz. Qadim zamonlarda
ham vaqtni belgilash uchun qum soatlardan foydalanishgan. Bu qum soatlari turli
xil bo’lgan. Masalan, bir daqiqalik, ikki daqiqalik , bir soatlik va shunga o’xshagan
turlari bo’lgan. U paytlarda hozirgidek budilniklar bo’lmaganligi tufayli shunga
o’xshash soatlardan foydalanishganlar. Ilm -fan, texnika rivojlangani sayin
zamonaviy soatlar ishlab chiqarila boshladi. Bu zamonaviy soatlarn ing deyarli
hammasida budilnik mavjud. Chunki hozirgi ishlab chiqarilayotgan soatlarning
budilniklari foydalanishga judayam qulay va oson hisoblanadi. Shuning uchun ham
bunaqangi soatlarga hozirda talab tobora oshib bormoqda. Budilnik qadimgi
Xitoyda quyos h va linza va sekin yonuvchan tayoqchadan foydalanib qo’llanilgan.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_4.png)
![Qadimgi Yunonistonda quri lmaga o’xshash suv soatlardan
foydalanilgan.Mexanik soatlar sanoat inqilobi davrida 1787 -yilda Ameri kalik Levi
Xatchins tomonidan qurilgan mex anizm faqat soat 4:0 0 da jiringlar edi.1847 -yili
esa F ransiyalik olim Antonie Radek tomonidan yaratilgan qurilma har qanday
vaqtda h am j iringlar edi va u budilnik loyih asi uchun patent oldi.1908 -yil da esa bu
quri lmadan Londondagi Big Ben soatida qo’llash taklifi bilan chiqdil ar. Bundan
keyin esa elek tron budilniklar ixtiro qilana boshlandi bu esa mexanik soatlarni
butkul sindirish arafasida edi. Elektron budilniklarning afzal jihatlari mexanik
soatlargidek 12 soatdan jiringlamay 24 soat ichida x ohlagan soatda minut
sekundigach a to’g’rilash mumkin edi. Bu esa insonlarda qulaylik tug’dirdi.
Qiziqarli ma’lumot: Sensorwake dasturchilari uyqudan uyg’otishning
noodatiy yo’lini taklif qildi. Ularning taklifiga ko’ra, endilikda ertalablari
uyg’onish uchun qattiq tovush talab e tilmaydi. Yangi budilnik okeanlar, jungli
o’rmonlari, kofe, shokolad, yalpiz yoki hatto dollarning o’tkir hidini taratish orqali
uyg’otadi.
Budilnikdagi kukunlar hidi hech qanday kimyoviy reaksiyaga olib kelmaydi. Agar
hid 3 daqiqa ichida uyg’ota olmasa, b udilnik ovoz chiqara boshlaydi. Bunday
budilnik kartrij orqali ishlaydi.
Leonardo da Vinchi ixtiro qilgan budilnik uxlayotgan odamning oyoqlarini
qitiqlab uyg’otgan ekan.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_5.png)
![1.2. Vi sual Studio 2012 dasturla sh muhiti
Visual Studio 2012 (VS2012) das turida dasturlash o`ziga yarasha
qulayliklarni yaratadi. Shuning uchun biz shu muhitda dasturlash tilini visual C++
da dasturlashni amalga oshiramiz. Siz esa o`zingizga yoqqan muxitda, dasturlash
tilida va albatta o`qituvchining talablarini inobatga olga n holda ishlashingiz
mumkin. Misol uchun Turbo paskal, turbo C++, Borland Delphi 7,
C-Free Standart ,Borland C++ Dev C++, Visual C++, boorlend Delfy 2009 va
Visual Studioning boshqa versiyalarida ishlashingiz mumkin.
VS2012 dasturini ishga tushiramiz va VS2012 dasturining asosiy oynasi va
bosh sahifa ochiladi (1 - rasm).VS2012 dasturida ko`p dasturlash tillari yordamida
dasturlash mumkin misol uchun C++, J#, VB va boshqa dasturlash tillari
yordamida dasturlash mumkin. Dasturlashni boshlashdan oldin yan gi proyekt yoki
yaratilgan proyektni ochib dasturlashimiz mumkin. Biz bu misolda yangi proyekt
yaratib dasturlashni boshlaymiz.
(1 – rasm ). MS Visual Studio muloqot oynasi .](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_6.png)
![Yangi proyektni yaratish fayl menyusi yordamida yoki bosh sahifadan yangi
proy ekt oynasini ochish orqali amalga oshiriladi. Fayl menyusi orqali ochish
File – >New – >Project orqali amalga oshiriladi. Yangi proyektni yaratish
(1.1 - rasmda ) ko`rsatilgan.
(1.1 – rasm ) yangi loyiha yaratish oynasi .
Yangi proyekt oynasida dasturla sh tilini, proyekt turini tanlash, proyekt nomini
ko`rsatish kerak. Biz dasturlash tilining Visual C++, proyektni turi nomini va
saqlash joyini ko’rsatamiz, Ok tugmasini bosamiz va shunda 3 – rasmdagi oyna
ochiladi.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_7.png)
![(1.2 -rasm ) form oynasining ko’r inishi.
Bunda VS2012 ning asosiy oynasi va dasturiy qismi (kodi) saqlanuvc hi fayl
sahifasi ham ochiladi (1.3 – rasm). Bu sahifaga misolning dasturiy qismi yoziladi
va shu faylda saqlanadi.
(1.3 – ras m ) dastur kodi yoziladigan oyna.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_8.png)
![Dasturlashga o`t ishdan oldin uning algaritmini tuzish kerak. Ushbu kurs ishi
dasturini yaratishda .Net Freamwork 2 mu хiti tanlandi. Bu mu хitni tanlanishi
dasturlash tili ishlashi uchun mu хimdir. Microsoft kompaniyasi 2002 -yil Sank -
Peterburg shahrida bo’lib o’tgan konf erentsiyada Devid Chappelning .Net
Freamwork ka bag’ishlab doklad qildi. U .Net platformasini yaratilishi Windows
mu хtida hamma narsani o’zgartiradi, yani dasturlash tillari, interfeys va
biblotekalar, ilovalarni yaratilishini .Net markasi orqali quyidagi asosiy
ma хsulotlar etkazib beriladi, bular : - .Net Framework - amalga oshirish mu хiti,
unda yaratilgan dasturiy komponentlar ishlatiladi. Bu mu хit dasturiy kodlarni
хavsizligini taminlash , avtomatik ravishda keraksiz kodlarni yig’ishtirish va
boshqa ishl ar uchun mo’ljallangandir. - Visual Studio. Net - yaratuvchilar uchun
yaratilgan mu хit bo’lib, u bitta kompilyatordan iboratdir, yani C++
kompilyatoridir. C++ bunda Yangi , o’zgartirilgan integrallashtirish ishlab chiqish
mu хitidir. U programm komponentlar ini yaratishga bag’ishlangan. Bundan
tashqari boshqa ko’pgina dasturlash tillarini ko’llab quvvatlaydi. - .Net Interprise
Servers (.Net korporativ serveri) - SQL Server 2000, Ehchange 2000 va boshqalar.
.Net Framework ikkita komponentdan tashkil topgan. Un ing ilova yaratuvchi
asosiy instrumenti bu Visual Studio.Net hisoblanadi. Unda хar bir
programmalashtirish .Net Framework bilan umumiy interfeys orqali aloqada
bo’ladi. Vs.Net tarkibiga juda ko’p dasturiy tillar kiradiki, ulardan asosiysi esa
C++ tilidir. Microsoft .Net (dot -net) dasturiy te хnologiya bo’lib, u oddiy dasturlar
kabi, v eb - ilovalarni yaratish uchun ishlatiladi. (platforma sifatida birmunchi
bo’lib Microsoft firmasi tomonidan taklif kilingan) .Net Microsoft firmasining
patentga ega te хnologiyasi hisoblanadi. .Net - ilovalarini yaratish mu хti.
.Net yaratish mu хiti хuddi Java te хnologiyasi kabi bayt - kod yaratadi. .Net ilova
yaratuvchi model hisoblanadi. Uning asosiy maksadi - qurilma va platformadan
mustaqil bo’lgan ilova yaratishdir, yana Internet orqali ma'lumotlarga murojat
etishni shakllantiradi .Net yadrosini quyida gi te хnologiyalar tashkil etadi: .Net](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_9.png)
![Framework .Net Enterprise Servers . "quruvchi blok" хizmati . Vs.Net .Net
platformasi klient oslari, server va хizmatlar bilan integrallashgan va
quyidagilardan iborat: - dastur modeli, ya'ni XML - Web хizmati va ilo va yaratish
imkonini beradi - хizmatlar to’plami - "quruvchi blok", ya'ni maksimal samarali
ilova yaratish imkonini beradi. - .Net Enterprise Servers - serverlarni to’liq jami
bo’lib, u ilova yaratish uchun ishlatiladi. Shuningdek klient dasturiy ta'minoti (XP,
CE) va Vs.Net kiradi. .Net Framework quyidagilardan tashkil topgan: - CLR
(Common Language Runtime); - bibloteka klassi (Web va Windows formalari)
.Net quyidagi muammolarni echadi: - platformadan mustaqillik .Net tillarini o’zaro
bog’liqligini tashki l qiladi.
1985 yilda "C++ tilida dasturlash" ning birinchi to’liq dasturi nashrdan
chiqdi va u yildan yilga o’z mundarijasini to’ldirib bordiyu o хirgi nashrda
shablonlar, nomlanish so хasi turlarni yangicha belgilanishi buleva turi keltirilgan.
C++ standart biblotekasiga birinchi bo’lib, kiritish – chiqarish potoki qo’shildi.
Kegin esa standart biblotekaga shablonlar ko’shilishi boshlandi.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_10.png)
![1.3.Masalaning qo’yilishi
Ushbu budilnik dasturini yaratishda Visual Studio 2012 dasturidan
foydalangan holda yaratildi. Bu turdagi dasturlash tillarida tuzilgan dasturlar
ishlashi uchun avvalo Microsoft companiyasing Microsoft .NET Framework turli
bibliotekasidan foydalana olish imkoni bo`lishi shart. Soatlarning budilniklarni
ishlatish uchun uning buragichini burash orqali ma’lum bir vaqtni belgilaymiz. Biz
yaratgan budilnik dasturi esa kompyuter uchun mo’ljallangan. Bu budilnik dasturni
ishga tushirish uchun kompyuteringizda yuqorida aytib o’tilgan Microsoft .Net
Framework dasturi kerak bo’ladi. Bu budilnik dasturini ishlab chiqishdan maqsad
turli xil sohalarda qulayliklar yaratish uchun ishlab chiqildi.
Budilnik dasturi quyidagi vazifalarni bajarishi lozim:
1. Eslatmalarni amalga oshirish
2. Uyqudan uyg’otish
3. Vaqtni belgilash va h .k.z
Eslatmalarni amalga oshirishda esingizdan chiqishi mumkin bo’lgan barcha
ma’lumotlarni yozib qo’yishingiz mumkin. Bunda o’sha budilnik dast urini
ochganimizda dastur oynasi hosil bo’ladi va bu oynaning pastki qismida yozish
uchun mo’ljallangan bo’shliq paydo bo’ladi. Siz esa o’sha ajratilgan joyga
xohlagan narsani yozib qo’yishingiz mumkin. Uyqudan uyg’otishda ham xuddi
shu kabi usullarni qo’ llashingiz mumkin. Bunda ertalab o’qish yoki ishga borish
uchun vaqtni belgilab qo’yishingiz mumkin. Bu vaqtni belgilashda ham xuddi shu
kabi oyna hosil bo’ladi va o’sha oynada ko’rsatilgan soat, minut, sekundlari
o’zingizga kerakli bo’lgan vaqtni belgilas h imkonini beradi. Bunda ham eslatmalar
yozishingiz mumkin. Masalan ertalab uyqudan uyg’onganingizdan keyin ish yoki
o’qishingizga olib ketishingiz kerak bo’lgan narsalarni yozib qo’yish mumkin.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_11.png)
![II. ASOSIY QISM
2.1 Dastur komponentalari
NumericUpDown komponentasi
NumericUpDown komponentasi sonlardan iborat foydalanuvchi
tomonidan o`suvchi va kamayuvchi sonlarni tashkil etishda ishlatiladi.
Komponentaning o`ng tomonida pastga va tepaga yo`naltirilgan strelkalar
yordamida sonlarni ortti rish yoki kamaytish mumkin.
Xususiyatlari
Increment – bu xususiyatida sonlar o`sish yoki kamayishining qiymati
belgilanadi ya`ni 1 bo`lsa u holda 1 birlikda ortib borish tartibida
bo`ladi.(1,2,3….).
Maxsimum – bu xususiyatda sonlarning maxsimal ortishi mu mkin bo`lgan
qiymati belgilanadi.
Minimal - sonlarning minimal kamayishi mumkin bo`lgan qiymati
belgilanadi.
Button komponentasi
Tugmalar boshqaruv elementlari hisoblanadi va ma`lum funksional
vazifalarni bajarishga buyruq berish uchun ishatiladi. Tugma yu zasida matn va
yoki rasm tasvirlanishi mumkin.
Visual Studioda standart tugma Button kompanenti yordamida berilgan.
Tugma yuzasidagi bosilganda bajaradigan ish -harakatni tavsiflovchi yozuvga ega
bo`lishi mumkin.
Tugma uchun asosiy hodisa u bosilgan da yuzaga keladigan OnClick hodisasi
hisoblanadi. Bunda tugma bajarilayotgan harakatni Visual (ko`rinarli) tasvirlovchi
mos ko`rinishga ega bo`ladi. OnClick hodisasini qayta ishlovchi qism dasturda](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_12.png)
![joylashgan harakat tugma qo`yib yuborilishi bilanoq baja riladi.
Tugmani quyidagi usullar bilan bosish mumkin:
- sichqonchani qirsillatish bilan ;
- Caption xususiyatida berilgan tugmalar majmuini tanlash bilan;
- <Enter> yoki probel tugmalarini bosish bilan;
- <Esc> tugmasini bosish bilan.
Label komponentasi
Label Yozuv (label komponenti) yorliqni ifodalaydi va ko`pincha o`zining
Text xususiyatiga ega bo`lmagan boshqa boshqaruv elementlarining
sarlavasi sifatida ishlatiladi. Ko`pincha yozuvlarni tasvirlash uchun nishon deb
nomlanadigan Label kompanenti ishlatiladi. U dastur bajarilish vaqti
foydalanuvchi tahrirlashi mumkin bo`lgan oddiy matnni tasvirlash uchun
ishlatiladi.
Visual Studio dasturida Label kompanentasini ishlatish uchun ― Панель
элементов ‖ oynasida Label nomli kompanenta tanlanadi.
Xususiyatlari.
BorderS tyle — bu xususiyat orqali Label komponentasini chegara sohasini
o`zgartirish mumkin.
Chegara sohasining 3xil ko`rinishi mavjud: none, (bir chiziqli) окантовка
одной линией , окантовка под трехмерное пространство (uch o`lchovli);
Text — xususiyatida Label komponentiga kiritiladigan matn yoziladi.
AutoSize — Nishon matniga bog`liq ravishda Label kompanenti
o`lchamlarini avtomatik rostlashni boshqarish uchun Boolean turidagi AutoSize
xususiyati xizmat qiladi. Agar xususiyat (odatdagidek) True qiymatga ega bo` lsa,
Label kompanenti Caption xususiyatidagi matnga ko`ra o`lchamlarini o`zgartiradi.
TextAlign — yozilgan matnning Label chegarasi bo`ylab qanday](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_13.png)
![joylashishini belgilash. Label kompanenti ichida matnni rostlash uchun quyidagi
qiymatlarni qabul qiluvch i TAlignment turidagi Alignment xususiyati qo`llaniladi:
- TopLeft – chap yon bo`ylab rostlash;
- TopCenter – matnni markazlashtirish;
- TopRight – o`ng yon bo`ylab rostlash.
Nishonning shaffof yoki bo`yalganligi Boolean turidagi Transporent
xususiyati belg ilaydi. Bo`yoq rangi Color xususiyati yordamida o`rnatiladi.
Odatda, Transporent xususiyati False qiymatiga ega va nishon noshaffof bo`ladi.
Shaffof Label kompanenti nishon rasm ustida joylashtirilganda va tasvirni
yopmasligi zarur bo`lgan hollarda kerak b o`lishi mumkin. Masalan, geografik
xaritada.
RichTextBOX komponentasi
Ko`p satrli matn bilan ishlash uchun Visual Studioda RichTextBOX
kompanenti mavjud. Ko`p astrli redaktorlar bir satrli redaktorlar ega bo`lgan
imkoniyatlarga ega. Bu boshqruv elementlari ning asosiy farqi shundaki, ko`p
satrli redaktorlar bir necha satrlarga ega bo`lishi mumkin.
Ko`p satrli redaktordagi ma`lumotga murojaat qilish uchun String turidagi
Text xususiyati qo`llaniladi. Bu holda RichTextBOX kompanentidagi barcha
ma`lumot bitta satr ko`rinishiga tasvirlanadi. <Enter> tugmasi bosilganda
qo`yiladigan satr oxiri #13#10 kod yordamida yoziladi, shuning uchun
foydalanuvchi ko`rayotgan simvollar soni Text satridagidan kam bo`ladi. Bu
o`ziga xoslikni , masalan, berilgan simvolning Rich TextBOX kompanenti satridagi
joyini aniqlashda hisobga olish zarur.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_14.png)
![(2.1 -rasm ) budilnik dasturi ochilgan oyna.
(2.2 -rasm ) budilnik dasturining ishlash oynasi](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_15.png)
![2.2 . Foydalanuvchi uchun qo’llanma
Bu dastur Visual St udio 2012 dasturida tuzildi. Bu turdagi dasturlash
tillarida tuzilgan dasturlar ishlashi uchun avvalo Microsoft companiyasing
Microsoft .NET Framework turli bibliotekasidan foydalana olish imkoni
bo`lishi shart. Buning uchun esa sizning Operatsion sistemangiz yangilanish
yoki Microsoft .NET Framework 2.0 turi o`rnatilishi kerak.
Ushbu budilnik dasturni ikki xil usulda ishlatish mumkin:
1. Biror vaqtni belgilash orqali ishlatish
2. Biror vaqtdan keyin ishga tushirish
Biror vaqtni belgilash orqali ishlat ish jarayoni boshlanganda quyidagi (2.3 -rasm )da
ko’rsatilgandek oyna hosil bo’ladi
(2.3 -ras m ) budilnik dasturi ning biror vaqtda ishlashashni boshqarish oynasi .](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_16.png)
![Bu dastur ning chalingan holati da esa quyidagicha oyna hosil bo’ladi
(2.4 -rasm ) budilnik ch alingan holati
Bu dasturning ikkinchi holati ya’ni biror vaqtdan keyin ishlash holati esa
quyidagicha :
(2.5 -rasm ) budilnik dasturining biror vaqtdan keyin ishlashashni boshqarish
oynasi.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_17.png)
![(2.6 -rasm ) budilnik chalingan holati
Bundan tashqari bu dast urimizga eslatmalarni ham yozib qo’yishimiz mumkin
(2.7 -rasm ) budilnik dasturiga eslatma yozish oynasi](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_18.png)
![(2.8 -rasm ) budilnik chalingan holati](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_19.png)
![XULOSA
Ushbu kurs ishini ishlab chiqish natijasida budilnik dasturi haqida va uning
ish lash prinsplari dasturiy vositasi ishlab chiqildi. Bu budilnik dasturi turli xil
sohalarda qo’llanilishi mumkin. Budilnik dasturini yaratish uchun ―Visual Studio
2012‖ das turidan foydalanildi. Hozirgi kunga kelib budilnikning turli xillari ishlab
chiqarilm oqda. Bular: ovozli budilniklar, hid bilan uyg’otuvchi budilniklar va
boshqa ko’plab turlari mavjud. Budilnik dan yosh -u qari birdek foydalanadi.
Budilnik dasturi deyarli barcha tizimlarda mavjud. Masalan uy soatlari, qo’l
soatlari, uy telefonlari, mobil te lefonlar, kompyuterlar , televizorlar va boshqa
ko’plab qurilmalarda uchratish mumkin. Biz bu budilnik dasturidan uyg’otgich
sifatida deyarli har kuni foydalanamiz. Budilnik dasturi ko’proq yoshi kattalarga
qulay hisoblanadi. Chunki yosh o’tgan sayin inso n xotirasi susayib boradi va
budilnik dasturiga talab yanada kuchayadi. Budilnik dasturi esa barcha esingizdan
chiqadigan barcha narsalarni eslatib turadi. Bu dasturni ishga tushirish juda oddiy
va qulay hisoblanadi.
Bu budilnik dasturini ishlab c hiqishdan maqsad turli xil sohalarda
qulayliklar yaratish uchun ishlab chiqildi.
Budilnik dasturi quyidagi vazifalarni bajarishi lozim:
1. Eslatmalarni amalga oshirish
2. Uyqudan uyg’otish
3. Vaqtni belgilash va h .k.z
Eslatmalarni amalga oshi rishda esingizdan chiqishi mumkin bo’lgan barcha
ma’lumotlarni yozib qo’ysangiz bo’ladi. Ertalab o’qish yoki ishga borish uchun
vaqtni belgilab qo’yishingiz mumkin. Bunda ham eslatmalar yozishingiz mumkin.
Masalan ertalab uyqudan uyg’onganingizdan keyin is h yoki o’qishingizga olib
ketishingiz kerak bo’lgan narsalarni yozib qo’yish mumkin.](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_20.png)
![FOYDALANILGAN ADABIYOTLAR
1. Karimov I.A. Yuksak ma'naviyat -engilmas kuch. -T.: "Ma'naviyat", 2008 y.
2. Г.Р.Громов Основы информацион технология .
3. Алимов К. Создание новых информационных компьютерных технологий и
систем. 1993.
4. О.Ефимов, В.Морозов, Н.Угрипович. «Курс компьютерной технологии с
основами информатики», М., 1999 г.
5. The C++ Programming Languge Brain W.Kernighan Denis M.Ritchie
6. Ф .Скотт , Баркер . «Профиссиональное программированиев Access 2002».
М. -С.Пб. -Киев, 2002
7. Климов В.Г. Информационные и к оммуникационные технологии
обучения: проблемы, методика внедрения, перспективы. Пермь: Изд -во
«ОАО Книжное издательство», 2005
8. Khorton Visual C++ 2010 Полны курс -2011
9. Петцолъд Ч. Программирование для Microsoft Windows на
С#.Издательско -торговый до м «Русская Редакция», 2002. - 576 с
10 . Троелсен. Э. С# и платформа .NET. Библиотека программиста.Питер,
2004. — 796 с
11. www.google.uz
12. www.referat.uz](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_21.png)
![ILOVA
//Form1
#prag ma once
#include "vaqt.h"
namespace Bud {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
us ing namespace System::IO;
/// <summary>
/// Сводка для Form1
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public :
Form1( void )
{
InitializeComponent();
//
//TODO: добавьте код конструктора
//](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_22.png)
![}
protected :
/// <summary>
/// Освободить все используемые ресурсы.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
#pragma endregion
int n,m,num1,num2,num3,S,S2; String ^a;
int secund,minut,soat,vaqt;
void start(){
num1=System::Convert::ToInt64(numericUpDown3 ->Value);
num2=System::Convert::ToInt64(numericUpDown2 -
>Value);
num3=System::Convert::ToInt64(numericUpDown1 -
>Value);
S=num1+(num2*60)+(num3*3600);
S2=secund+(minut*60)+(soat*3600);
if (((S==S2) || (S2==vaqt)) && numericUpDown1 -](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_23.png)
![>Enabled== false ){
Vaqt ^ f2 = gcnew Vaqt();
f2 ->Show();
}
secund++;
if (secund<=9){
label2 -
>Text= "0" +System::Convert::ToString(secund);
}else
{label2 ->Text=System::Convert::T oString(secund);}
if (secund==59){
secund=0;
minut++;
if (minut<=9){
label3 -
>Text= "0" +System::Convert::ToString(minut);
}else
label3 ->Text=System::Convert::ToString(minut);
}
if (minut==59){
minut=0;
soat++;
if (soat<=9){](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_24.png)
![label4 -
>Text= "0" +System::Convert::ToString(soat);
}else
label4 ->Text=System::Convert::ToString(soat);
}
}
private : System::Void Form1_Load(System::Object^ sender,
System::EventArgs^ e) {
a=__TIME__;
label2 ->Text=a -
>Substring(6);
label3 ->Text=a ->Substring(3,2);
label4 ->Text=a ->Substring(0,2);
secund=System::Convert::ToInt64(label2 -
>Text);
minut=System::Convert::ToInt64(label3 -](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_25.png)
![>Text);
soat=System ::Convert::ToInt64(label4 ->Text);
timer1 ->Enabled= true ;
}
private : System::Void button1_Click(System::Object^ sender,
System::EventArgs^ e) {
File::WriteAllText( "1.txt" ,richTextBox1 ->Text);
numericUpDown1 ->Enabled= false ;
numericUpDown2 ->Enabled= false ;
numericUpDown3 ->Enabled= false ;
if (radioButton2 ->Checked== true ){
num1=System::Convert::ToInt64(numericUpDown3 ->Value);
num2=System::Convert::ToInt64(numericUpDown2 -
>Value);
num3=System::Conver t::ToInt64(numericUpDown1 -
>Value);
vaqt=num1+(num2*60)+(num3*3600)+secund+(minut*60)+(soat*3600);
notifyIcon1 ->Visible= true ;](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_26.png)
![this ->Hide();
}
}
private : System::Void button2_Click(System::Object^ sender,
System::EventArgs^ e) {
numericUpDown1 -
>Enabled= true ;
numericUpDown2 ->Enabled= true ;
numericUpDown3 ->Enabled= true ;
}
private : System::Void richTextBox1_TextChanged(System::Object^
sender, System::EventArgs^ e) {
}
private : System::Void tim er1_Tick(System::Object^ sender,
System::EventArgs^ e) {
start();
}
private : System::Void
notifyIcon1_MouseDoubleClick(System::Object^
sender, System::Windows::Forms::MouseEventArgs^ e) {
this ->Show();](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_27.png)
![}
};
}
//Form2
#pragma onc e
namespace Bud {
}
#pragma endregion
private : System:: Void Vaqt_Load(System:: Object ^ sender ,
System:: EventArgs ^ e) {
richTextBox1 ->Text=
File ::ReadAllText( "1.txt" );
}
private : System:: Void button1_Click(System:: Object ^ sender ,
System :: EventArgs ^ e) {
this ->Close();
}
};
}](/data/documents/acb83843-6c28-4991-b3e0-2c03231ac5dd/page_28.png)
O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI URGANCH FILIALI KOMPYUTER INJINIRINGI FAKULTETI DASTURIY INJINIRINGI KAFEDRASI C++ DA DASTURLASH FANIDAN Kurs ishi MAVZU: VISUAL STUDIO MUXITIDA BUDILNIK DASTURINI YARATISH. Bajardi: 911-14 guruh talabasi Babajanov Xursandbek Ilmiy rahbar: Dasturiy injiniring kafedrasi assistenti Xo’jayev Otabek
MUNDARIJA KIRISH …………………………………………………………………. ..2 I. NAZARIY QIS M ……………………………………………………… 3 1.1. Budilnik dasturi haqida umumiy ma’lumot ……………………….. 3 1.2. Visual Studio 2012 dastur lash muhiti ……………………………… 5 1.3.Masalaning qo’yilishi ………………………………………………... 10 II. ASOSIY QISM …………………… ………………………………… 11 2.1. Dastur komponentalari …………………………………………….... 11 2.2 . Foydalanuvchi uchun qo’llanma ……………………………………. 15 XULOS A ………………………………………………………………... 19 FOYDALANILGAN ADABIYOTLAR ……………………………… 20 ILOVA …………………………………………………………………... 21
KIRISH. Ilmiy texnika rivojining diqqatga sazovor xususiyatlaridan biri - hisoblash texnikasining inson faoliyatining barcha sohalariga keng miqyos ida tatbiq qilinishidir. Xalq xo’jaligining rivoji o’z navbatida yuqori unumli elektron hisob lash mashinalarini (EHM), raqamli -programmali boshqariladigan stanoklar va qurilmalar, sanoat robotlari va ishlab chiqarish modullarini ishlab chiqarishni ko’paytirish va keng miqyosda tatbiq etishni talab etadi. Avtomatlashtirishning asosiy quroli bo’lib, o’zining algoritmik va programma ta’minotiga ega bo’lgan kompyuterlar xizmat qiladi. Dvigatel va robotlarning kashf qilinishi jismoniy mehnatni avtomatlashtirish asrini ochgan bo’lsa, kompyuter va sun’iy intellekt vositalarning paydo bo’lishi inson aqliy faoliyatida xuddi shunday yangi davrni boshlab berdi. A хborot te хnologiyalari jahonda jadal sur'atlar bilan rivojlanib, takomillashib borayotgan sohadir. Bu sohaning rivoji uchun bizning buyuk ajdodlarimizning ilmiy kashfiyotlari asos bo’lib хizmat qilmoqda. Bu haqda Prezidentimiz I.A.Karimov o’zining "Yuksak ma'naviyat - yengilmas kuch" asarida quyidagi fikrlarni keltirib o’tadi: "Shu nuqtai nazardan qaraganda, zaminimizda yashab o’tgan buyuk allomalarimiz, mutafakkir bobolarimizning ibratli hayoti va faoliyati, bemisl ilmiy -ijodiy kashfiyotlari bugun ham jaho n ahlini hayratga solayotganin i g’urur bilan ta'kidlash lozim‖ . Xususiy kompyuterlarning paydo bo’lishi informatikani tatbiq etish va "kompyuter bo’yicha savodsizlik"ni tugatishni tezlatishga asosiy turtki bo’ldi. Hozirgi zamon kompyuterlariga bo’lgan qizi qish shuning uchun ham oshdiki, ular masalani yechishda mehnat unumdorligini keskin oshirdi. Bu integral sxemalar yangi kompyuterlarda qo’llanishini hisobga olsak, kompyuterlarning mukammallashib borishi juda tez yuz berishi va yaqin orada juda ham mukamma l kompyuterlar yaratilishi kutilishiga umid qilishimiz mumkin.
I. NAZARIY QISM 1.1. Budilnik dasturi haqida umumiy ma’lumot Ushbu kurs ishi Budilnik dasturini yaratishga qaratilgan bo`lib, bu dasturning vazifasi vaqtni belgilash yoki biror narsani esl atishni amalga oshirish hiso blanadi. Ushbu dasturiy vositani ishlab chiqishda o’ziga hos talablar mavjud. Bu talablar quyida sanab o’tiladi. Dasturiy vositani ishlab chiqish uchun masalaning qo’yilishi haqida yoritib beramiz. Dastur kompleksi quyidagi vaz ifalarni bajarishi talab etiladi. Eslatmalarni amalga oshirish; Vaqtni soat bo’yicha to’g’rilash Vaqtni sekund, minut, soatlarda belgilash; Budilnik qadim zamonlardan beri keng foydalanib kelinayotgan dastur h isoblanadi. Budilnik dasturini bir necha xil v az ifada ishlatish mumkin : 1.Uyg’otgic h 2.Eslatma Biz asosan bundan uyg’otgich sifatida foydalanamiz. Qadim zamonlarda ham vaqtni belgilash uchun qum soatlardan foydalanishgan. Bu qum soatlari turli xil bo’lgan. Masalan, bir daqiqalik, ikki daqiqalik , bir soatlik va shunga o’xshagan turlari bo’lgan. U paytlarda hozirgidek budilniklar bo’lmaganligi tufayli shunga o’xshash soatlardan foydalanishganlar. Ilm -fan, texnika rivojlangani sayin zamonaviy soatlar ishlab chiqarila boshladi. Bu zamonaviy soatlarn ing deyarli hammasida budilnik mavjud. Chunki hozirgi ishlab chiqarilayotgan soatlarning budilniklari foydalanishga judayam qulay va oson hisoblanadi. Shuning uchun ham bunaqangi soatlarga hozirda talab tobora oshib bormoqda. Budilnik qadimgi Xitoyda quyos h va linza va sekin yonuvchan tayoqchadan foydalanib qo’llanilgan.
Qadimgi Yunonistonda quri lmaga o’xshash suv soatlardan foydalanilgan.Mexanik soatlar sanoat inqilobi davrida 1787 -yilda Ameri kalik Levi Xatchins tomonidan qurilgan mex anizm faqat soat 4:0 0 da jiringlar edi.1847 -yili esa F ransiyalik olim Antonie Radek tomonidan yaratilgan qurilma har qanday vaqtda h am j iringlar edi va u budilnik loyih asi uchun patent oldi.1908 -yil da esa bu quri lmadan Londondagi Big Ben soatida qo’llash taklifi bilan chiqdil ar. Bundan keyin esa elek tron budilniklar ixtiro qilana boshlandi bu esa mexanik soatlarni butkul sindirish arafasida edi. Elektron budilniklarning afzal jihatlari mexanik soatlargidek 12 soatdan jiringlamay 24 soat ichida x ohlagan soatda minut sekundigach a to’g’rilash mumkin edi. Bu esa insonlarda qulaylik tug’dirdi. Qiziqarli ma’lumot: Sensorwake dasturchilari uyqudan uyg’otishning noodatiy yo’lini taklif qildi. Ularning taklifiga ko’ra, endilikda ertalablari uyg’onish uchun qattiq tovush talab e tilmaydi. Yangi budilnik okeanlar, jungli o’rmonlari, kofe, shokolad, yalpiz yoki hatto dollarning o’tkir hidini taratish orqali uyg’otadi. Budilnikdagi kukunlar hidi hech qanday kimyoviy reaksiyaga olib kelmaydi. Agar hid 3 daqiqa ichida uyg’ota olmasa, b udilnik ovoz chiqara boshlaydi. Bunday budilnik kartrij orqali ishlaydi. Leonardo da Vinchi ixtiro qilgan budilnik uxlayotgan odamning oyoqlarini qitiqlab uyg’otgan ekan.