Eksponencija Pascal programavimo kalba: patarimai ir gudrybės
Yra daugybė kalbųprogramavimas, ir Pascal užima tarp jų ne paskutinę vietą. Jei ateityje ketinate rimtai įsitraukti į programavimą, turėtumėte pradėti susipažinti su šiuo pasauliu su šios kalbos mokymu, nes tai yra lengviau suvokti ir, svarbiausia, programa yra visiškai nemokama.
Šiame straipsnyje aptarsime tokią sudėtingą problemą,kaip exponentiation. Paskalis, deja, nesuteikia mums atskiro operatoriaus šios problemos sprendimo, skirtingai nuo kitų programavimo kalbų. Taigi čia, kaip sakoma, būtina atsikratyti improvizuotų priemonių, kreiptis į ciklus ir matematinius operatorius - čia mes galime suteikti ventą mūsų vaizduotę. Apsvarstykite kelis šios problemos sprendimo būdus.
Tegul mums pateikiama paprasčiausias uždavinys, kai tam tikras skaičius turi būti iškeltas iki visiško teigiamo lygio. Tarkime, kad numeris a mes keliaujame 4 laipsniais. Čia atliekame paprastą matematinę operaciją: b: = a * a * a * a.
Ankstesni pavyzdžiai leidžia mums kurti numeriustik teigiamais sveikaisiais įgaliojimais. Tačiau yra problemų, kai reikia padidinti skaičių iki mažos galios. Rengiant tokią programą mums reikia žinoti apie logaritmų savybes. Visų pirma: ab= eb ln a. Atsižvelgiant į tai, mūsų programos dalis bus tokia: r: = exp (b * ln (a)). Bet čia mes susiduriame su tuo, kad taiOperatorius neveikia su nuline ir neigiama skaičiais. Kad mūsų programa atliktų exponentiation į 0, mums reikia nurodyti sąlygą: Jei b = 0 Tada r: = 1 Kita r: = exp (b * ln (a)). Bet kaip parodomas neigiamas skaičius?
Pascal daro mus galvoti dar kartą. Čia mes turime atlikti šią operaciją su mūsų skaičiaus moduliu ir priimti duomenis su neigiamu rezultatu. Tada patikrinkite laipsnio lygybę: jei mūsų laipsnis buvo lygus, tada mes priimame modulį iš rezultato. Tokiu atveju mūsų programa atrodys taip: r: = (-1) * exp (b * ln (abs (a))); Jei raundas (b / 2) = b / 2 Tada r: = abs (r). Čia būklė patikrina, ar laipsnis yra lygus, ar ne.
Todėl mes siekiame labiau universalaus modelioMūsų programa, kuri dirbs su bet kuriais numeriais. Būtent dabar turime sujungti visas minėtas į vieną bendrą. Vaizde dešinėje galite pamatyti visą mūsų užbaigtos programos tekstą. Atkreipkite dėmesį į nurodytą duomenų tipą. Skirtingai nei pirmoji programa, ji naudoja Realus, t. čia mes jau dirbame su bet kuriais skaičiais, o ne tik su sveikaisiais skaičiais. Taigi mes visiškai laikomės faktinių skaičių pasipriešinimo. Būtina apsvarstyti tik vieną klausimą.