Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 21. 09. 2011 16:45

Satanus
Zelenáč
Příspěvky: 7
Škola: ISŠNP
Pozice: Student
Reputace:   
 

VB6 n-tá mocnina

Tvořím kalkulačku a dostal jsem se k problému mocnin. Nse mi tvořit milion tlačítek pro jednotlivé mocniny. A žádný algoritmos se mi nepodařilo najít ani vymyslet takže kdyby mi nějáká hodná duše poradila jak na to byl bych velmi rád, stačí alespoň naznačit směr kterým se vydat, zbytek snad něják vymyslím.


Dostatečně pokročilou technologii nelze odlišit od magie. Arthur C. Clarke

Offline

 

#2 21. 09. 2011 16:54 — Editoval frank_horrigan (21. 09. 2011 16:59)

frank_horrigan
Příspěvky: 938
Reputace:   31 
 

Re: VB6 n-tá mocnina

Také tě zdravím,

osobně jsem céčkař, a tam se používá knihovní funkce pow, se dvěma argumenty (základ, exponent), samozřejmě příslušně přetížené, že to chroupe a vrací příslušné datové typy.

VB bude mít pravděpodobně něco takového taky...

Kdyby ne, tak pak máš možnost si to zapsat v cyklu, kde iterační proměnná bude mít mez danou argumentem funkce (exponent)  a každým průchodem přinásobíš mezivýsledek argumentem (základ) (udělal bych si ještě lokální proměnnou, aby sis nepoškodil tu, co předáváš)....

plus případně test na přetečení :)

jednoduchý příklad, která očekává celočíselné argumenty a vrací long int. Nemám tam chybové testy, funkce řeší jen kladný exponent - tyto případy si již dokážeš ošetřit, předpokládám

Code:

long int power(int base, int exp)
{
    long int temp = 1;
    for(int i = 0; i < exp; i++)
    {
         temp *= base;
    }
      return (temp);
}

The only thing worse than being wrong is staying wrong
Sun Tzu - The Art of War

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson