KompjûtersProgramming

Exponentiation yn Pascal programmearring: tips and tricks

Der is in grut tal fan de programmearring talen, en Pascal is net it lêste plak yn hjar formidden. En as jo geane te serieus ûntliene de takomst programmearring moatte begjinne familiarizing mei de wrâld is troch it learen fan de taal, omdat it is makliker om te belibjen en, wichtiger noch, it programma is absoluut frij.

Yn dit artikel sille wy omgean mei dizze lestich probleem, as de exponentiation. Pascal, spitigernôch, net ús oanbiede te lossen dit probleem, oars as oare programmapartners talen, in inkel operator. Sa hjir wy hawwe, sa't se sizze, krije út mei ymprovisearre middels, resorting oan loops en wiskundige operators - it is hjir dat kinne wy jouwe rom baan oan ús ferbylding. Tink oan ferskate metoaden te lossen dit probleem.

Stel wy wurde jûn in maklike opjefte, dêr't in beskate getal moat opbrocht oan it nivo fan it hiele posityf. Nim in oantal binne rjocht op 4 graad. Der wurdt útfierd in ienfâldige wiskundige operaasje: b: = een * a * in * a.

Yn de folgjende stap, wy complicate de taak en fan de universele programma dat sil bouwe gjin getal yn alle hiele positive graad. Hjir is der gelegenheid om te profitearje fan in syklus, mar wy sille rekken in ienfâldige metoade mei help fan in lus mei in teller. Op de linker kinne jo lêze yn de folsleine tekst fan ús programma, der is, en ferklearrings fan de bedriuwsfiering. Trouwens, it moat sein wurde dat in oantal oprjochte mooglik set Gehiele, en kin wêze, bygelyks, Real, dat wurdt boud yn fraksjonele graad.

De foargeande foarbylden tastean ús ta it bouwen fan in oantal allinnich yn positive yntegraal krêften. Mar der binne útdagings dêr't jo moatte bouwe getal nei in fraksjonele macht. Wannear't it skriuwen sa'n programma, wy moatte witte logarithms eigenskippen. Benammen: a b = e b ln a . Op grûn dêrfan, de winske diel fen ús programma sil wêze fan de foarm: r: = exp (b * ln (a)). Mar hjir binne wy konfrontearre mei it feit dat dizze operator wurket net mei nul en negative getallen. Om te ferfoljen ús programma exponentiation 0, jo moatte in betingst: As b = 0 Dan r: = 1 Else r: = exp (b * ln (a)). Mar as foar negative getal ferskynt exponentiation?

Pascal makket ús tink wer. Hjir is it nedich om dizze operaasje mei ús module nûmer en nim de gegevens mei in negatyf resultaat. Dan kontrolearret de parity van graad: As ús nivo wie sels, wylst wy nimme op 'e útkomst fan' e module. Yn dit gefal, ús programma sil hawwe de foarm: r: = (- 1) * exp (b * ln ( ABS (a))); As Round (b / 2) = b / 2 Dan r: = ABS (r) . De tastân hjir kontrolearret, sels of gjin diploma.

As gefolch, wy komme ta in mear universele model fan ús program dat sil wurkje mei alle nûmers. Sa no ha wy te ferienigjen yn ien gehiel allegear fan de boppesteande. De ôfbylding nei rjochts kinne jo lêze yn de folsleine tekst fan ús klear programma. Tink dêrby oan de oantsjutte data type. Yn tsjinstelling ta de earste programma, dat brûkt Real, lykas Hjir binne wy al dwaande mei alle nûmers, net allinnich integers. Sa, it foech fan de echte nûmers ha wy folslein beskôge. Mar ien fraach bliuwt wurde beskôge.

Bikearen ta him, hjir moat opmurken wurde dat de oplossing fan dit probleem fereasket frij djippe kennis yn programmearring. Dit exponentiation kompleks getal. Jo kinne besykje om gebrûk meitsje fan in ferskaat oan oplossings, bygelyks, Moivre formule, mar der binne swierrichheden mei de oerdracht fan in kompleks getal yn trigonometric foarm. Der is in oplossing foar dit probleem yn de taak fan fermannichfâldigjen prosedueres fan twa komplekse getallen en in ienfâldige lus mei in teller, ie, Werhelje dizze proseduere in macht fan it tal kearen. Op de foarbyld jûn, dan kinne jo begripe mear yn detail de tekst fan it programma.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 fy.atomiyme.com. Theme powered by WordPress.