KompyuterlarDasturlash

Dasturlash. Parametrli sikllar

Turbo-Paskalda alohida o'rin egallagan. Ekranda I / O ko'nikmalarini o'rgandan so'ng darhol o'rganishadi. Axir ko'pgina vazifalar parametr va boshqa konstruktsiyalarga ega bo'lgan ko'chalarni dasturning muayyan bloklarini yozishni va ish faoliyatini osonlashtirishga yordam beradi.

Ko'chadan turlari

Jami uchta nav mavjud:

  • Agar parametr bilan,
  • Old shart bilan,
  • Oddiy holat.

Parametrli sikllar, aks holda ular ... uchun ... yoki ... uchun pastga ... deb nomlanadi. Muayyan ketma-ketlikni ketma-ket takrorlang. Aslida, boshqa navlar bir xil maqsadda ishlatiladi, faqat oldindan ma'lum bo'lgan qadamlarning miqdori.

Boshqa ikkita konstruktsiyada (va takrorlanganda), iteratsiyalar soni dastlab ma'lum emas. Shuning uchun, vazifani o'rganayotganda qaysi tsikllardan foydalanishni tushunish kerak.

Mavzu bo'yicha asosiy tushunchalar

Parametrlar bilan takrorlangan takrorlash jarayoni takrorlanadi. Qarshi - ushbu dizaynning amalga oshirilishining asosiy ko'rsatkichi. Intervalning chegaralari ma'lum yinelemelerin qanday darajada amalga oshirilishini ko'rsatadi. Aytgancha, boshlang'ich qiymat 1 ga teng bo'lishi shart emas. Foydalanuvchi bo'shliqning har ikkala chegarasini mustaqil ravishda o'rnatadi. Loopning tanasi - takroriy sonlar allaqachon aniqlangan bir qator ko'rsatmalar.

«Parametrlar bilan atalgan tsikllar» kontseptsiyasi, ushbu qurilishda bu holat tekshirilgandan so'ng, bir qator iteratsiyaning amalga oshirilishini anglatadi. Hisoblagich ortadi (yoki kamayadi) va hamma narsa takrorlanadi. Vaqt to'g'ri kelmaguncha, pastadir tanasi ishlatiladi.

Buning uchun ... bajarish: operatsion algoritmi, sintaksisi

Yuqorida aytib o'tganimizdek, parametrga ega aylanish jarayoni ishlamoqchi bo'lgan "bo'shliqni" ko'rsatadigan vazifalarda ishlatiladi. Demak, bu raqamlar qatori, haftaning kunlari, she'r satrlari va boshqalar bo'lishi mumkin.

Dizaynning 2 turi mavjud: taymerni oshirish va uni kamaytirish. Birinchi qurilish quyidagi tarzda yoziladi:

Chiqish uchun : = chegara 1 - chegara 2 ga

Boshlang

Tsiklning tanasi ;

Oxiri;

Bu erda: ref. O'zgaruvchilar dastur tomonidan yoki dasturning boshida e'lon qilinadi; Chegara 1 va chegara 2 - bo'shliqning boshlang'ich va oxirgi qiymati; Tsiklining tanasida dastur tomonidan bajarilishi kerak bo'lgan bir qator tadbirlar belgilanadi. Agar loopning tanasi faqat bitta buyruq bo'lsa, unda operator kvadratlari boshlanadi ... tugatish mumkin. Ushbu dizayn variantida hisoblagich, ya'ni , 1 qadamda ortadi.

Chiqish uchun : = chegara 1 chegara tomonga 2 qilinadi

Boshlang

Tsiklning tanasi ;

Oxiri;

Bu erda ref. O'zgaruvchilar 1 qadamda kamayadi.

Tsementning sxemasi ... uchun ... parametri bilan shunday bo'ladi:

  • Bo'shliqning yuqori chegarasi, ya'ni chegara 2 qiymati ko'rsatilgan .
  • Parametr chegarasining 1 qiymati o'zgaruvchiga beriladi.
  • Vaziyat tekshiruvi o'tkaziladi : ref . Argumentlar ≤ chegara 2 .
  • Haqiqiy natijaga erishilganda loopning tanasi bajariladi.
  • Taymer 1 ga teng bo'lgan qadam bilan oshiriladi.
  • 3-5 balllarni bajarish, bu shart to'g'ri bo'lgunga qadar amalga oshiriladi: ref> chegara 2 . Bu sodir bo'lgach, loop chiqadi va nazorat ushbu qurilishdan keyin buyruqqa o'tkaziladi.

For ... downto ... algoritmi ba'zi narsalar bundan mustasno, yuqoridagi kabi ishlaydi:

  • Uchinchi paragrafda, shartlar tekshiriladi: referent o'zgaruvchisi ≥ chegara 2 .
  • Algoritmning 5-satrida taymer 1 tomonidan qisqartiriladi.
  • 6-bandda, 3-5 buyruqlar talablar qondirilmaguniga qadar amalga oshiriladi: ref.

Qolganlarning hammasi ham ishning algoritmlarida o'xshash.

Tsementning blok diagrammasi parametr bilan

Parametrli sikllar quyidagi shakldagi oqim sxemasiga ega (u yuqorida ko'rsatilgan bo'lsa-da). Bu erda tuzilmaning soddalashtirilgan tashkiloti.

Bir parametr bilan siklning asosiy talablari

Parametrlar bilan aylanadigan turlar ma'lum turdagi shartlarni talab qiladi.

  • Hisoblagich va bo'shliq chegarasi (ya'ni, mos yozuvlar o'zgaruvchisi, chegara 1 va chegara 2) bir xil ma'lumot turiga tegishli bo'lishi kerak. Agar segmentning boshlang'ich va oxirgi qiymatlari bilan manba o'zgaruvchilari o'rtasida faqat muvofiqlik mavjud bo'lsa, dastur chegaralanmagan bo'lishi mumkin, chunki chegaralar asl parametrlarning ma'lumotlariga mos ravishda o'zgartiriladi.
  • Parametr qiymatlari tegishli bo'lgan ma'lumotlar turi tamsayı bo'lishi kerak. Haqiqiy turini ishlatmaslik tavsiya etiladi.
  • Pastki qismidagi parametr o'zgaruvchilar qiymatini o'zgartirish uchun majburiy ravishda istalmagan. Aks holda, foydalanuvchi yuzaga kelishi mumkin bo'lgan xatolarni kuzatib bo'lmaydi.
  • Boshqa tsikllardan farqli o'laroq, ... uchun ... yoki ... pastga ... ... qadamni o'zgartirish mumkin emas 1dan boshqa parametrga.

Turbo Paskal: qanday qilib ko'chadan chiqish kerak

Tez-tez velosipedda sodir bo'ladigan muammolar mavjud, ya'ni test holati har doim to'g'ri bo'ladi. Ajratish jarayoni looplardan oldingi holatga, postkondition, parametr bilan chiqish uchun yordam beradi. Ya'ni ularning ishi muddatidan oldin tugaydi.

Paskalda parametrga ega bo'lgan aylanishlar (dasturlash shartning "abadiy" haqiqatini nazarda tutadi) "Continue" yordamida to'xtatiladi. Bu erda ish shunday tartibga keltiriladi: hozirgi iteratsiya ijro etilishini oldindan to'ldiradi, nazorat keyingi buyrug'ga o'tkaziladi, lekin loopdan chiqmasdan.

Chiqish protsedurasi blok kodini dastur kodida bajarish uchun talab qilinadi. Bu protsedura (funktsiyalar) doirasida chaqiriladi va shu bilan birga, bu "buyumlar" ning ijro etilishi darhol to'xtaydi. Chiqish dasturning asosiy blokida bo'lsa, u ishni tugatadi.

Ish tartibi quyidagicha faoliyat yuritadi: dasturning ishi butunlay tugaydi.

Yechim bilan vazifalar misollari

Foydalanuvchi "Paskaldagi parametr bilan pastadir" mavzusini o'rganishdan oldin foydaliroq bo'ladi va keyin kodni o'zingiz yozishingizni mashq qiling. Oddiy vazifalar kelajakdagi dasturchilarga nazariyani amaliyotda o'rganishlariga yordam beradi va uni muvaffaqiyatli qo'llaydi. "Parametrli velosipedlar" mavzusida murakkab vazifalar misollari oson va murakkabdir. Bu erda ishlarning algoritmlari demontaj qilinishi va har bir eritma uchun tushuntirishlar va izohlar berilgan 3 ta vazifa.

Vazifa 1

[0..199] oralig'ida ikki o'lchovli tabiiy sonlar majmuasini hisobga olib, tasodifiy tanlangan. Ikkita sonli sonlar sonini sonlar soni 2dan ko'p bo'lgan raqamni toping.

Amallar algoritmi:

  1. Ikki o'lchovli qator yarating.
  2. Har bir shartni bajarish shartlarini tekshiring:

A) 9

B) raqamning ikkinchi raqamini moddan ajratish yo'li bilan tanlash;

C) tanlangan raqamlarni kiritish;

D) modani belgilangan miqdor bo'yicha 2 ga bo'lish;

E) agar natijasi 0 bo'lsa, hisoblagich 1 ga ko'paytiriladi.

Vazifa 2

Bir o'lchovli integer elementlar majmuasi berilgan. Musbat raqamlar sonini toping.

Amallar algoritmi:

  1. Randomize tomonidan yaratilgan tamsayı elementlarning bir qatorini yarating.
  2. Parametr bilan aylanish jarayonida shartli IF operatorini qo'shing, u holda berilgan elementni quyidagi holatlar bilan tekshiring: X> 0.
  3. Agar shart bajarilsa, taymer 1 ga oshadi.
  4. Ko'chadan so'ng hisoblagich natijasini ko'rsatasiz.

Qavslardagi {} izohlar sharhlar. 11-qatorda ekranda bir qatorni ikkita usulda ko'rsatish mumkin: raqamlar orasidagi bo'sh joy qoldirish yoki har bir element uchun muayyan miqdordagi hujayra ajratish (bu holda 5 ta mavjud).

12-satrda hisoblagich o'zgaruvchisi ikki usulda ham oshirilishi mumkin: oldingi qiymatga 1 qo'shing yoki Inc. ning standart funksiyasidan foydalaning.

Vazifa 3

Kvadrat matritsa beriladi. Asosiy diagonaldagi ijobiy elementlarning sonini toping.

Izohlar:

Raqamlar qatorida, asosiy diagonali yuqori chap burchakdan pastki o'ngga qadar uzanadi. Uning o'ziga xosligi shundaki, satr va ustun indekslari mos tushadi. Shuning uchun, qolgan qismlarga qaramasdan satrlarni o'tish uchun 1 tsikl tashkil etish kifoya.

Amallar algoritmi:

  1. Kvadrat matris yaratish.
  2. Mumkin bo'lgan elementlarni hisoblash uchun mas'ul bo'lgan o'zgaruvchiga "0" qiymatini belgilang.
  3. Kvadrat matritsani yaratish uchun pastadir yarating.
  4. Hodisani tekshiring: agar asosiy diagonaldagi raqam> 0 bo'lsa, hisoblagich 1 ga ko'paytiriladi.
  5. O'tish tugagandan so'ng, musbat elementlarning sonini saqlaydigan o'zgaruvchining qiymatini aks ettiring.

Ikki dasturlash tilining o'zaro to'qnashishi: C va Turbo Paskal

Odatda, o'z-o'zini hurmat qiladigan dasturchi bir necha tilni biladi. Misol uchun, C ++, Turbo Paskal, Delfi, Java va boshqalar bo'lishi mumkin. Ikkalasining qarshiligi 80-yillarda aniq ifodalangan. (C va turbo-pascal). Yigirmanchi asrning oxirida o'sha kurash C ++ va Java o'rtasida bo'lib o'tdi.

Virtual maydonda uchta dasturlash tilining uchta eng yorqin juftligini aniqlab olish mumkin: ularning eng katta kiber-kosmik zarrachalari: Algol-60 va Fortran, Paskal va C, Java va C ++. Albatta, bu his-tuyg'ular sub'ektivdir, biroq ikkinchisidan birida etakchi bo'lishi mumkin. Bu sanoatning talablari va muayyan dasturiy ta'minot mahsulotiga bo'lgan talabga bog'liq. 70-yillarda. Fortranni 80-yillarda - Turbo Paskalda, 90-yillarda "C ++" da boshqargan. Albatta, ulardan hech biri "o'lgani yo'q". Aksincha, ular ishlab chiqilgan dasturiy mahsulotlarga aylandi.

Dasturlash tillarini o'rganayotganda, ayrim mavzularda sintaksikning o'xshashligini farqlay olasiz. Shunday qilib, C parametresiga ega sikllar Paskaldagi shunga o'xshash konstruktsiyalarga o'xshaydi, ba'zi vaqtlardan tashqari.

Qizig'i shundaki, Turbo Paskal (Old World) ishlab chiquvchilari amerikalik olimlarning rivojlanish natijalaridan foydalanganlar, yangi dunyo esa ular Evropa tadqiqotlari natijalarini faol ishlatishdi. Evropada ishlab chiquvchilar dasturlash tillarining tozaligi va ixchamligi uchun yana ko'p narsalarni da'vo qilishadi va Amerika fikrlari kod yozishda yangi yo'nalishlarning qo'llanilishiga ko'proq moyildir.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 uz.delachieve.com. Theme powered by WordPress.