Mocnění, odmocnění a opakování programu – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Mocnění, odmocnění a opakování programu – C / C++ – Fórum – Programujte.comMocnění, odmocnění a opakování programu – C / C++ – Fórum – Programujte.com

 

Minarth
~ Anonymní uživatel
4 příspěvky
12. 11. 2007   #1
-
0
-

Ahoj,
potřeboval bych umocnit číslo a číslem b... a^b
dále bych potřeboval udělat n-tou odmocninu čísla a
a pak bych potřeboval, aby se mi program opakoval... cyklem se mi to nepodařilo, netuším proč..
díky za odpovědi... Google jsem zkoušel, ale moc moudrý jsem z něj nebyl

Nahlásit jako SPAM
IP: 83.208.244.–
don_Dominique0
Super člen
12. 11. 2007   #2
-
0
-

To Minarth : A já bych potřeboval 10000000 KČ :D.
Tady je to umocnění v C# v C++ to je stejně nebo podobně:

static int mocnina(int x, int y) {

if (y == 0)
{
return 1;
}
else {
return (x*mocnina(x,y-1));
}
}


Nahlásit jako SPAM
IP: 193.165.176.–
tmi0
Věrný člen
12. 11. 2007   #3
-
0
-

pozn1.: asi by to chtelo rict ze ten program jako cisla y (tedy exponenty) bere jen prirozena cisla, coz je jen cast operace umocneni... i kdyz programovat to pro racionalni cisla by se mi nechtelo. jeste by se to dalo pro cela (nakonci se tim cislem vydeli jednicka).
pozn2.: proc si tu funkci specifikoval jako statickou?
pozn3.: rekurze je podle mne zbytecna, napsat to jako while cyklus by bylo efektivnejsi

Nahlásit jako SPAM
IP: 89.185.230.–
ksp.mff.cuni.cz -- doporučuje 5 z 0 přetečených bufferů!
don_Dominique0
Super člen
12. 11. 2007   #4
-
0
-

To tmi : To sem vytáh z jedné práce co sem dělal jednou ve škole už je to docela dávno, takže ani nevim proč je to tak :smile3: Ale myslim si že to bylo jenom ukázka řešení. myslim si že kdyby pořádně použil google tak bi něco určitě našel.

Nahlásit jako SPAM
IP: 193.165.176.–
tmi0
Věrný člen
12. 11. 2007   #5
-
0
-

no on by stacil i kurz C++ na techto strankach...
ale nejlepsi reseni mocnin/odmocnin je dle mne funkce pow z knihovny math.h:
double pow(double x, double y); kde x je zaklad, y exponent

Nahlásit jako SPAM
IP: 89.185.230.–
ksp.mff.cuni.cz -- doporučuje 5 z 0 přetečených bufferů!
Zelenáč0
Posthunter
12. 11. 2007   #6
-
0
-

Chjo, dyt se to tu uz resilo... Taky existujou moc chytry stranky http://www.cplusplus.com/!
Jinak pro mocninu existuje v knihovne cmath f-ce pow: http://www.cplusplus.com/reference/clibrary/cmath/pow.html



cout << pow(3, 2) << endl; // vypise "9"
cout << pow(9, 1/2) << endl; // vypise "3"


To stim opakovanim programu moc nechapu? Zkusim neco nadhodit:


#include <iostream>
int prikaz;
int main(){
while(1) // nekonecny cyklus
{
cin >> prikaz;
if(prikaz == 10){ // pokud uzivatel zada "10"
break; // ukonci se cyklus...
}

}
return 0; // ...a tim take program
}

Nahlásit jako SPAM
IP: 89.176.254.–
tmi0
Věrný člen
12. 11. 2007   #7
-
0
-

To Zelenáč : ten cyklus se mi libi))

Nahlásit jako SPAM
IP: 89.185.230.–
ksp.mff.cuni.cz -- doporučuje 5 z 0 přetečených bufferů!
Zelenáč0
Posthunter
12. 11. 2007   #8
-
0
-

To tmi : Proc? :-D Mne ne... Odporuje to memu presvedceni: Ta slozena zavorka ma byt hned za tim while:



while(1){

Na novem radku ji delam pouze u trid :-) Bohuzel jsem tam uz napsal komentar a nechtelo se mi ani sahnout po mysi, ani presunovat kursor pomoci sipek.. :'-(

Nahlásit jako SPAM
IP: 89.176.254.–
tmi0
Věrný člen
12. 11. 2007   #9
-
0
-

jo ty zavorky davam stejne... ale libi se mi idea cyklu) takova... originalni!
ackoli ja bych ten cyklus zapsal jako:
while(cin>>prikaz, prikaz!=10);
...aneb proc to zbytecne roztahovat

Nahlásit jako SPAM
IP: 89.185.230.–
ksp.mff.cuni.cz -- doporučuje 5 z 0 přetečených bufferů!
mates0
Grafoman
12. 11. 2007   #10
-
0
-

odmocninu můžeš udělat jako x^(1/n) -> ntá odmocnina z x

Nahlásit jako SPAM
IP: 85.207.161.–
Jeyekomon0
Stálý člen
22. 11. 2007   #11
-
0
-

To tmi :

while(cin>>prikaz, prikaz!=10);


Ehm, s funkcemi while a cin jsem si myslel, ze jsem uz videl vsechno, ale tohle..
To je ekvivalentni s timto ?? :


cin >>prikaz;
while(prikaz != 10)
{
...
}

Nahlásit jako SPAM
IP: 195.113.31.–
jjk
croniak0
Newbie
22. 11. 2007   #12
-
0
-

To Jeyekomon : Ne neni, ten "cin >> prikaz" se provede pred kazdou tou kontrolou - proste operator carka - vyhodnoti co je nalevo od carky, pote vyhodnoti co je napravo od carky a hodnotu toho praveho vrati.
Ale treba ja to moc rad nemam, prijde me to takove az moc neprehledne a kdyz se carka pouzije v nejake slozitejsi konstrukci, tak se me v tom pak blbe hledaji chyby.

Nahlásit jako SPAM
IP: 62.84.145.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 8 hostů

Podobná vlákna

Opakování programu — založil Zippy

C# opakování programu — založil Petr

častečne odmocněni — založil Akacko

Opakovani — založil

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý