Maqseti: Maǵlıwmatlardiń sazlanǵan hám payda qılı’natuǵIn túrlerin úyrenıw hám olardı ızertlew. Qoyılǵan másele
Download 0.89 Mb.
|
метод Маглыу.струк
- Bu sahifa navigatsiya:
- Jumistan maqset
using namespace std;
int main(){ long n, i, j; cin >> n; long a[n]; for (i = 1; i <= n; i++) cin >> a[i]; for (i = 1; i < n; i++) for (j = i + 1; j <= n; j++) { if (a[i] < a[j]) { a[0] = a[i]; a[i] = a[j]; a[j] = a[0]; } } for (i = 1; i <= n; i++) cout << a[i] << " "; return 0; } Bul programmamizda paydalanıwshı tárepinen kiritilgen massiv elementlerkemeyiw ta’rtibinde saralap beredi. Sizge aytqan 0 indeksli massiv elementimizdi bos ıdıs sıpatında isletip massivti saraladıq. Massivti ósiw tartibinde saralawshı bolsańız baspadan shıǵarıwdaǵı for dıń paramertlerin ózgertiwińiz jetkilikli yaǵnıy for(i=n;i>=1;i--) siziń massiv elementleriniz o'siw ta’rtibinde shigariladi. Jumistan maqset: Rekursiv ha’m iterative algoritmlerin isletiwge misal. Qoyilg’an ma’sele: Rekursiv ha’m iterative algoritm haqqinda bilim ha’m tu’sinikke iye bolamiz. Jumistiń ta’rtibi: Tajriybe isi na’zeriy mag’lumatlarin u‘yreniw; Berilgen tapsirmaniń algoritmin islep shig’iw; C++ da’stu’rlew ortalig’inda da’stu’rdi jaratiw; Na’tijelerdi tekseriw; Esabatti tayarlaw ha’m tapsiriw. Jańa obyekt yaki tu’siniklerge aniq ta’rip kiritiwdiń eń tiykarg’i qag’iydalarinan biri bul oniń ta’ripinde sizge awelden aniq ha’m tu’sinikli bolg’an atamalardan paydalanip ta’rip beriw. Soniń ushin, ta’riplerde tiykarinan o’z shegarasinan shette bolg’an so’zlerdi qolaw naduris. Basqa ta’repten, o’z o’zin ta’riplewshi da’stu’riy tu’sinikler ju’da ko’p. Bunday ta'ripler rekursiv ta'ripler deb ataladi ha’m tiykarinan sheksiz toplamlarg’a ta'rip berilgende paydalaniladi. Bunday to'plamg’a ta'rip berilgende, ba’rsha elementler dizimin beriw imka’nsiz, ha’m ju’da u’lken aniq toplamlar ushun paydasiz. Soniń ushun, eń qolay usul bul obyekt usi to'plamg’a tiyisli yaki tiyisli emesligin aniqlaw. Rekursiv ta'ripler eki bo’limnen ibarat. Birinshi bo’liminde, toplamniń tiykar qilip aling’an elementler jaylastiriladi. Ekinshi bo’liminde, tiykar qilip aling’an yaki awel paydalanilg’an elementlerden paydalanilmag’an halda jańa obyektler jaratiw ushun qag’iydalar beriledi. Bul qag’iydalarg’a jańa obyektlerin jaratiwda qayta-qayta mu’ra’ja’t etiledi. Misal ushun, natural sanlar toplamin jaratiw ushun, bir tiykarg’I element, 0, bir ta’repleme, ha’m 1 bo'yinsha inkrementlaw jarayani to’mendegishe beriledi. Berilgen misaldag’iday sandi quramali ko’rinisten a’piwayi ko’riniske o'tkizip aliw ahmiyetli, tez saralaw usulinan paydalaniw paydali.46 Rekursiv ta'ripler tiykarinan tsifralar izbe-izligi ha’m funksiyalardi aniqlawda paydalaniladi. Misal ushun, faktorial funksiya ! to’mendegishe aniqlaniwi mu’mkin. Bul ta'ripten paydalanip, biz 1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880, 3628800, . . . sanlarin 0, 1, 2, . . . , 10, . . . tsifralariniń faktoriallarin o'z ishine aliwshi izbe-izlikti payda etiw mu’mkin. Keyingi misal ratsional sanlar izbe-izligin payda qiliwshi ta’rip. Izbe-izliklerdiń rekursiv tariypleriniń bir jag’imsiz ayrıqshalıg’ı ámeldegi: sn izbe-izlikning elementleri ma`nisin esaplaw ushın, áwele, hár bir s 1,.. ., s n-1 larning bahaların esaplawimiz zárúr boladı. Mısal ushın,, 3! Ni esaplaw ushın aldın 0!, 1!, 2! Larning ma`nisin esaplaw kerek. Bul bolsa kóbinese qolaysız jaǵdaylarǵa alıp keledi. Sol sebepli, biz bul formulaǵa ekvivalent bolǵan formulanı tappaqtasımız kerek boladı. Uluwma alǵanda, bunday formulanı tabıw quramalı másele, sonday máseleki, mudamı da óz sheshimine iye bola almaydıǵan mashqala. Lekin bunday formula rekursiv tariypler ushınǵana sáykes keledi, sebebi bul mısaldı ápiwayılastıradı ha'm pútkil n dıń ma`nisin 0, 1,.. ., n - 1lerdiń ma`nisin bilmey turıp esaplaw imkaniyatın beredi. Mısal ushın, g izbe-izlikning tariypi: g(n) = 2 n ko'rinishidagi ápiwayı formulaǵa aylandırıw múmkin bo'lar eken. Kórilgen analizler, rekursiv tariyplerdiń tek ǵana teoretik kórinisi bolıp, bul tariypdan matematikada paydalanıladı. Tuwrısıda, biziń qızıǵıwshılıqimiz kompyuter salasında. Programmalastırıw tilleri grammatikasınıń arnawlı bólimlerinde rekursiv tariyplerge shaqırıq etiledi. Grammatika yamasa blok diagrammalar tiykarında yamasa Backus-Naur Forması (BNF) de anıq belgilenedi. Mısal ushın, berilgen qandayda bir-bir bayanat C++ programmalastırıw tilindegi sintaktik analizinde tómendegishe blok diagramma arqalı suwretleniwi múmkin: Tildiń bir elementi esaplanmish óz-ózine shaqırıq etiwi menen rekursiv anıqlanadı. Bunday tariypler sonday túrdegi sintaktik apparat tiykarında bayanat yamasa terminlerdiń anıqlamasın anıqlawımız múmkin boladı. Rekusiv tariyplerden programmalastırıwda paydalanıladı. Funksiyanıń rekursiv túsiniklerinen paydalanıw C++ programmalastırıw tilinde júdá qol keledi, sebebi bul artıqsha miynet talap etpeydi. Biz ápiwayı formal berilgen tariyplerdi C++ tiliniń sintaksisine awdarma jasawımız múmkin. Mısal ushın, C++da faktorialga ekvivalent funksiya bul - Download 0.89 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling