Algoritmni ishlab chiqish.
Algoritmni ishlab chiqish – eng murakkab va
ko’p mehnat talab etuvchi, lekin ijodiy nuqtai nazardan qaraganda eng qiziqarli
jarayondir.
Ishlab chiqish metodini tanlash, masalaning qo’yilishi va uning modeliga
bog’liq. Ushbu bosqichda algoritmning to’g’riligini tekshirish lozim. Bu esa oson
emas, ko’p mehnat talab etadi. Algoritm to’g’riligini isbotlashning keng tarqalgan
protsedurasi – bu turli testlar majmuidan uni o’tkazishdir. Ammo bular ham
programmaning to’g’ri ishlashiga kafolat bera olmaydi. Algoritm to’g’riligini
isbotlashning umumiy metodikasiga asosan algoritm, qadamlar ketma-ketligi
ko’rinishida tavsiflanadi. Har bir qadam uchun hamma kiritilishi (ushbu
qadamgacha bo’lgan shartlar asosida) va chiqarilishi (ushbu qadamdan keyingi
shartlar hisobga olingan holda) lozim bo’lgan ma’lumotlar asosida uning
to’g’riligini isbotlovchi bironta isbot taklif etiladi. So’ngra yakuniy kiritiladigan va
chiqariladigan ma’lumotlar bilan algoritmning tugallanganligi isboti taklif etiladi.
Algoritmni va uning murakkabligini tahlil qilish.
Bu bosqich
foydalaniladigan kompyuter resurslarini aniq ma’lumotlarga ishlov berish vaqtini
baholash, hamda mahalliy tarmoq va telekommunikatsiyalarda ishlashga moslashish
uchun zarurdir. Bundan tashqari ushbu masala uchun bironta miqdoriy kriteriy
bo’lsa maqsadga muvofiq bo’ladi. Chunki bir necha algoritmlar solishtirilib ulardan
eng oddiy va samaralisini tanlash mumkin bo’ladi. Programmadan foydalanishdan
avval, u, sozlash va testlash bosqichidan o’tishi lozim.
Programmistlarning eng muhim qoidasi –
Har bir tayyor programm
mahsulot uchun yordam (help) va matnli fayl (readme.txt) ko’rinishida
hujjatlashtirilgan kuzatuv zarur.
2.1 Chop etish jarayonini boshqaruvchi dasturning algoritimlari.
Chopetish qurulmalari bilan ishlash hozirgi kun ish jarayonining ajralmas qismidir.
Chopetish jarayonini boshqaruvchi dasturlarning qo’yilgan maqsadga mos ishlashi esa juda
zarurdir. Chopetish jarayonini boshqaruchi dasturning ishlab chiqilishi uchun bizga mavjud
dasturlarning xatolarini to’g’irlaydigan hamda kamchiliklarini to’ldiradigan algoritim zarur.
Bitiruv malakaviy ish yozilishi davomida yaratilgan dastur huddi shu hususiyatlarni o’z ichiga
oladi.
Dastur foydalanuvchini o’z zimmasiga yuklatilgan murakkab hisoblashlardan ozod qiladi.
Foydalanuvchi uchun dastlab tushunarsiz bo’lgan xabarlar chopetilmaydi.
Foydalanuvchi bir dasturdan varaqlar indexini ko’chirib olib boshqa dasturning chopetish
oynasiga joylashtirmaydi.
Foydalanuvchi uchun ogohlantiruvchi habarlar yani “4 ga karrali son kiriting”,
“hujjatingizga 3 ta bo’sht list qo’shing” kabi habarlar o’rniga dastur bu vazifalarni o’I
bajaradi.
Bitiruv malakaviy ish yozilishi davomida yaratilgan dasturning algoritimi quyidagicha.
Dastur algoritimini tushunish uchun Codeblocks ilovasida lohihaning qismini keltiramiz:
int a;
cout << "a=" ; cin >> a;
if(a%4 == 0){
int b[a];
for(int i=1; i<=a; i++) b[i]=i; // 1 2 3 4 5 6 7 8 9 10 11 12
for(int i=1; i<=a/2; i+=2){
if(i!=a/2-1) cout << b[a-i+1] <<","<< b[i]<<",";
else cout << b[a-i+1] <<","<< b[i];} //12,1,10,3,8,5
cout << endl;
for(int i=1; i<=a/2; i+=2){
if(i!=a/2-1) cout << b[a/2-i+1] <<","<< b[a/2+i]<<",";
else cout << b[a/2-i+1] <<","<< b[a/2+i];} //6,7,4,9,2,11
}
Dastur C++ Builder (XE8) dastruri muhitida yoziladi, hamda alohida dsatur sifatida
o’rnatiladi, tashqi interfeysi optimal holatda bo’lib ortiqcha,etiborni jalb qiladigan va
chalg’itishi mumkin bo’lgan yozuvlar va shakllardan holi. Dastur asosan ko’rsatilgan hujjatni
“kitobcha” ko’rinishida chopetishga mo’ljallangan bo’lib dastlab foydalanuvchi hujjatni aktiv
holga olib kelishi (ochishi) yoki dastur yordamida hujjat manzilini ko’rsatishi kifoya.
Chopetish uchun tanlangan hujjat aktivlashgandan( ochilgandan ) so’ng dastur yodamida
hujjatning varaqlar soni hioblanadi va yetishmagan varaqlarni o’zi avtomatik qo’shadi.
Keying bosqichda chop etish jarayoni boshlanadi va kitobchaning faqat bir tomoni chop
etiladi. Chopetilgan varoqlar chopetish qurulmasi ga qaytadan qo’yilgach navbatdagi
boshqichga o’tiladi. Chop etishgan varoqlarni malum qismidan buklagan holda kitobcha
holiga keltiriladi.
Chopetish jarayonini avtomatlashtirishda C++ builder dasturida tuzulgan iliva orqali Word
dasturidagi macroslarni boshqarish orqali amalga oshiriladi. Bitiruv malakaviy ishning 2.2
bo’limida makroslardan foydalanish va makros kodi ham keltiriladi.
2.2 Borland C++ Builder dasturlash muhitida chop etish jarayonini boshqaruvchi dastur
kod qismi
Bitiruv malakaviy ishni yozish jarayonida C++ Builder dasturi muhitida chopetish
jarayonini boshqaruvchi dastur yartildi quyida uning kod qismini keltiramiz.
|