Diskuze: problém s počítáníím v batch

Tvůrce

Zobrazeno 50 zpráv z 62.
Proč prosím nepoužiješ nějaký normální programovací jazyk, kde by toto bylo na 5 řádků?
ale v jakém? Zkoušel sem delphi a javu, a z toho sem pochopil jenom nějaký základy
Myslím že by bylo vhodné C# nebo PHP a udělat to jako web aplikaci
ale to by bylo potřeba připojení k internetu, ne?
A to nemáte ? V tom PHP by si s tim mohl vyhrát a udělat to i pro víc llidí s přihlašováním. A někde jsem slyšel o PHP kompilátoru, případně local apache...
Máš několik desítek jazyků tak si vyber tady jsou návody třeba na C# nebo java
s netem problém není, doma máme, ale na cestách moc není.
A z c++ v tom potom dělam jak? To mam okýnko podobný batchi, nebo nějaký
normální okno
Doporučiji C#, ne C++. A v C# máš na výběr mezi WinFormApplication a ConsoleApplication
Doporučuji C. Je jednoduché, není v něm moc co se učit a tohle je hodně jednoduchý program, OOP jazyky jazyky jako C# nebo Java popř. C++ jsou v tomhle případě zbytečnost. Pokud ani jeden z nich neumíš, C se naučíš nejrychleji.
Na tohle a na spoustu dalších drobných věcí bych doporučil Python. Dá se použít i jako obyčejná kalkulačka, takže vše je hezky poruce. Hledej IDLE Python.
Batch nechej v muzeu.
Proč jsou zbytečnost? Céčko nemá ani string, příšerně se s ním pracuje, v C# žádné OOP umět nepotřebuješ, můžeš v něm dělat stejně jako v céčku a nemusíš se patlat s nějakými poli a spojovými seznamy kdyby nedejbože chtěl dynamický počet známek nebo tak něco.
Použij C#, uděláš normální konzolovou aplikaci. Podobný příklad co tu zmiňuješ vytvoříš po přečtení prvních pár článků a bude na 5 řádků. Kdybys s tím měl problém, vždycky ti tu někdo poradí na fóru. Céčko patří do muzea, to se neuč. Python je také docela dobrý, ale nevím, jak v něm fungují konzolové aplikace a kompilace do exe, IDE atd. C# má všechno hrozně jednoduché a předpřipravené, vyleze ti EXE co funguje stejně jako tvůj bat.
PHP se sice použít dá, ale pro tento účel nepatří mezi nejvhodnější, protože není určeno pro interaktiní práci. Připojení k Internetu nepotřebuje a nepotřebuje ani lokální server. Je to interpretr jako každý jiný.
Konzolové aplikace v Pythonu jedou bezvadně, kompilace do EXE je zbytečná. Na rozdíl od C# funguje interaktivně a má IDE, které se jmenuje IDLE. Jednoúčelové skripty se vůbec nemusí psát v žádném editoru, přímo se provádí.
Jo, ale musíš ho nainstalovat. To uživatel řešit nechce, hlavně ne začátečník, vynextí instalaci Visual Studia, napíše těch 5 řádků kódu a vyleze mu EXE, které pak funguje všude.
Pouzij python (na takovehle jednoduche veci se hodi) nebo c#. Jeste taky muzes javascript. U toho net neptrebujes a jede vsude
... a také třeba funguje všude špatně a koncový uživatel to nemá možnost opravit. Třeba když potřebuje změnit tabulku hodnocení. Ano, jde to dát do externí konfigurace, ale to se nám ten program začíná trochu prodlužovat.
Pokud nechceš instalovat, můžeš použít jazyk Lua. Neinstaluje se, je to jen jeden 150KB exe.
Ten Javascript je hodně dobrý nápad. Dá se to strčit do lokálního HTML a použít kdykoli.
Jo, v tom by to šlo hezky. Ale zas se musí učit html
To strčí jen do základní kostry HTML. Nic extra.
Ale mohla by to být hodně hezká aplikace. Nejprve by se zadávaly maximální body do seznamu. Pak by se do druhého sloupečku zadaly skutečné body od každé úlohy. Po napsání posledního údaje by se výsledek vyhodnotil jak na procenta, tak i na známku. Vše by se jen budovalo v DOMu, nikam by se nemuselo nic ukládat.
Také by se to dalo transponovat. Jeden řádek, jeden žák. Jeden sloupeček jedna úloha. Na konci řádku počet bodů, procento a známka. Pak už jen vytisknut. Seznam žáků by mohl být trvalý pro každou třídu, napevno v HTML.
když budeme brát možnosti jen pro offline tak si můžeš si udělat :
jako desktop či web aplikaci si uděláš
něco kam vepíšeš maximální body a %ta na dané známky ...
potom můžeš udělat něco kam zadáš body žáka a ono ti to vyhodí známku
...
v konzoli si uděláš abys po zapnutí vložil max. body, %ta na známky a pak jen v cyklu vkládáš body žáků ..
je to prográmek tak na 10 minut
Z toho co psal jsem pochopil, že potřebuje jenom jednoduchý výpočet, žádné řetězce ani pole či seznamy. To se dá v C napsat na pár řádků v jednom souboru, který jednoduše zkompiluje. Proč kvůli tomu stahovat a instalovat visual studio a zakládat celý projekt (v C# tuším samotný soubor zkompilovat nejde)? Pravděpodobně to není žádný programátor, pouze potřebuje napsat tenhle jednoduchý prográmek. V Dev-Cpp to má i se stažením, nainstalováním, vytvořením souboru, napsáním programu a zkompilováním za 10 minut.
V Javascriptu to nemusí být jen jako webová aplikace. Ten soubor HTML může mít uložený třeba na ploše. Poklikáním se spustí prohlížeč s úlohou. Jednoduché, prosté, účinné.
Kdysi jsem si napsal jednoduché RPG v Javascriptu. Vše mám v jediném souboru HTML, který mohu uložit kamkoli.
Céčko ne. Dá se v něm nasekat spousta chyb, které kompilátor neodhalí a způsobují těžké noční můry. To už raději Fortran. Ten je na to stavěný mnohem lépe a výsledek je také EXE srovnatelné velikosti.
Mimochodem, já osobně bych v C nic většího psát nechtěl, musí to být nehorázná otrava, ale nemyslím si, že patří do muzea. Možná co se Windows týká, ale pokud vím, tak pod Linuxem se v C pořád docela běžně programuje a spousta programátorů ho preferuje před C++, protože je podle nich "čistší".
V tak jednoduchém programu jako je tohle se moc chyb nasekat nedá, ale dobře, když ne C, tak něco jiného co se dá snadno nainstalovat a zkompilovat, třeba i Java když na to přijde, ale to zas bude muset mít všude nainstalovanou Javu. Rozhodně ne C#, kde jenom aby mohl začít něco tvořit, musí stahovat a instalovat IDE které má přes GB. Pořád ale beru v úvahu že potřebuje jenom napsat tenhle jednoduchý prográmek a dál se programování nehodlá věnovat.
Céčko do muzea nepatří. Jenom se na úlohy tohoto typu moc nehodí, protože bez důsledného testování se na výsledek nedá spolehnout. Pole indexovaná od nuly jsou také omezující a přitom se dá snadno zapsat i mimo ně. O pointrech nemluvě, s těmi si programátor může dělat co chce, tedy i pořádnou paseku.
Raději Fortran než C++. Dělá se v něm lépe, na drcení čísel neznám
nic lepšího. Tedy kromě programů napsaných ve Fortranu
Však Javascript je všude a pro tento účel je naprosto vyhovující.
Fortran patří do muzeí a možná na superpočítače
Zdá se, že jsi Fortran viděl jen z dálky. C++ ani neumí vynásobit pole konstantou. Vše musíš programovat.
Když se nám tu rozjela taková obecná diskuze o jazycích, nechi zakládat
nové vlákno, k čemu se používá jazyk F# ? A jen pro připomenutí, kdysi
jsem navrhoval potom tyto dikuze házet do jednoho vlákna, které tu už
existuje, ale co
10000 bodů pro tebe ! Máš pravdu Sice proč si nenaprogramovat něco svýho ale bylo by to takový
jednoduchý, v Excelu si to může paní učitelka pěkně seřadit, vypisovat,
počítat... tak co řešíme ?
Každý jazyk umí jen určité věci a zbytek musíš programovat...
Vzhledem k tomu, že to (pokud se nepletu) neumí ani C++, ani Java, ani C#, ani PHP, ani žádný jiný jazyk, který znám, tak to asi nebude tak často používaná funkcionalita, jak je na tom Fortran třeba s GUI? Nebo umí jen konzoli?
Pak tu mam jeste radu pro tebe, kdyz uz sis napsal ten batch soubor. Nemusis to vypisovat. Staci pouzit <, > mozna ze v batchi to ma nejaka jina klicova slova.
OMG. Když to schrnu, tak mam vyzkoušet všechno. Někdo něco navrhne, jinej to popře, navrhne něco jinýho, to zas popře někdo jinej a tak dal.
Bud použij jeden z jmenovaných, doporučuju C# nebo javu, myslím že se to
naučíš rychleji než C (ale nevím) a nebo prostě Excel
V Batchi tuším
menší než je LSS
a větší než je GTR
Nepřesnost / desetinná čísla bych řešil tak, že bych si na začátku
žádaná čísla vynasobil např. stem a výsledek na konci vydělil respektive
oddělil tečkou desetinnou část.
Doufám, že jsem to popsal srozumitelně.
jestli umíš HTML,CSS,JS tak to udělej v tom, jestli umíš C#,Javu atp.
tak to udělej v tom
udělej to prostě v tom co umíš ..
ve všem se dá takovýto program napsat
Jak tak koukám na tuhle diskuzi, tak vidím, že každý tu doporučuje jen ten svůj jazyk, který umí nejlíp a denně s ním dělá. A vůbec se nezamyslí nad tím, co by bylo pro tento případ opravdu efektivní, rychlé a pro někoho kdo asi moc neprogramuje snadno naučitelné.
Takže já doporučuju neučit se nějaké jazyky (Java, C#, apod.) a pro takovéto počítání použít excel, kde bude tabulka do které se zadají body každého žáka, výsledek se automaticky vypočítá a poté může i vytisknou.
Násobení pole skalárem nebo dalším polem se dělá ve Fortranu velmi často. Jak jinak bys chtěl dělat třeba neuronovou síť? I pouhé kopírování pole se třeba v Javě dělá cyklem, přitom je to běžná akce při práci s bitmapou.
GUI jsem ve Fortranu nehledal, ale určitě tam je. Tak jako C využívá knihoven napsaných ve Fortranu, může i Fortran využívat knihovny napsané v jiných jazycích.
Nejpraktičtější však bude využít nejsilnější stránky různých jazyků. Ve Fortranu napsat výpočetní jádro a v jiném jazyku (např. v Pythonu, Javě či C#) napsat k tomu GUI. Psát celou aplikaci v jednom jazyku není rozumné.
Jen tak pro zajímavost: PHP to umí, ale musíš si na to zavolat interní funkci. Python to umí nativně, i proto ho hodně matematiků a fyziků používá místo Fortranu. Kromě toho Fortran i Python umí nativně pracovat i s komplexními čísly.
Zobrazeno 50 zpráv z 62.