Kalkulačka (definice jak vypočítat variace různých početních operací) – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kalkulačka (definice jak vypočítat variace různých početních operací) – JavaScript, AJAX, jQuery – Fórum – Programujte.comKalkulačka (definice jak vypočítat variace různých početních operací) – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
Carduus0
Návštěvník
1. 8. 2011   #1
-
0
-

Zdravím,
rozhodl jsem se, že napíši v JavaScriptu kalkulačku. Je dělaná na tom, že každá početní operace má před sebou a za sebou mezeru. Díky těmto mezerám poté rozdělím řetězec do polí. Zatím používám jenom 4 operace : odečítání, sčítání, násobení a dělení. Při kliknutí do = by se měla udělat nová řádka a napsat správný výsledek. Je tu ale menší problém. Chci, aby se na 1 řádce dalo vypočítat alespoň 5 početních operací a při nejlepším 10. Pro každou variaci znaků (+ - / *) bych musel udělat definici, jak se má daný příklad vypočítat. Zjistil jsem, že pokud bych chtěl s 10 operacemi bude to    1 398 100 variací. Není nějaký lepší způsob, jak nadefinovat všechny variace početních operací - + / *?

Nahlásit jako SPAM
IP: 109.235.1.–
Řešení
1321645679876456
~ Anonymní uživatel
27 příspěvků
1. 8. 2011   #2
-
0
-
Vyřešeno Nejlepší odpověď

Všechny tyhle problémy za vás s přehledem vyřeší funkce eval():

var calculation = '2 * ((3 - 1) + 6 / 2)';
alert(eval(calculation));

U statické stránky s kalkulačkou je to buřt, jinak by se to hodilo ošetřit funkcí, která zkontroluje, jestli se řetězec skládá pouze z operátorů, čísel, mezer a závorek.

Nahlásit jako SPAM
IP: 83.240.95.–
Carduus0
Návštěvník
1. 8. 2011   #3
-
0
-

Už jsem se bál, že budu muset napsat ten milion definicí. Děkuji ti mnohokrát, ani nevíš, jak jsi mi pomohl/a.
Já to ošetřovat nemusím... ta kalkulačka bude mobilní aplikace a jelikož všechny ty příklady vpisuji do textarea s atributem readonly, tak se tam nemůže dostat žádný jiný znak :)

Nahlásit jako SPAM
IP: 109.235.1.–
Nefaritus
~ Redaktor
+2
Posthunter
1. 8. 2011   #4
-
0
-

#3 Carduus
Kdybys zalovil, tak jsem přímo na kalkulačku psal článek :) (v lekci JavaScriptu)

Nahlásit jako SPAM
IP: 93.99.142.–
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, 18 hostů

 

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