Kontent qismiga oʻtish

Psevdokod

Vikipediya, erkin ensiklopediya
(Pseudocode nima?dan yoʻnaltirildi)

Pseudocode haqida qisqacha

[tahrir | manbasini tahrirlash]
Pseudocode

Pseudocode[1] – bu Informatika fanida ishlatiladigan algoritm yoki boshqa tizim jarayonlarining oddiy tilda tavsifi. Pseudocode koʻpincha standart dasturlash tili tuzilma qoidalaridan foydalansa-da, u mashinada oʻqish uchun emas, balki inson uchun yozilgan. Odatda, algoritm kompyuter tomonidan tushunilishi uchun zarur boʻlgan oʻzgaruvchan taʼriflar va tilga xos kod kabi maʼlumotlarni qoldirib ketadi. Tegishli hollarda dasturlash tiliga tabiiy til tavsifi tafsilotlari yoki qisqacha matematik belgilar qoʻshiladi. Pseudocodedan foydalanish ikkilamchi maqsadga xizmat qiladi – standart dasturlash tili kodiga qaraganda algoritmning asosiy gʻoyalarini yanada samaraliroq va atrof-muhitdan mustaqilroq tasvirlash. U odatda algoritmlarni hujjatlashtirish, dasturiy taʼminot va boshqa algoritmlarni rejalashtirishda darsliklar va ilmiy nashr[2]larda qoʻllanadi.

Murakkab Flowchart (Oqim diagrammasi)

Pseudocode bilan yozilgan dastur executable[3] (bajariladigan) dastur emasligi sababli uning sintaksisi uchun umumiy standart mavjud emas; shunga qaramay, baʼzi oʻziga xos, cheklangan standartlar mavjud (masalan, akademik baholashda qoʻllanadi). Pseudocode kompilyatsiya qilishda xatosiz boʻlgan skelet dasturlariga oʻxshaydi. Pseudocodening grafik oʻrnini bosuvchi sifatida flow charts[4] (oqim diagrammalari), drakon-charts[5] (drakon diagrammalari) va Yagona modellashtirish tili (UML[6]) diagrammalari koʻrib chiqilishi mumkin, ammo ular qogʻozda koʻproq joy egallaydi.

JavaScript kodlari asosida ham Pseudocode yotadi.

Pseudocode koʻpincha kompyuter fanlari va raqamli hisoblash boʻyicha darsliklar va akademik ishlarda algoritmlarni tavsiflash uchun ishlatiladi, shuning uchun turli xil dasturchilar ularni tushunishlari mumkin. Darsliklarda odatda foydalanilayotgan muayyan konventsiyalarni tavsiflovchi kirish boʻlimi mavjud. Baʼzi hollarda, pseudocodening batafsil darajasi oʻrnatilgan umumiy maqsadli tillar bilan taqqoslanishi mumkin.

Algoritmni, ayniqsa nomaʼlum algoritmni amalga oshirishda dasturchi koʻpincha pseudocode tavsifi bilan boshlanadi, bu tavsifni maqsadli dasturlash tiliga „tarjima qiladi“ va uni dasturning qolgan qismi bilan toʻgʻri ishlashga moslashtiradi. Yuqoridan pastga tashkil etish strategiyasi sifatida dasturchilar loyihani pseudocodedagi kodni qogʻozda koʻrsatib, uni haqiqiy tilda yaratishdan oldin, aniqlashtirish sifatida amalga oshiriladigan bir qator qadamlar bilan boshlashlari mumkin.

C++

Pseudocode koʻpincha biron bir tilning sintaksisi standartlariga mos kelmaydi; belgilangan standart shakl mavjud emas. Baʼzi yozuvchilar tushkunlikka tushganiga qaramay, bir nechta anʼanaviy dasturlash tillarining boshqaruv tuzilmalarining sintaksisi va uslubidan foydalanadilar. Fortran, Paskal, BASIC, C, C++, Java, Lisp va ALGOL sintaksis manbalariga bir nechta misollardir. Aksariyat hollarda oʻzgaruvchan deklaratsiyalar oʻtkazib yuboriladi. Funksiya chaqiruvlari va katta kod boʻlaklari, masalan, tsikllarda topilganlar, tez-tez oddiy tilda oddiy jumlaga almashtiriladi.

Pseudocode qanday koʻrinishga ega

Raqamli hisoblashda pseudocode koʻpincha anʼanaviy dasturlash tilining boshqaruv tuzilmalari bilan aralashgan, odatda toʻplam va matritsa nazariyasidan olingan matematik belgilardan va, ehtimol, tabiiy til tavsiflaridan iborat. Bu matematik jihatdan oʻqitilgan keng doiradagi odamlar tomonidan tushunilishi mumkin boʻlgan ixcham va koʻpincha norasmiy yozuv boʻlib, koʻpincha matematik algoritmlarni tasvirlash usuli sifatida ishlatiladi.

Matematik belgilar:

[tahrir | manbasini tahrirlash]

Pseudocodeda turli matematik amallar va ifodalarni ifodalash uchun matematik belgilardan foydalanish mumkin. Mana, pseudocodeda matematik belgilardan qanday foydalanish mumkinligiga misol:

// Addition

sum = a + b

// Subtraction

difference = a – b

// Multiplication

product = a * b

// Division

quotient = a / b

// Modulo (remainder)

remainder = a % b

// Exponentiation

result = base ^ exponent

// Square root

root = √(number)

// Absolute value

absolute = |number|

// Comparison operators

if a > b then

// Perform some action

else if a < b then

// Perform some other action

else

// Perform another action

// Increment and decrement

a = a + 1

b = b - 1

// Parentheses for grouping

result = (a + b) * c

// Mathematical functions (e.g., sine, cosine, logarithm)

result = sin(angle)

result = cos(angle)

result = log(number)

// Mathematical constants (e.g., π, e)

pi = 3.14159

e = 2.71828

Bular matematik belgilar va operatsiyalarni pseudocodeda qanday ifodalash mumkinligiga misollardir. Haqiqiy sintaksis va konventsiyalar ishlatilayotgan pseudocode tili yoki uslubiga qarab farq qilishi mumkin.

  1. „Pseudocode“ (Inglizcha) (2001-yil 1-oktyabr). Qaraldi: 2023-yil 14-sentyabr.
  2. „Ilmiy nashrlar“ (Inglizcha) (2003-yil 8-dekabr). Qaraldi: 2023-yil 14-sentyabr.
  3. „Executable“ (Inglizcha) (2003-yil 27-aprel). Qaraldi: 2023-yil 14-sentyabr.
  4. „Flowcharts“ (Inglizcha) (2004-yil 15-mart). Qaraldi: 2023-yil 14-sentyabr.
  5. „Drakon diagrammalar“ (Inglizcha) (2007-yil 7-mart). Qaraldi: 2023-yil 14-sentyabr.
  6. „MDL“ (Inglizcha) (2001-yil 12-noyabr). Qaraldi: 2023-yil 14-sentyabr.