Rekenaars, Programmering
Magsverheffing in Pascal programmering: tips en truuks
Daar is 'n groot aantal van programmeertale, en Pascal is nie die laaste plek onder hulle. En as jy gaan ernstig betrokke te raak in die toekoms ontwikkeling moet begin vertroud met die wêreld is deur die leer van die taal, omdat dit makliker is om persepsie en, nog belangriker, die program is heeltemal gratis.
In hierdie artikel sal ons gaan met hierdie moeilike probleem, as die magsverheffing. Pascal, ongelukkig, nie ons bied om hierdie probleem op te los, in teenstelling met ander programmeringstale, 'n enkele operateur. So hier het ons, soos hulle sê, kom uit met geïmproviseerde beteken, op te stel loops en wiskundige operateurs - dit is hier waar ons vrye teuels kan gee om ons verbeelding. Oorweeg 'n paar metodes om hierdie probleem op te los.
Veronderstel ons 'n maklike taak nie, waar 'n sekere aantal moet verhoog word om die vlak van die hele positiewe gegee. Aanvaar 'n aantal regop op 4 graad. Daar is uitgevoer 'n eenvoudige wiskundige operasie: b: = a * n * 'n * a.
Die voorafgaande voorbeelde stel ons in staat om 'n aantal bou net in positiewe integrale magte. Maar daar is uitdagings waar jy nommer moet bou aan 'n breukdeel krag. By die skryf van so 'n program, moet ons weet logaritmes eienskappe. In die besonder: a b = e b ln 'n . Op grond hiervan, sal die gewenste gedeelte van ons program van die vorm wees: r: = exp (b * ln (a)). Maar hier is ons gekonfronteer word met die feit dat hierdie operateur nie werk met 'n nul en negatiewe getalle. Ten einde ons program magsverheffing 0 vervul, moet jy 'n toestand te stel: As b = 0 dan r: = 1 Else r: = exp (b * ln (a)). Maar as om 'n negatiewe getal verskyn magsverheffing?
Pascal maak ons weer dink. Hier is dit nodig om hierdie aksie uit te voer teen ons module aantal en neem die data met 'n negatiewe gevolg. kyk dan die gelykheid van graad: as ons vlak selfs was, terwyl ons op die uitkoms van die module. In hierdie geval, sal ons program die vorm het: r: = (- 1) * exp (b * ln ( ABS (a))); As Round (b / 2) = b / 2 Toe r: = abs (r) . Die toestand hier tjeks, selfs of geen graad.
As gevolg hiervan, kom ons by 'n meer universele model van ons program wat sal werk met enige nommers. So nou het ons te verenig in 'n enkele geheel al die bogenoemde. Die beeld aan die regterkant jy kan die volledige teks van ons finale program lees. Aandag te gee aan die gespesifiseerde tipe data. In teenstelling met die eerste program, dit maak gebruik van Real, as Hier is ons reeds besig met 'n getalle, nie net heelgetalle. So, magte van reële getalle wat ons ten volle oorweeg word. Slegs een vraag bly in ag geneem word.
Similar articles
Trending Now