Java týden Java týden
Pouze tento týden sleva až 80 % na celý Java e-learning!
Brno? Vypsali jsme pro vás nové termíny školení OOP v Brně!

Cvičení k 3. lekci Javy

Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem.
Vydávání, hosting a aktualizace umožňují jeho sponzoři.

Následující 3 cvičení vám pomohou procvičit znalosti programování v Javě z minulé lekce. Ve vlastním zájmu se je pokuste vyřešit sami. Pod článkem máte pro kontrolu řešení ke stažení. Ale pozor, jakmile se na něj podíváte bez vyřešení příkladů, ztrácí pro vás cvičení smysl a nic se nenaučíte :)

Pokud si opravdu nebudete vědět rady, podívejte se raději znovu do minulého tutoriálu a pokuste se na to přijít.

Ohlasy studentů

Jednoduchý příklad

Vytvořte program, který si na vstupu nechá zadat jméno uživatele a poté jeho vlastnost. Nakonec vypíše "jméno je vlastnost", viz obrázek.

Ukázka obrazovky programu:

Vlastnosti
Ahoj, jak se jmenuješ?
Bill Gates
Jaký jsi?
hustodémonsky bohatý
Bill Gates je hustodémonsky bohatý

Středně pokročilý příklad

Vytvořte program, který si na vstupu vyžádá celé číslo a následně vypíše jeho druhou mocninu.

Ukázka obrazovky programu:

Mocnina
Zadej číslo k umocnění:
64
Výsledek: 4096

Pokročilý příklad

Vytvořte program, který si na vstupu vyžádá poloměr kruhu. Následně vypíše jeho obvod a obsah. Pro číslo Pí použijte hodnotu 3.1415, aby vyšel přesný výsledek.

Ukázka obrazovky programu:

Kruh
Zadej poloměr kruhu (cm):
12.1
Obvod zadaného kruhu je: 76.0243 cm
Jeho obsah je 459.94702 cm^2


 

Stáhnout

Staženo 3845x (51.3 kB)
Aplikace je včetně zdrojových kódů v jazyce java

 

 

Článek pro vás napsal David Čápka
Avatar
Jak se ti líbí článek?
84 hlasů
Autor pracuje jako softwarový architekt a pedagog na projektu ITnetwork.cz (a jeho zahraničních verzích). Velmi si váží svobody podnikání v naší zemi a věří, že když se člověk neštítí práce, tak dokáže úplně cokoli.
Unicorn College Autor sítě se informační technologie naučil na Unicorn College - prestižní soukromé vysoké škole IT a ekonomie.
Předchozí článek
Proměnné, typový systém a parsování
Všechny články v sekci
Základní konstrukce jazyka Java
Miniatura
Následující článek
Typový systém podruhé: Datové typy
Aktivity (10)

 

 

Komentáře

Avatar
Vanak
Člen
Avatar
Vanak:21.10.2013 13:34

Opravdu pěkné, že takto uděláš i cvičení, přesně tohle jsem potřeboval! Jinak je zajímavé, že mám dost rozlišné řešení, přičemž výsledek je stejný :D

Odpovědět 21.10.2013 13:34
Jaké si to člověk udělá, takové to také má.
Avatar
krwell
Člen
Avatar
krwell:22.10.2013 14:43

Paráda, s tím 3. příkladem jsem se trochu trápil, ale pak když jsem se podíval na Vzor, tak jsem pochopil, kde jsem dělal chybu. Zapomněl jsem totiž dát "Pí" jako desetinné číslo a proto mě to pořád házelo jinej výsledek. Díky za test :)

 
Odpovědět 22.10.2013 14:43
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Vanak
David Čápka:1.11.2013 15:29

Program jde udělat vždy více způsoby, i když u těhle prvních se toho zas tolik vymyslet nedá. Pokud to máš tedy jinak a funguje ti to správně, může to být v pořádku.

Odpovědět 1.11.2013 15:29
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Matěj Kripner
Redaktor
Avatar
Matěj Kripner:12.1.2014 16:39

Mám problém s otevřením aplikací. Ptá se mě to, přes co chci soubor otevřít, ale když zvolím Java SE, chce to Javu znova instalovat. Víte někdo co s tím? Díky za každou pomoc.

Odpovědět 12.1.2014 16:39
Give me a deep enough pipeline, and I shall move the world.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Matěj Kripner
David Čápka:12.1.2014 16:40

Pokud jsi četl alespoň 1. tutoriál tak víš v čem otevírat zdrojáky v Javě.

Odpovědět 12.1.2014 16:40
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Matěj Kripner
Redaktor
Avatar
Odpovídá na David Čápka
Matěj Kripner:13.1.2014 18:09

To jsem četl, ale moc dobře nechápu, jak Java Web Star funguje. Mohl by mi s tím, prosím, někdo pomoct?

Odpovědět 13.1.2014 18:09
Give me a deep enough pipeline, and I shall move the world.
Avatar
fudy
Člen
Avatar
fudy:19.1.2014 14:07

Ahoj,jsem tu nový a od včerejška se snažím zjistit co to obnáší programovat v Javě. Dnes jsem si udělal cvičení lekce3 a dost jsem se zapotil než jsem něco zplodil,ale funguje to. Registroval jsem se dnes aby mě nesvrběli prsty a nechtěl jsem jen opisovat. Pro pobavení posílám zdroják(udělal jsem jeden pro všechny,protože to prý jde :)) aby bylo vidět co se dá vytvořit z úplného nevědomí.

Odpovědět 19.1.2014 14:07
co tě nezabije to tě posílí
Avatar
Kit
Redaktor
Avatar
Odpovídá na fudy
Kit:19.1.2014 14:15

Zkus to uložit do "Vložení dlouhého zdrojáku".

Odpovědět 19.1.2014 14:15
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
fudy
Člen
Avatar
Odpovídá na Kit
fudy:19.1.2014 14:33

bohužel nevím jak mám vložit do dlouhého zdrojáku není tam navigace (přidat nebo procházet), pro úplnost z tohohle PC můžu jen na net a konec. programování zkouším na jiném PC, tady mám programování zakázané. pracoviště je pracoviště a nelze si tu dělat co chceš:)

Odpovědět 19.1.2014 14:33
co tě nezabije to tě posílí
Avatar
fudy
Člen
Avatar
Odpovídá na Kit
fudy:20.1.2014 10:42

doufám že to dnes vyjde a dostaneš ten zdroják

Odpovědět 20.1.2014 10:42
co tě nezabije to tě posílí
Avatar
Kit
Redaktor
Avatar
Odpovídá na fudy
Kit:20.1.2014 15:03

Můžeš ho také uložit na http://gist.github.com/ a sem dát jen odkaz.

Odpovědět 20.1.2014 15:03
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Rozzemak
Neregistrovaný
Avatar
Odpovídá na David Čápka
Rozzemak:17.2.2014 0:57

Použil jsem na ten 3 knihovnu math :D...vypadá to takhle....
System.out.prin­tln("Zadejte poloměr kruhu (cm)");
int a =Integer.parse­Int(sc.nextLi­ne());
System.out.prin­tln("Obsah kruhu je : " + ((Math.PI)aa)+ " cm*cm");
System.out.prin­tln("Obvod kruhu je : " + ((Math.PI2)a) +" cm*cm");
Zdálo se mi to jednodušší rovnou počítat v soutu.

 
Odpovědět 17.2.2014 0:57
Avatar
vrciak1
Člen
Avatar
Odpovídá na Rozzemak
vrciak1:3.4.2014 15:08

A podla mna aj menej prehladne.

 
Odpovědět 3.4.2014 15:08
Avatar
anticary
Člen
Avatar
anticary:7.4.2014 19:48

Potřeboval bych pomoct... v 2. a 3. cvičení napíšu kod podobně jako ty(ne že bych opisoval, ale už jsem byl bezradný) viz 1. obrázek a napíšemi to stejnou zprávu viz. 2. obrázek. V čem dělám chybu?

 
Odpovědět 7.4.2014 19:48
Avatar
tomisoka
Redaktor
Avatar
Odpovídá na anticary
tomisoka:7.4.2014 20:02

stačí pozorně číst chybu, má tam být "Windows-1250" ne "Windows 1250"

 
Odpovědět 7.4.2014 20:02
Avatar
anticary
Člen
Avatar
Odpovídá na tomisoka
anticary:10.4.2014 14:13

Díky moc :)

 
Odpovědět 10.4.2014 14:13
Avatar
Martin Krajči:3.7.2014 19:33

Veľmi pekne ďakujem za príklady :D hovorím si aké jednoduché a zrazu som asi pol hodinu nemohol spraviť 3. príklad .. nakoniec mi chýbalo "F" za 3.14 o_O

Odpovědět 3.7.2014 19:33
Nehovor svetu, čo chceš urobiť, ale urob to.
Avatar
pavness
Člen
Avatar
pavness:15.7.2014 17:43

System.out.prin­tln("Zde zadej poloměr (cm)");

float a = Float.parseFlo­at(sc.nextLine());
System.out.prin­tln("Obsah kruhu je " + a * a * 3.14 + " cm2");

napsal jsem to takhle funguje to jen chybí to F :D u každé konstanty se dopisuje jiné písmeno nebo jak to je?

 
Odpovědět 15.7.2014 17:43
Avatar
pavness
Člen
Avatar
Odpovídá na pavness
pavness:15.7.2014 18:14

už sem to pochopil je to v další kapitole :)

 
Odpovědět 15.7.2014 18:14
Avatar
PiskotPiskotovic
Redaktor
Avatar
Odpovídá na tomisoka
PiskotPiskotovic:27.7.2014 17:34

Já tam dávám UTF-8. Podporuje to i české znaky ;)

Odpovědět 27.7.2014 17:34
Error 404 - stránka motto.php nenalezena.
Avatar
David
Člen
Avatar
David:22.8.2014 8:02

Vyborne priklady, musim se pochvalit, zvladl jsem je docela rychle a vse funguje jak ma i bez stazeni napovedy, diky moc :)

 
Odpovědět 22.8.2014 8:02
Avatar
samuel.vain
Člen
Avatar
samuel.vain:15.11.2014 10:43

Zajímavé příklady. Obzvlášť pak ten třetí, který mi dal pěkně zabrat, protože jsem nevěděl, jak mám tomu počítači vysvětlit, že má ze stringu udělat float :D

 
Odpovědět 15.11.2014 10:43
Avatar
Tomáš Brůna
Redaktor
Avatar
Tomáš Brůna:15.11.2014 21:41

Ahoj
je mi 12 a matika mi moc nejde a zatím vše (sice s tezi) chápu, a hodně věcí jsme se ještě neučili a tak je moc nechápu (myslím vzorečky např.mocniny atd...) a tak nevím jestli nemám ještě chvíli počkat.

Odpovědět 15.11.2014 21:41
Vi veri universum vivus vici
Avatar
didoonly1999
Člen
Avatar
didoonly1999:24.12.2014 11:48

Zomňa asi programator nikdy nebude :(:(:D:D]:>:D

 
Odpovědět 24.12.2014 11:48
Avatar
butiduti
Člen
Avatar
Odpovídá na didoonly1999
butiduti:24.12.2014 12:16

S tímhle pravopisem a Windowsem XP ne ;)

 
Odpovědět 24.12.2014 12:16
Avatar
butiduti
Člen
Avatar
Odpovídá na butiduti
butiduti:24.12.2014 12:25

Tak pardon, měnuješ přece jen je :)

Ale ten Windows XP naprav. Dej si raději Linux Mint.

 
Odpovědět  +1 24.12.2014 12:25
Avatar
didoonly1999
Člen
Avatar
didoonly1999:24.12.2014 19:51

:X :X :X Aký pravopis prosím ťa .. Veď to je správne .. A áno skúšam to na starom pc pretože sa nám ten nový pokazil ,no ale to hádam nebude problém na akom OS používam však ten program pracuje rovnako aj môžem zadávať aj tie isté príkazy veď to nič nezmení ....

 
Odpovědět 24.12.2014 19:51
Avatar
didoonly1999
Člen
Avatar
didoonly1999:24.12.2014 19:57

Tu ide iba o to že som to zjavne nepochopil asi potrebujem ešte nejaký základ ... ale **aký **? Čo by som sa mal ešte *predtým **naučiť *aby som s týmto začal ? :`

 
Odpovědět 24.12.2014 19:57
Avatar
charliho
Člen
Avatar
charliho:3.1.2015 10:57

Super příklady, hodně pomohly... zvládnuté i bez nápovědy ;) poslední byl trošku težší :D ale pomocí Math.PI je vše vyřešeno :D díkys :)

Editováno 3.1.2015 10:58
 
Odpovědět 3.1.2015 10:57
Avatar
Petr Ehrlich
Člen
Avatar
Petr Ehrlich:17.1.2015 15:54

Ty jo, tak z toho jsem trochu mimo. :) Ale když přemýšlím, tak nakonec to tam nějak dostanu. Hlavní je zkoušet a ono to půjde :) Jinak perfektní stránky, tady jsem se rozhodl naučit se programovat... :)

 
Odpovědět 17.1.2015 15:54
Avatar
lavaccaf
Člen
Avatar
lavaccaf:28.1.2015 18:45

Po 20 minutách nechápavého hledání chyby v kódu jsem dospěl k názoru, že se nemá cenu nervovat a tak jsem si stáhl cvičení..

Proč je a2 chyba? Excel to chápe.. Až budu třeba chtít mocninu na osmou tak budu muset napsat a * a * a * a * a * a * a * a ? Není cílem programátorů dělat věci co nejjednodušeji?

System.out.prin­tln("Zadej číslo k umocnění:");
String cislo = sc.nextLine();
int a = Integer.parse­Int(cislo);
a = a ^ 2;
System.out.prin­tln(a);

Editováno 28.1.2015 18:46
 
Odpovědět 28.1.2015 18:45
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na lavaccaf
Jan Vargovský:28.1.2015 18:48
https://docs.oracle.com/javase/6/docs/api/java/lang/Math.html#pow(double, double)

operator ^ je XOR (bitové operace).

 
Odpovědět 28.1.2015 18:48
Avatar
Jan Eschner
Člen
Avatar
Jan Eschner:3.2.2015 11:17

Děkuji za tyto tutoriály. Chci se naučit programovat a živit se tím. Zatím se ve volném čase věnuji pouze 3D grafice. Nejvíce mi dal zabrat příklad č 2 protože jsem to chtěl vyřešit jinak, než pomocí a * a. Honza

 
Odpovědět 3.2.2015 11:17
Avatar
skimiwriter
Člen
Avatar
skimiwriter:11.4.2015 23:39

Zdravím, dost mi to pomohlo. Ale ten 3 úkol jsem nedal.:(( Tak jsem si to stáhl mrknul se na to a zkusil to sám.
No pořád jsem měl chybu v 12-tým řádku. Až jsem si je musel zkopirovat pod sebe. Tak ještě asi 2 minutky jsem na to koukal a pak jsem na to přišel chyba byla tady :

float o = 2 * 3,14 * r namísto float o = 2 * 3.14 * r .... čárka XD

 
Odpovědět 11.4.2015 23:39
Avatar
Pavol Kubek
Člen
Avatar
Pavol Kubek:26.4.2015 11:17

15 minút som sa trápil s posledným cvičením, napoly rozhodnutý prezrieť si hotový kód som skúsil posledný pokus a chvalabohu mi to prešlo. Robil som chybu, že som si hodnotu pi nenahodil samotne cez nový float, ale pri vytváraní floatu hotového výpočtu polomeru, som namiesto floatu "pi" nahadzoval 3,14 a dúfal som, že to java vypočíta. Očividne nie :) Ale fajn, nabudúce už takú chybu nespravím.

 
Odpovědět  +1 26.4.2015 11:17
Avatar
Vojtěch Balog:10.7.2015 12:51

Ahoj, tak sem to dal bez nápovědy, ale dávání tečky místo čárky je pro mě zatím největší háček :D Jen víc takovýchto cvičení. Nevím čím to je, ale už teď mohu říci, že mám Javu raději než C :D

 
Odpovědět 10.7.2015 12:51
Avatar
slavo
Člen
Avatar
slavo:2.9.2015 18:19

ja mam problem s tym druhym a tretim som teraz osmak a nwm aj ked si to stiahnem nepomoze mi to potrebuem take lahsie vysvetlenie diki za odpoved

 
Odpovědět 2.9.2015 18:19
Avatar
Milan1993
Člen
Avatar
Milan1993:26.9.2015 15:51

Cvičenie zvládnuté bez nápovedy. Treba sa zoznámiť s Math.Pi a Math.pow

 
Odpovědět 26.9.2015 15:51
Avatar
Ondřej Světlík:3.10.2015 13:20

Tak třetí úkol jsem nejdřív vyřešil pomocí double a Math.PI. Výsledek byl ovšem přesnější. Bylo mi jasné, že je to tím, že se ještě neučilo double a autor použil float a 3.14... Tak jsem to zkoušel s float a po chvíli jsem si musel vyhledat, že float mi nevezme 3.14 bez Fka. Nakonec jsem se dopracoval k tomuto: "float obsah = 3.14F * (polomer * polomer);". K mému údivu i to nebylo naprosto shodné. Stáhl jsem autorovu verzi a jeho zápis byl následující: "float obsah = 3.14F * polomer * polomer;". Tři správné řešení, každé s jiným výsledkem...

 
Odpovědět 3.10.2015 13:20
Avatar
Honza
Člen
Avatar
Odpovídá na Ondřej Světlík
Honza:14.10.2015 12:19

Musím se přiznat, že na "F" za 3.14 jsem docela zapoměl. Ale nakonec se mi to povedlo i třetím způsobem:
" float obsah = (float) (3.14 * r * r); " Je to sice trošku krkolomější, ale taky způsob jak program zprovoznit. :D

 
Odpovědět  +2 14.10.2015 12:19
Avatar
Josef Točoň:15.10.2015 18:35

Zdravím všechny, to třetí cvičení pro mě bylo také náročnější. Hlavně z důvodu , že jsem chtěl použít pí a ne pouze 3,14 . Dalo mi to zabrat (hledání Math.PI a jak k němu dát float) . Každopádně si to aspoň zapamatuju :-D . Např. vzorec na obvod dopadl takhle : float obvod = (float) (2 * Math.PI * a) ;
Jinak Děkuji autorovi celkově za tyto turtoriály a cvičení.

Editováno 15.10.2015 18:36
 
Odpovědět  +1 15.10.2015 18:35
Avatar
Katarína Blashco:23.10.2015 13:13

Ahojte, chcela by som sa popýtať, ako mám správne zapísať príkaz pre vloženie druhej odpovede v prvej úlohe? :-S Cez ďalší vstup to už nefunguje
Ďakujem vopred za odpoveď :-)

 
Odpovědět 23.10.2015 13:13
Avatar
tomass
Člen
Avatar
tomass:23.10.2015 14:17

Ty si do promenne vstup ulozis jen jednou bil gates a pak to tam 2x vypises. Takze musis pridat jeste jeden scanner, nejspis s novou promennou, takze treba:

vstup2 = sc.nextLine();

a pak to dat do vypisu

vstup+ .... +vstup2

Ted nemam po ruce net beans abych to vyzkousel, ale melo by to tak myslim byt. ;-)

 
Odpovědět 23.10.2015 14:17
Avatar
Odpovídá na tomass
Katarína Blashco:23.10.2015 20:11

tomass:
:-D Áno presne takto to funguje, Ďakujem veľmi pekne za pomoc :) Si super :-)

 
Odpovědět 23.10.2015 20:11
Avatar
Lukáš Solis:24.11.2015 10:36

Ahojte, mal by som taký dotaz. U 3. príkladu som použil takéto riešenie:

System.out.println("Zadej poloměr kruhu (cm):");
        float r = Float.parseFloat(sc.nextLine());

        String obvod, obsah;
        obvod="Obvod zadaného kruhu je: "+2*3.14F*r+" cm";
        obsah="Jeho obsah je: "+3.14F*r*r+" cm^2";

        System.out.println(obvod);
        System.out.println(obsah);

Program fungoval ako má, ale na overenie som si nakoniec stiahol aj tie výsledky, aby som si overil, či som to robil správne alebo podobne. Výsledky sú úplne rovnaké, ale ako možete vidieť, štruktúra je úplne iná. Chcel som sa teda spýtať aké sú nevýhody alebo možno aj výhody mojho riešenia; je dobré riešiť výpočet priamo v stringu...?
Ďakujem

 
Odpovědět 24.11.2015 10:36
Avatar
pocitac770
Redaktor
Avatar
Odpovídá na Lukáš Solis
pocitac770:24.11.2015 12:51

V takovýchto primitivních prográmcích je to celkem jedno. Ale představ si, že by jsi pracoval na něčem mnohem větším. Tam by jsi třeba potřeboval jednu hodnotu vícekrát použít, takže se místo neustálého přepočítávání hodí použít proměnnou, kam bys onu hodnotu uložil. Ale samozřejmě, např. Toto by nenapsal nikdo, když to jde jednoduše, tak proč ne? :D

// výpočet příkladu "1+2+3+4+5+6+7+8+9"
int i1 = 1;
int i2 = i1 + 2;
int i3 = i2 + 3;
int i4 = i3 + 4;
.....
System.out.println(i9);
Editováno 24.11.2015 12:52
 
Odpovědět 24.11.2015 12:51
Avatar
pocitac770
Redaktor
Avatar
Odpovídá na pocitac770
pocitac770:24.11.2015 13:40

U tvého řešení je ten problém, že je to něco mezi, tzn ano, můžeš to znovu použít, ale jen jako kompletní text, ne jako hodnoty, což je v programování docela nevýhodné.

 
Odpovědět 24.11.2015 13:40
Avatar
Lukáš Solis:25.11.2015 12:31

Aha jasné. Ďakujem :)

 
Odpovědět 25.11.2015 12:31
Avatar
Honza Adamec
Člen
Avatar
Honza Adamec:29.11.2015 21:11

Kdyby jsem dal za 3,14...F tak bych to měl bez chybičky. :-P

 
Odpovědět 29.11.2015 21:11
Avatar
LoLman
Člen
Avatar
LoLman:11.12.2015 17:29

Ja som to robil takto a vyšlo mi to :-)

 
Odpovědět 11.12.2015 17:29
Avatar
Marek Šimon
Člen
Avatar
Marek Šimon:11.12.2015 23:19

Toto je kod stiahnuty z toho .zip co tu poslal David

import java.util.Scanner;

public class Kruh {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in, "Windows-1250");
        System.out.println("Zadej poloměr kruhu (cm): ");
        float r = Float.parseFloat(sc.nextLine());
        float o = 2 * 3.14F * r;
        float s = 3.14F * r * r;
        System.out.println("Obvod zadaného kruhu je: " + o + " cm");
        System.out.println("Jeho obsah je " + s + " cm^2");

A toto je moj kod. IDE mi hadze chybu pri deklarovani "o" a "s" a vyhadzuje mi chybu, ze pisem float a ocakava sa double. S double funguje bez problemov. Ale ked dam float, tak tam musim do hodnoty udat aj to (float).

import java.util.Scanner;

public class Cvicenie1 {

    public static void main(String[] args) {

        /* Aplikacia na vypocet obsahu a obvodu kruznice pri zadani jeho polomeru */

        Scanner sc = new Scanner(System.in, "Windows-1250");
        System.out.println("Zadaj polomer kruznice");
        float r = Float.parseFloat(sc.nextLine());
        float o = (float) Math.PI * r * 2;
        float s = (float) (Math.PI * r * r);

        System.out.println("Obvod kruznice je: " + o);
        System.out.println("Obsah kruznice je: " + s);

Neviete preco to tak je? Proste nevidim rozdiel a predsa to nefunguje.

 
Odpovědět 11.12.2015 23:19
Avatar
tomisoka
Redaktor
Avatar
Odpovídá na Marek Šimon
tomisoka:11.12.2015 23:26

Math.PI je double, zatímco 3.14F je float. To je ten rozdíl.

 
Odpovědět  +1 11.12.2015 23:26
Avatar
Martin Abdul
Člen
Avatar
Martin Abdul:7.1.2016 0:21

taky jde..

 
Odpovědět 7.1.2016 0:21
Avatar
skatech77
Člen
Avatar
skatech77:9.2.2016 19:37

Jak to vypada ? urcite by to slo zkratit :D

Odpovědět 9.2.2016 19:37
Valar Morghulis
Avatar
pocitac770
Redaktor
Avatar
Odpovídá na skatech77
pocitac770:9.2.2016 22:21

2 připomínky:

  1. Když už jednou píšeš hodnotu Pi do proměnné (použiješ ji 2x, tak ok, dáš si ji někam stranou, to bych pochopil), tak proč ji jednou použiješ přes odkaz na proměnnou, a jindy zase použiješ rovnou hodnotu? Představ si, že by sis řekl, že to Pí chceš zpřesnit (třeba si vzpomeneš na 3,14159), a budeš ji muset přepisovat na dvou místech...
  2. Proč vytváříš zbytečně další proměnnou "r", když tam akorát překopíruješ hodnotu z "a"? Pokud jsi to myslel, aby jsi to mohl použít vícekrát ve výpočtu obsahu kruhu, tak ano, tohle jde napsat :D:
float obsah = a * a * pi;

Teď se tyhle "drobnosti" zdají zbytečné, vždyť je to jenom pár znaků navíc.... ale představ si, že bys měl projekt na 400 řádků, a použil by jsi tam ten poloměr/hodnotu Pí třeba 20x. Neber to jako hate, pouze jako tip na zlepšení do budoucna :)
A pokud by jsi chtěl maximální zkrácení, tak můžeš ten výpočet obvodu a obsahu psát už do výpisu do konzole ;)

Editováno 9.2.2016 22:21
 
Odpovědět  +1 9.2.2016 22:21
Avatar
Jakub Pokorný:16.2.2016 0:31

Zdravim. . koukám že je tu mnoho vynalézavých lidí. Každopádně díky za tip. Všechny 3 zadání jsem nakonec dokončil - potřeboval jsem sice trochu času ale vyšlo to.

Díky

 
Odpovědět 16.2.2016 0:31
Avatar
Tomáš Malý:18.2.2016 20:17

Já raději používám double, je to přesnější a jednodušší na zápis.

import java.util.Scanner;

public class Kruh {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.println("Zadej poloměr kruhu: ");
        double polomer = Double.parseDouble(sc.nextLine());

        double obvod = 2 * Math.PI * polomer;
        double obsah = Math.PI * (Math.pow(polomer, 2));

        System.out.println("Obvod je: " + obvod);
        System.out.println("Obsah je: " + obsah);
 
Odpovědět 18.2.2016 20:17
Avatar
Xao Xixi
Člen
Avatar
Xao Xixi:8.3.2016 23:53

No koukám že tady to zkoušejí zjevně i pokročilý :-)
Mi začátečníci co jedou postupně to bez znalosti dalších možností napsali

System.out.println("zadej polomer kruhu v cm");
       float r = Float.parseFloat(sc.nextLine());
       float obvod = 2 * 3.14F * r;
       float obsah = 3.14F * r * r;
       System.out.println("obvod je " + obvod + "cm");
       System.out.println("obsah je " + obsah + "cm ctverecnich");

ale je dobré číst vaše komentáře, uvědomil jsem si jak to zkracovat, proč si definovat radši věci něž je v delších programech přepisovat na 20 místech - jen tak dál
Akorát budu hledat asi seznam příkazů co se dají použít - zatím mám začátečnický elán - už se tomu věnuju celých 5 hodin :-) :-)

 
Odpovědět 8.3.2016 23:53
Avatar
veselyjan96
Člen
Avatar
veselyjan96:11.3.2016 22:56

Můžu se zeptat v čem je výhoda parsování namísto napsání rovnou sc.nextFloat(); ? Díky za odpoved :)

 
Odpovědět 11.3.2016 22:56
Avatar
Michal Huff
Člen
Avatar
Odpovídá na pocitac770
Michal Huff:29.3.2016 16:45

pokud chceš hodnotu pí, můžeš použít Math.PI

 
Odpovědět 29.3.2016 16:45
Avatar
pocitac770
Redaktor
Avatar
Odpovídá na Michal Huff
pocitac770:30.3.2016 3:24

Narozdíl od ostatních zde to beru vzhledem k jejich úrovni kam až se dostali, a myslím, že kromě komentářů zde nikde doposud nebyla zmínka o matematické knihovně Math

Editováno 30.3.2016 3:25
 
Odpovědět 30.3.2016 3:24
Avatar
Bob Fox
Člen
Avatar
Bob Fox:1.4.2016 23:19

Výborná cvičeníčka. Bystří mozkové závity a na procvičení probraného, super. Díky!!!!!!!!!!!!!!

 
Odpovědět  +1 1.4.2016 23:19
Avatar
Lukáš Fuček:30.4.2016 11:24

trochu inak ja mam v jave uz nejake kniznice zo skoly

 
Odpovědět 30.4.2016 11:24
Avatar
NunuKrysa
Člen
Avatar
NunuKrysa:11.7.2016 21:03

Ahoj, poradíte, čo je zle ? Díky :)

 
Odpovědět 11.7.2016 21:03
Avatar
Erik Báča
Člen
Avatar
Odpovídá na NunuKrysa
Erik Báča:11.7.2016 21:05

Přečti si tu chybu, nemůžeš mít:

"windows - 1250"

je to bez mezer:

"windows-1250"
Odpovědět 11.7.2016 21:05
Když mi dáš mínus, napiš proč!
Avatar
NunuKrysa
Člen
Avatar
Odpovídá na Erik Báča
NunuKrysa:11.7.2016 21:14

Jo díky :)

 
Odpovědět 11.7.2016 21:14
Avatar
jirkajandourek:22.7.2016 11:56

Já jsem zapoměl na F dávejte si na to pozor !!!
c = 2x3.14Fxa;

Editováno 22.7.2016 11:57
 
Odpovědět 22.7.2016 11:56
Avatar
Petr Mezera
Člen
Avatar
Petr Mezera:3.10.2016 17:36

Moc pěkný cvičení, mám nějaké základy v C#, ale víc mě láka Java.

U třetího cvičení bych se chtěl zeptat, proč při použití "float", mi řádek s "Math.pow" program nebere, ikdyž mám "F" za 3,14, ale při požití double je program bez chyby, ikdyž "F" u čísla není?

Scanner sc = new Scanner(System.in, "windows-1250");

        System.out.println("Zadej poloměr kruhu (cm)");
        float a = Float.parseFloat(sc.nextLine());
        float b, c;
        b = 2 * a * 3.14F;
        c = (Math.pow(a, 2)) * 3.14F;
        System.out.println("Obvod kruhu je: " + b + " a obsah je: " + c);

a

Scanner sc = new Scanner(System.in, "windows-1250");

        System.out.println("Zadej poloměr kruhu (cm)");
        float a = Float.parseFloat(sc.nextLine());
        double b, c;
        b = 2 * a * 3.14;
        c = (Math.pow(a, 2)) * 3.14;
        System.out.println("Obvod kruhu je: " + b + " a obsah je: " + c);

Děkuji.

Editováno 3.10.2016 17:37
 
Odpovědět 3.10.2016 17:36
Avatar
Milan Čech
Člen
Avatar
Milan Čech:20.1.2017 14:32

Ahoj, tak se mi podařil vyřešit první příklad, akorát nevím, jestli by to nešlo udělat trochu jednodušší :-P
Ale i tak mám radost.

 
Odpovědět 20.1.2017 14:32
Avatar
Martin Nebesář:31.1.2017 19:10

Prvni dva priklady jsem mel oba dva hotove velmi rychle s minimalnim nahledem do predchozich lekci. Treti je mnohonasobne tezsi. Uz na nem visim pres hodinu a nic.

 
Odpovědět 31.1.2017 19:10
Avatar
Odpovídá na Martin Nebesář
Neaktivní uživatel:31.1.2017 21:39

Co přesně ti nejde?

Pí můžeš zapsat jako Math.PI a mocninu jako Math.pow(číslo, na kolikátou).

Odpovědět 31.1.2017 21:39
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Martin Nebesář:31.1.2017 22:00

https://www.dropbox.com/…21.57.37.png?dl=0

Nakonec jsem to vyresil takto a vysledky odpovidaji. Nejsem jisty, jestli jde o nejspravnejsi postup.

 
Odpovědět 31.1.2017 22:00
Avatar
Odpovídá na Martin Nebesář
Neaktivní uživatel:31.1.2017 22:09

Co třeba tohle?

System.out.println("Obvod kruhu je: " + 2 * Math.PI * polomerKruhu);
Odpovědět 31.1.2017 22:09
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Martin Nebesář:2.2.2017 16:43

Pokud mate na mysli vymenit vami uvedeny radek za me dva posledni, pak priklad hlasi chybu.

Editováno 2.2.2017 16:43
 
Odpovědět 2.2.2017 16:43
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Martin Nebesář
vajkuba1234:2.2.2017 17:19

Nevime jakou chybu. Urcite bych ale pouzil Math.Pi nez nejake 3.14, coz pi ani neni.

Odpovědět  +1 2.2.2017 17:19
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
Odpovídá na vajkuba1234
Martin Nebesář:2.2.2017 19:16

Dekuji mockrat, Math.PI mi hlasila chybu a zbytecne jsem se ji bal kvuli jine chybe. Nyni jsem ve stejne situaci, jako kolega Petr Mezera o par prispevku vys. Prvni odkaz je s uzitim double v poradku, ale ve druhem na me po pouziti float u "b" a "c" program hulaka, ze je problem v konverzi double - float. V cem delam chybu?

https://www.dropbox.com/…19.07.47.png?dl=0

https://www.dropbox.com/…19.08.15.png?dl=0

 
Odpovědět 2.2.2017 19:16
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Martin Nebesář
vajkuba1234:2.2.2017 20:28

V tom, ze Math.PI vraci double. Pouzij double. A taky radeji vkladej kod do code, coz je tato znacka </> v editoru.

Odpovědět 2.2.2017 20:28
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
Jaro Rybar
Člen
Avatar
Jaro Rybar:4.2.2017 22:00

super cvičenie, prinúti rozmýšlať

 
Odpovědět 4.2.2017 22:00
Avatar
Honza Koháček:23.2.2017 23:26

Díky za cvičení. Zásek na suffixu F. Ale vyřešeno.

 
Odpovědět 23.2.2017 23:26
Avatar
Kristina Trojáková:21.5.2017 16:04

Pomáhala jsem si nahlížením do předchozích lekcí, ale stejně mi celé cvičení zabralo přes dvě hodiny především kvůli mojí blbosti. Největším zásekem se pro mě stal druhý příklad kvůli tomu, že jsem četla komentáře kdy mě zmátlo použití Math. Po stažení řešení, kde Math není použit, jsem se chytla a poslední příklad jsem měla hned hotový.

 
Odpovědět 21.5.2017 16:04
Avatar
Alena Hnátová:6.6.2017 13:59

Ahoj lidi,

zkouším druhý příklad - jasný na to, jak vyrobit mocninu jsem přišla, ale používám EclipseChe v Codenvy, protože v práci nemůžu nainstalovat JDK, takže dělám online. U řádku se Scanner sc = new ... atd... mi Eclipse hlásí "Resource leak:'sc' is never closed. Googlila jsem, na SO jsem našla cosi o try-catch s tím, že se metoda .in musí uzavřít, není mi jasné ale jak. Někdo poradí? :-)

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Napište celé číslo:");
int vstup = Integer.parse­Int(sc.nextLi­ne());
int vystup = vstup * vstup;
System.out.prin­tln(vystup);
}
}

Odpovědět 6.6.2017 13:59
Miřte na Měsíc. To nejhorší, co se Vám může stát, je, že přistanete mezi hvězdami.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Alena Hnátová
David Čápka:6.6.2017 14:23

Ahoj Aleno, hlásí to jako kompilační chybu? Může to hlásit jako warning, ale tady nedává smysl System.in zavírat, jelikož to je systémový stream. Abys to umlčela, můžeš použít tzv. TWR blok (viz dále sekce Práce se soubory v Javě):

try (Scanner sc = new Scanner(System.in, "Windows-1250")) {
        // Sem dáš zbytek kódu aplikace co scanner používá
}

Jinak online kompilátory máš již i přímo v článcích na ITnetworku, nemusíš používat něco externího :)

Editováno 6.6.2017 14:32
Odpovědět 6.6.2017 14:23
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Patrik Holubář:14.7.2017 9:42

Skvělý cvičení.
Ale dopídit se, proč Float.parseFloat trvalo.

 
Odpovědět 14.7.2017 9:42
Avatar
Michal Stisek:23.7.2017 19:47

Mám velkou radost, že jsem po přečtení prvních 3 článků dokázal vytvořit programy k cvičení bez nápovědy. Teda jednu jsem dostal, jaký je vzorec na obvod kruhu už mi od školy vypadl a tak mi poradila přítelkyně :-D Opět díky za článek!

Odpovědět  +1 23.7.2017 19:47
Jít pořád dál má smysl
Avatar
Mango
Redaktor
Avatar
Mango:26.7.2017 12:05

https://gist.github.com/…a9b7c69e4e7f
Hotové lehké cvičení na netu

Odpovědět 26.7.2017 12:05
Nezáleží na věku ale na vědomostech ;D
Avatar
Odpovídá na Jan Eschner
Rico ThreeDmax:12.8.2017 13:16

Cau jeste se odsud ucis? Me takybavi 3d grafika delal sem v maxu.

 
Odpovědět 12.8.2017 13:16
Avatar
Radka Jánská:23.8.2017 15:21

Ahoj. Skvělé cvičení, druhý úkol jsem si udělala i pro int i pro float, což mi neočekávaně pomohlo pro třetí cvičení. Vycházela jsem z toho, že když není "zadejte celé číslo", tak jsem automaticky použila typ float. :-) Jediné, na čem jsem se chvilku zasekla byl suffix u pí (3.14F). Nelze nějak přímo do jazyka zapsat pí, aby nedocházelo k zaokrouhlení?

Co mne ještě zaujalo, že u float mi to výsledky zaokrouhluje trochu jinak, než jak je to vidět tady na webu. Nevíte někdo, jak je to možné? Díky.

 
Odpovědět 23.8.2017 15:21
Avatar
Odpovídá na Radka Jánská
Michal Stisek:23.8.2017 15:51

Vypocet zavisi na tom, jak presne pi zadavas. Pokud jsi mela 3.14 pak je tam velka tolerance vysledku a muze vyhodit dost jiny vysledek nez v zadani. To resi pouziti tridy Math a na ni metody PI, v zapisu pro napr obvod 2Math.PIpolomer­Kruhu. Tato trida je ale na double, na floatu ti nepujde, je tudiz i presnejsi...

Editováno 23.8.2017 15:53
Odpovědět 23.8.2017 15:51
Jít pořád dál má smysl
Avatar
 
Odpovědět 23.8.2017 16:19
Avatar
Radek Dlesk
Člen
Avatar
Radek Dlesk:3.9.2017 10:53

Díky za úlohy, nezdály se mi těžké. Po absolvování předchozích lekcí jsem je je zvládnul víceméně bez váhání.

 
Odpovědět 3.9.2017 10:53
Avatar
Balogh Robert:5.9.2017 17:44

Ahoj David.
Je to takto správne k 3 príkladu?
Funguje to, ale má zajíma me názor odborníka.

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadejte polomer kruhu");
float a = Float.parseFlo­at(sc.nextLine());
float plocha = a * a * 314 / 100;
float obvod = 2 * a * 314 / 100;
System.out.prin­tln("Obvod kruhu je : " + obvod + " cm");
System.out.prin­tln("Plocha kruhu je : " + plocha + " cm2 ");

Dekuji

 
Odpovědět 5.9.2017 17:44
Avatar
Michal Potočiar:23.9.2017 17:48

Díky

Skvělý tutoriál.

Hned se vrhám na další lekce ;)

Moje verze:

System.out.prin­tln("Zadej poloměr kruhu: ");
Float r = Float.parseFlo­at(sc.nextLine());
float pi = 3.14F;
float O = 2 * pi * r;
float S = pi * r * r;
System.out.prin­tln("Obvod kruhu je: " + O + " cm");
System.out.prin­tln("Obsah kruhu je: " + S + " cm2");

 
Odpovědět 23.9.2017 17:48
Avatar
Bertram
Člen
Avatar
Odpovídá na Balogh Robert
Bertram:23.9.2017 20:46

Ahoj, proč používáš třídu Scanner, když nevyužíváš její metody?

 
Odpovědět 23.9.2017 20:46
Avatar
Abe
Člen
Avatar
Odpovídá na Bertram
Abe:24.9.2017 10:43

Vždyť tam pomocí Scanneru načítá poloměr kruhu:

float a = Float.parseFlo­at(sc.nextLine());

 
Odpovědět 24.9.2017 10:43
Avatar
Bertram
Člen
Avatar
Odpovídá na Abe
Bertram:24.9.2017 11:19

Ano, ale společně s obálkovým typem Float, který třída Scenner nepotřebuje, protože má mechanismus viz odkaz z předešlého komentáře. Také musíš psát čísla s desetinnou tečkou, ale nimerická klávesnice ti píše čárku.

public class ScannerDemo {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        float cislo;

        System.out.print("Zadej číslo: ");

        if (scanner.hasNextFloat()) {
            cislo = scanner.nextFloat();
             System.out.println("zadáno číslo: " + cislo);
        } else {
             System.out.println("Neplatný vstup.");
        }

        scanner.close();
    }
}
 
Odpovědět 24.9.2017 11:19
Avatar
Ondřej Seer
Člen
Avatar
Ondřej Seer:1.10.2017 17:32

Super cvičení, díky!

 
Odpovědět 1.10.2017 17:32
Avatar
Zuzana Šťastná:9.10.2017 1:57

Ahoj, taky moc děkuju! Bála jsem se, že budu mít problém s pochopením, když se budu učit sama, ale je to tu krásně vysvětlený, takže všechny tři cvíča splněný. :) Sice pomalu, nahlas jsem si pro sebe říkala co, jak a proč dělám, za to ale bez sebemenších problémů díky vašim návodům. Ještě jednou díky.

 
Odpovědět 9.10.2017 1:57
Avatar
Jan Kleveta
Člen
Avatar
Jan Kleveta:15.10.2017 3:27

Děkuji za cvičení, paráda (*_*)

 
Odpovědět 15.10.2017 3:27
Avatar
Vojtech Volprecht:6.11.2017 20:56

Bezva cvičení, super vysvětlení u všeho!!! :-)

 
Odpovědět 6.11.2017 20:56
Avatar
MiroslavP
Člen
Avatar
MiroslavP:9.11.2017 18:06

moc prima cvičení, bavím se :-)
děkuji

 
Odpovědět 9.11.2017 18:06
Avatar
Michal Málek:15.11.2017 11:04

ahoj může být ten 3. příklad vyřešená s datovým typem double?
public class priklad33 {

@SuppressWarnin­gs("resource")
public static void main(String[] args) {

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadej poloměr kruhu: ");
String s = sc.nextLine();
float a = Float.parseFlo­at(s);
double pi = 3.14;
double vysledek1 = 2 * pi * a;
double vysledek2 = pi * (a * a);
System.out.prin­tln("Obvod kruhu je: " + vysledek1 + "cm");
System.out.prin­tln("Povrch kruhu je: " + vysledek2 + "cm2");

 
Odpovědět 15.11.2017 11:04
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Michal Málek
David Čápka:15.11.2017 11:28

Určitě, ale dej si double i do proměnné a a místo Float.parseFloat() napiš Double.parseDouble() :P

Odpovědět 15.11.2017 11:28
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Jan Švarc
Člen
Avatar
Jan Švarc:26.11.2017 9:01

Děkuji za cvičení :)

 
Odpovědět 26.11.2017 9:01
Avatar
Lukas Knap
Člen
Avatar
Lukas Knap:19.12.2017 19:05

Super ... tak jsem se snažil vše pochopit. Včera jsem odcházel spát s tím, že tohle zadání bude velmi složité na 2.den
programování. Všichni tu řešíte druhý a třetí příklad, ale já nemůžu vyluštit co tam mám jak dosadit, aby mi to napsalo, že Bill je hustodémonsky bohatý :D (Snažím se přiřadit ke vstupu třeba číslo 1 a 2, aby to pak šlo dohromady, ale jen mi to zopakuje 2x to jaký jsem a nepřidá tam položku jména z prvního vstupu. :(

Odpovědět 19.12.2017 19:05
Pokud chceš změnu, musíš se změnit
Avatar
Kryštof Konečný:31.12.2017 12:44

Mockrát děkuji za cvičení i za vyuku. :)

 
Odpovědět 31.12.2017 12:44
Avatar
Odpovídá na Lukas Knap
Josef Pospíšil:6.1.2018 12:40

já to mám takhle a jde to dobře:

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Ahoj, jak se jmenuješ?");
String jmeno;
jmeno = sc.nextLine();
System.out.prin­tln("Jaký jsi?");
String charakter;
charakter = sc.nextLine();
System.out.prin­tln(jmeno + " je " + charakter);

 
Odpovědět 6.1.2018 12:40
Avatar
Josef Pospíšil:6.1.2018 12:42

Mám dotaz je lepší ten kód zkracovat jako je:
String jmeno = sc.nextLine();

Nebo je lepší to psát postupně, jako:
String jmeno;
jmeno = sc.nextLine();

Rád bych si to ujasnil hned od začátku, ať vím jak je lepší to zažívat.

 
Odpovědět 6.1.2018 12:42
Avatar
Martin Petrovaj
Překladatel
Avatar
Odpovídá na Josef Pospíšil
Martin Petrovaj:6.1.2018 18:11

Ahoj, toto je vo väčšine prípadov len otázka čitateľnosti a vkusu - pokiaľ sa dá riadok bez problémov ľudsky prečítať zľava doprava (napr. premenná jmeno typu String má hodnotu načítanú zo vstupu), tak na takomto kompaktnejšom zápise nie je nič zlé :-)

Keď už ale zistíš, že máš na jednom riadku nasúkaných 3, 4 a viac vecí, ktoré by sa dali zapísať aj osobitne, príp. veci ktoré napísané za sebou príliš veľký zmysel prirodzene nedávajú, tak už by som sa nad čitateľnosťou určite zamyslel.

Editováno 6.1.2018 18:12
Odpovědět 6.1.2018 18:11
if (this.motto == "") { throw new NotImplementedException(); }
Avatar
Tomáš Pekárek:16.1.2018 9:10

Tak já jsem se nekoukal na řešení, ale trošku jsem googloval a vyšlo mi toto:

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Ahoj jak se jmenuješ ?");
String jmeno = sc.nextLine();
System.out.prin­tln("Jaký jsi ?");
String jakyje = sc.nextLine();
System.out.prin­tln(jmeno + " je " + jakyje);

System.out.prin­tln("Zadej číslo k umocnění: ");
Float a = Float.parseFlo­at(sc.nextLine());
System.out.prin­tln(Math.pow(a,2));

System.out.prin­tln("Zadej poloměr kruhu: ");
Float b = Float.parseFlo­at(sc.nextLine());
System.out.prin­tln("Obvod kruhu je: " + 2 * Math.PI * b);
System.out.prin­tln("Obsah kruhu je: " + Math.PI * Math.pow(b,2));

Uvítám doporučení co a jak j blbě. Dík

 
Odpovědět 16.1.2018 9:10
Avatar
Mango
Redaktor
Avatar
Odpovědět 5.2.2018 20:57
Nezáleží na věku ale na vědomostech ;D
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Mango
Daniel Vítek:5.2.2018 21:36

Offtopic: Dole je čudlík "Máš dlouhý zdroják?" který tě přesměruje na náš dev-lighter, takže nemusíš chodit na jiný web abys mohl vložit zdroják :)

Odpovědět 5.2.2018 21:36
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Roman Konečný:8.2.2018 15:23

Tohle nechápu, měl jsem to stejně jak je to ve výsledku a nejde mi to (identifier expected) a když to zkopíruju z výsledků tak ačkoliv je to do puntíku stejné tak to funguje... několikrát jsem to kontroloval a fakt je to do písemene stejné.. čím to je?

 
Odpovědět 8.2.2018 15:23
Avatar
Odpovídá na Roman Konečný
Roman Konečný:8.2.2018 15:35

ok, už jsem to našel, je to čárka místo tečky :D

 
Odpovědět 8.2.2018 15:35
Avatar
Luke Streit
Člen
Avatar
Odpovídá na Tomáš Pekárek
Luke Streit:13.2.2018 11:39

Také jsem vyžil u umocňování a čísla pí knihovnu :) Hlavně u čísla pí je ten výsledek přesnější...

 
Odpovědět 13.2.2018 11:39
Avatar
MArtin
Člen
Avatar
MArtin:15.2.2018 16:05

Math som pouzil len na PI:

package onlineapp;

import java.util.Scanner;

public class MyApp {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in, "UTF-8");
        System.out.println("Zadaj polomer kruhu (cm)");

        double num = Double.parseDouble(sc.nextLine());

        System.out.println("Obvod zadaného kruhu je: " + String.format("%.5f", 2 * Math.PI * num) + "cm");
        System.out.println("Obsah zadaného kruhu je: " + String.format("%.5f", Math.PI * num * num) + "cm^2");
    }
}
 
Odpovědět 15.2.2018 16:05
Avatar
Nikolaj Mácha :16.2.2018 22:00

Ahoj všem ,já jsem ty příklady napsal tahle vše funguje.

package jaksejmenujes;
import java.util.Scanner;
/**
*
* @author nikol
*/
public class Jaksejmenujes {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Ahoj, jak jse jmenuješ ?");
String vstupa;
vstupa = sc.nextLine();
System.out.prin­tln("Jaký jsi ?");
String vstupb;
vstupb = sc.nextLine();
String vystup;
vystup = vstupa + " je " + vstupb + ".";
System.out.prin­tln(vystup);

}

}


package umocneni;
import java.util.Scanner;

/**
*
* @author nikol
*/
public class Umocneni {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadejte číslo k umocnení :");
String s = sc.nextLine();
int a = Integer.parse­Int(s);
a = a * a;
System.out.prin­tln("Výsledek : " + a);

}

}


package obvodaobsahkruhu;
import java.util.Scanner;
/**
*
* @author nikol
*/
public class Obvodaobsahkruhu {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadej poloměr kruhu v cm :");
float a = Float.parseFlo­at(sc.nextLine());
System.out.prin­tln("Obvod kruhu je :" + 2Math.PIa);
System.out.prin­tln("Obsah kruhu je :" + Math.PI(aa));

}

}

 
Odpovědět 16.2.2018 22:00
Avatar
Veronika Nováková:24.2.2018 21:40

ahojte, tak som uspesne dobojovala s tymito ulohami a hla, podarilo sa :)
snad mi niekto da vediet ohladom mojej otazky k mocninam. dovolila som si pouzit float namiesto int (tak ako je v ukazke), a vsetko funguje spravne. nerozmiem preco je nutne pouzit integer ked funguje aj float?

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadaj číslo k umocneniu:");
float a = Float.parseFloat (sc.nextLine());
float mocnina = a * a;
System.out.prin­tln("Výsledok: " + mocnina);
}

}

 
Odpovědět 24.2.2018 21:40
Avatar
Filip Gola
Člen
Avatar
Filip Gola:12.3.2018 22:29

import java.util.Scanner;
public class Mocniny {

public void umocni(){
System.out.prin­tln("Enter an integer number");
Scanner sc = new Scanner(System.in);
int x = Integer.parse­Int(sc.nextLi­ne());
System.out.prin­tln("Result is: "+(x*x));
}
}

_____________­__________________

import java.util.Scanner;

public class Program1 {

public void combineString(){
System.out.prin­tln("Hi what's your name?");
Scanner sc = new Scanner(System.in);
String name = sc.nextLine();
System.out.prin­tln("Tell me something about yourself");
String character = sc.nextLine();

System.out.prin­tln(name + " is "+ character);

}
}

_____________­__________________

import java.util.Scanner;

public class Kruh {

public void calculateCyrcle (){
final double PI = 3.14;

System.out.prin­tln("Enter the radius of a circle");
Scanner sc = new Scanner(System.in);
double radius = Double.parseDou­ble(sc.nextLi­ne());
System.out.println( "Circumference of the circle is: "+ (2radiusPI)+" cm. ");
System.out.println( " Circle content is: "+((PI(radius­radius)))+" cm2.");

}
}

Skusil som niečo také. Ale vzorce na kruh som si musel googlit :-X

 
Odpovědět 12.3.2018 22:29
Avatar
Urza
Člen
Avatar
Urza:21.3.2018 18:19

Ahoj tak jsem si zkusil udělat první test, vše OK, až na třetí příklad, tam jsem se trošku trápil. Nakonec jsem to zvládl sám i když nevím na jaké programátorské úrovni to je napsané. Vše jsem psal do jednoho projektu, proto je

//Scanner sc = new Scanner(System.in,"Windows-1250");/

u dalších příkladů jen jako poznámka. Děkuji za takovéto příklady a možnost si zkoušet nové věci.

package test1;


import java.util.Scanner;

/**
 *
 * @author Míra
 */
public class Test1 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

    // 1 úkol /
    Scanner sc = new Scanner(System.in,"Windows-1250");
    System.out.println(" Ahoj, jak se jmenuješ?");
    String jmeno = sc.nextLine();
    System.out.println("Jaký jsi?");
    String vlastnost = sc.nextLine();
    System.out.println(jmeno +" je "+ vlastnost);



    // 2 úkol /
    //Scanner sc = new Scanner(System.in,"Windows-1250");/
    System.out.println("Zadej číslo k umocnění");
    int vysledek = Integer.parseInt(sc.nextLine());
    System.out.println(vysledek * vysledek );


    //3 úkol /
    //Scanner sc = new Scanner(System.in,"Windows-1250");/
    System.out.println("Zadej poloměr kruhu  (cm):");
    float p = Float.parseFloat(sc.nextLine());
    float obvod =  (float) (2 * Math.PI * p);
    float obsah = (float) (Math.PI * (p*p));
    System.out.println("Obvod zadaného kruhu je: " + obvod);
    System.out.println("Jeho obsah je: " + obsah + " cm^2");
 
Odpovědět 21.3.2018 18:19
Avatar
Peter Kahan
Člen
Avatar
Peter Kahan:17.4.2018 14:29

Zatiaľ jednoduché príklady. V treťom príklade som si dovolil zavolať "Math.PI", cele vložil do premennej a tým pádom sa netrápil s desatinným číslami, pracoval som iba s double premennými, hotovo.

 
Odpovědět 17.4.2018 14:29
Avatar
Martin Ošťádal:28.4.2018 1:08

Jo, pohodička. Všechno šlape jako hodinky. :-D

package cviceni1.part1;
import java.util.Scanner;
/**
 *
 * @author Martin Ošťádal
 */
public class Cviceni1Part1 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in, "Windows-1250");
        System.out.println("Ahoj, jak se jmenuješ?");
        String jmeno = sc.nextLine();
        System.out.println("Jaký jsi?");
        String vlastnost = sc.nextLine();
        String veta;
        veta = jmeno + " je " + vlastnost;
        System.out.println(veta);

-----------------------------------------------------------------

package cviceni1.part2;
import java.util.Scanner;
/**
 *
 * @author Martin Ošťádal
 */
public class Cviceni1Part2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in, "Windows-1250");
        System.out.println("Zadej číslo k umocnění: ");
        int a = Integer.parseInt(sc.nextLine());
        int b = a*a;
        System.out.println(b);

-----------------------------------------------------------------

package cviceni1.part3;
import java.util.Scanner;
/**
 *
 * @author Martin Ošťádal
 */
public class Cviceni1Part3 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in, "Windows-1250");
        System.out.println("Zadej poloměr kruhu (centimetry): ");
        float r = Float.parseFloat(sc.nextLine());
        float pi = 3.14F;
        float o = 2 * pi * r;
        float s = pi * r * r;
        System.out.println("Obvod kruhu je: " + o + " centimetrů.");
        System.out.println("Obsah kruhu je: " + s + " centimetrů čtverečních.");
Odpovědět 28.4.2018 1:08
Jednoduchost je nekonečná dokonalost.
Avatar
Filip Finrašek:15.5.2018 12:29

Zapsáno a funguje!! Akorát vše zapisuji asi zbytečně složitě. Do světa programování jsem nahlédl teprve nedávno a definitivně jsem pořád lepší barman než programátor, ale baví mě to a hodlám se zlepšovat. Skvělé články, příklady a cvičení. Díky!

 
Odpovědět 15.5.2018 12:29
Avatar
Riči Jak
Člen
Avatar
Riči Jak:28.5.2018 7:44

Tyto úlohy jsou dobré na procvičení různých vstupů a výstupů, jak to má všechno makat. :-)

 
Odpovědět 28.5.2018 7:44
Avatar
Marty
Člen
Avatar
Marty:6.6.2018 19:07

Proč je to složitěji, než je potřeba? Např.:

int a = Integer.parseInt(sc.nextLine());

by šlo zjednodušit na:

int a = sc.nextInt();
 
Odpovědět 6.6.2018 19:07
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Marty
David Čápka:6.6.2018 19:23

Nešlo, nextInt() nechává v bufferu znak enteru a ten tam pak dělá neplechu při dalším načítání, můžeš si to zkusit.

Odpovědět 6.6.2018 19:23
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Marty
Člen
Avatar
Odpovídá na David Čápka
Marty:7.6.2018 14:05

Ano, skutečně. :) Je tento nešvar jen v Javě?

 
Odpovědět 7.6.2018 14:05
Avatar
Radim Šrámek:14.6.2018 10:05

Ahoj,
nevíte čím to může být? Viz obrázek níže. Používám Eclipse, NetBeans se mi nepodařilo rozchodit
Díky

 
Odpovědět 14.6.2018 10:05
Avatar
Odpovídá na Radim Šrámek
Matúš Olejník:15.6.2018 9:24

Kedže už ďalej Scanner nepotrebuješ mal by si ho zatvoriť, zavolať .close(), a navrátiť prostriedky operačnému systému. Tvoj kód by teda mal vyzerať asi takto

Scanner scanner = new Scanner(System.in);
try {
    //read input
} finally {
    scanner.close();
}

Od Javy 7, kedže Scanner implementuje AutoCloseable, môžeš použiť try with resources kedy sa na konci príkazu prostriedky automaticky uvolnia

try (Scanner in = new Scanner(System.in)) {
    //read input
}

Viacej si môžeš prečítať tu

Odpovědět 15.6.2018 9:24
/* I am not sure why this works but it fixes the problem */
Avatar
Jiří Malý
Člen
Avatar
Jiří Malý:13.7.2018 10:08

Děkuji, všechny testy bez větších problému jsem zvládl. =)

 
Odpovědět 13.7.2018 10:08
Avatar
Jiří Malý
Člen
Avatar
Jiří Malý:13.7.2018 13:23

Kde mohu potvrdit, že jsem příklady splnil?

 
Odpovědět 13.7.2018 13:23
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Jiří Malý
David Čápka:13.7.2018 14:08

Odevzdávání příkladů se v současné době nasazuje a bude brzy k dispozici :)

Odpovědět 13.7.2018 14:08
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Jiří Malý
Člen
Avatar
Odpovídá na David Čápka
Jiří Malý:13.7.2018 14:49

Děkuji za rychlou odpověď. :-)

 
Odpovědět 13.7.2018 14:49
Avatar
Honza Buriánek:24.7.2018 14:40

Já si tedy ještě u úkolu s kruhem dovolil použít funkci Math.PI, která vrací datový typ Double. Zkoušel jsem ho naparsovat na Float (aby výsledek nebyl přes celý řádek), ale "kupodivu" Float.parseFlo­at(Math.PI) nezafungovalo.
Povedlo se mi to až příkazem:

float obsah = (float) Math.PI * vstup * vstup;

ale nechápu syntaxi.

 
Odpovědět 24.7.2018 14:40
Avatar
Ondra-ovce
Člen
Avatar
Ondra-ovce:26.7.2018 9:15

Jo zvládl jsem to :)

 
Odpovědět 26.7.2018 9:15
Avatar
Markéta
Člen
Avatar
Markéta:1.8.2018 10:09

Ahoj, poloměr kruhu jsem dělala následujícím způsobem, program mi funguje normálně, ale je to jiný zápis (poslední dva řádky). Prosím o radu, jestli to lze takto používat nebo to není úplně správně, případně jestli může být problém s datovým typem. Děkuji

Scanner sc = new Scanner (System.in,"Windows-1250");
System.out.prin­tln("Zadejte poloměr kruhu (cm): ");
Float a = Float.parseFloat (sc.nextLine());
System.out.prin­tln("Obvod kruhu je: "+ 2a3.14 + " cm");
System.out.prin­tln("Jeho obsah je: "+ 3.14aa + " cm2")

 
Odpovědět 1.8.2018 10:09
Avatar
Monika Badačová:7.8.2018 14:41

ja som to tretie cvičenie vyriešila takto :)

Scanner sc=new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadaj polomer kružnice v cm");
float a=Float.parse­Float(sc.nextLi­ne());
float b=Float.parse­Float("3.14");
float obvod = 2ab;
float obsah = baa;
System.out.prin­tln("Obvod= "+ obvod + " cm");
System.out.prin­tln("Obsah="+ obsah + " cm");

 
Odpovědět 7.8.2018 14:41
Avatar
David Weisser:22.8.2018 1:00

Ahoj, poslední příklad mi nevycházel v testech, byť teda fungoval správně. Už mě nic nenapadalo, tak jsem si stáhnul řešení. Rozdíl byl v tom, že jsem si pro Pí udělal extra podmínku.
float pi = 3.14F
Do vzorců jsem dosazoval v písmenné podobě. Je to nějak na škodu kromě řádku navíc?

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadej poloměr kruhu (cm):");
float pi = 3.14F;
float vstup = Float.parseFlo­at(sc.nextLine());
float s = vstup * vstup * pi;
float o = 2 * vstup * pi;
System.out.prin­tln("Obvod kruhu je: " + o + " cm");
System.out.prin­tln("Obsah kruhu je: " + s + " cm2");

 
Odpovědět 22.8.2018 1:00
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na David Weisser
David Jančík:22.8.2018 10:12

Ahoj, rozdíl je v textovém výstupu. Na program jsou spuštěné tzv. akceptační testy, které spustí program, zadají několik různých vstupů a zkontrolují, zda výstup odpovídá předpisu. Proto jsou u každého cvičení obrazovky s příkladným výstupem a texty. Místo "Obvod kruhu je:" bys měl mít "Obvod zadaného kruhu je:" a místo "Obsah kruhu je:" - "Jeho obsah je" a "cm2" - "cm2".
Chápu ale, že to není úplně zřejmé, přidáme ke cvičením poznámky, že texty musí být stejné.
Díky za zpětnou vazbu :)

Odpovědět 22.8.2018 10:12
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Odpovídá na David Jančík
David Weisser:22.8.2018 10:35

Díky za info. Dám si na to pozor. :-) Ale na druhou stranu jsem díky tomu našel několik možností, jak zadat příkazy, aby vyšel výpočet.:-)

 
Odpovědět 22.8.2018 10:35
Avatar
Josef Doleček:31.8.2018 23:21

Ahoj, tak po pár minutách taky zvládnuto :-) abych se ale přiznal, trošku jsem musel nahlédnout do předchozích lekcí jak s tím číslem PÍ :-D

 
Odpovědět 31.8.2018 23:21
Avatar
Mija
Člen
Avatar
Mija:28.9.2018 17:41

Snad mám drobnou odchylku ve výsledku jen zaokrouhlováním PÍ a ne chybou ;-)

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Poloměr kruhu je: ");
String r = sc.nextLine();
float a = Float.parseFlo­at(r);
float obvod = 2 * ((float) Math.PI * a);
float obsah = (float) Math.PI * (float) Math.pow(a, 2);
System.out.prin­tln("PI = " + Math.PI);
System.out.prin­tln("Obvod zadaného kruhu je: " + obvod + " cm");
System.out.prin­tln("Jeho obsah je " + obsah + " cm2");
}

 
Odpovědět 28.9.2018 17:41
Avatar
DoShowStat
Člen
Avatar
DoShowStat:24.10.2018 15:07

Ahoj,

program viz nize mi funguje,ale kdyz jej chci odevzdat k otestovani, tak mi to ta automaticka kontrola nebere...mate prosim nekdo nejaky typ proc?

package onlineapp;

import java.util.Scanner;

public class Program
{
        public static void main(String[] args) {

                double pi = Math.PI;
                Scanner sc = new Scanner (System.in,"Windows-1250");
                System.out.println("Zadej poloměr kruhu (cm):");
                float r = Float.parseFloat(sc.nextLine());
                System.out.println("Obvod zadaného kruhu je: " + 2*pi*r + " cm");
                System.out.println("Jeho obsah je " +pi* Math.pow(r, 2) + " cm^2");
        }
}
Editováno 24.10.2018 16:46
 
Odpovědět 24.10.2018 15:07
Avatar
Odpovídá na DoShowStat
Matúš Olejník:24.10.2018 15:29

Ahoj k tomu zadaniu je aj vzorový vstup aj s výstupom. Keď zadáš to čo je vo vzorovom vstupe máš presne taký istý výsledok ako je vo vzorovom výstupe? Aj bez spustenia viem povedať že nemáš pretože minimálne jednotky obsahu sú vo vzorovom výstupe ako cm2 a ty máš cm² . A či je kontrolované aj zaokruhlovanie to zistíš potom :) neskúšal som neviem

Odpovědět 24.10.2018 15:29
/* I am not sure why this works but it fixes the problem */
Avatar
DoShowStat
Člen
Avatar
DoShowStat:24.10.2018 16:38

Ahoj, moje vystupni hodnoty jsou malinko jine, protoze jsem asi pouzil misto nadefinovani constanty rovnou math.PI a to ma presnejsi hodnotu,ale jinak bych rekl,ze vystup je OK. V zadani neni upresnene jestli to resit nastavenim konstanty nebo pres math.PI a pripadne nakolik desetinych mist to PI nastavit, tak nevim jeslti to muze byt tim.

minimálne jednotky obsahu sú vo vzorovom výstupe ako cm2 a ty máš cm² /// tomu moc nerozumim jak jsi to myslel... mozna jsi myslel,ze jsem pouzil cm2 misto cm ^ 2, ale to jen v komentari automaticky opravilo na cm2, v programu mam cm ^ 2 ( bez mezer )

tady mas muj vystup...

Zadej poloměr kruhu (cm):
12.1
Obvod zadaného kruhu je: 76.02654461371797 cm
Jeho obsah je 459.96060941390635 cm2

Editováno 24.10.2018 16:40
 
Odpovědět 24.10.2018 16:38
Avatar
Odpovídá na DoShowStat
Matúš Olejník:24.10.2018 17:11

Aha sorry čítal som to v mobile a pozeral som na ten komentár vyššie :D tak skús dať za pi 3.14 alebo počkaj kým si to pozrú autori :)

Odpovědět  +1 24.10.2018 17:11
/* I am not sure why this works but it fixes the problem */
Avatar
zitekv
Člen
Avatar
Odpovídá na DoShowStat
zitekv:24.10.2018 17:16

Místo Math.PI použij 3.14f a už ti to půjde.
Tady v těchto kontrolách musí být výstup vždy úplně stejný jako v ukázce.
(řešil jsem to tak, že v okamžiku kdy jsem byl přesvědčen, že mám program v pořádku, podíval jsem se do řešení a porovnával, kde je odchylka od řešení mého)

 
Odpovědět  +1 24.10.2018 17:16
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na DoShowStat
David Jančík:24.10.2018 17:21

Všechny číselné výstupy jsou parsovany a zaokrouhlovany. Většinou na 2 desetinná místa. Tady je problém, že u tebe to nesedí ani při tom zaokrouhkeni. Počítalo se s eventualitami, jako, že někdo použije double/float (jsou tam jiné odchylky). Ale tohle tam dělá větší neplechu. Je to tak, protože se knihovny ještě neprobiraly, proto se předpokládá, že je nepoužije. Zamyslíme se nad vhodným řešením. Díky za feedback.

Odpovědět  +1 24.10.2018 17:21
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Zakk
Člen
Avatar
Zakk:24.10.2018 21:35

Ahoj, co je přesně ten certifikát a k čemu může bejt dobrej ? (odkaz nefunguje)
Díky

 
Odpovědět 24.10.2018 21:35
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na Zakk
David Jančík:24.10.2018 22:28

Momentálně je přidáváme, tady ještě není. Můžeš se podívat do základů C#. Je to potvrzení, že jsi absolvoval online kurz na dané téma a úspěšně zpracoval všechny cvičení v daném seriálu.

Odpovědět 24.10.2018 22:28
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Fíla N.
Člen
Avatar
Fíla N.:5.11.2018 22:49

Ahoj,
koupil jsem celou sérii základů, všechna cvičení odemčena. Udělal jsem teď všechna cvičení z 7. a 8. lekce. Chtěl jsem se vrátit a dodělat i začátky, ale když chci zde odevzdat příklad, tak mi znovu je nabídnuto si koupit za 4 body tato cvičení k odevzdání. Stává se mi to pouze u těchto cvičení z 3. lekce. U cvičení ze 4. lekce to zase již je ok. Je to chyba nebo to opravdu takto má fungovat? :(

 
Odpovědět 5.11.2018 22:49
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na Fíla N.
David Jančík:6.11.2018 6:34

Do koupě se zahrnují všechny prémiové články. Články které jsou zdarma, byť mají možnost dokoupení odevzdání, se tam nezařazují. Celková cena sekce je o tyto články ponížena tzn. nepřišel si o body.
Měly by být v balíčku ale obsaženy také. Opravíme, díky za feedback :)

Odpovědět  +1 6.11.2018 6:34
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Michal Chmel
Člen
Avatar
Michal Chmel:12.11.2018 14:35

Zdravím,

napsal jsem druhou úlohu takto:

public static void main(String[] args){

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadej číslo k umocnění");
int a;
a = sc.nextInt();
System.out.prin­tln("Výsledek: " + a * a );
}
V programu je vše ok, ale neprojde mi to tady, nevíte kde je chyba?

díky

 
Odpovědět 12.11.2018 14:35
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na Michal Chmel
David Jančík:12.11.2018 14:45
  1. používej formátování kódu
  2. v článcích učíme že nemáš používat `nextInt() ` ale `nextLinr() ` a následně pasovat
  3. je nutné aby ti seděly texty že zadání
Odpovědět 12.11.2018 14:45
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Radka Jánská:15.11.2018 1:00

Ahoj, nerada, ale musím se taky ozvat. Řešení mám naprosto totožné s vaším vč. mezery za dvojtečkou v prvním řádku, ale stejně mi nejde poslední projekt odevzdat. Dokonce jsem zkusila drze vložit a spustit vaše řešení a spočítalo mi jiné hodnoty, než máte v zadání. :-( Nevím si s tím rady. :-(

import java.util.Scanner;
/**
 * Třída má za úkol vypočítat obvod a obsah kruhu
 * @author Radka Jánská
 */
public class Kruh {

    /**
     * Metoda má za úkol vypočítat obvod a obsah kruhu
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in,"Windows-1250");
        System.out.println("Zadej poloměr kruhu (cm): ");
        float polomer = Float.parseFloat(sc.nextLine());
        float obvod = 2 * 3.14F * polomer;
        float obsah = 3.14F * polomer * polomer;
        System.out.println("Obvod zadaného kruhu je: " + obvod + " cm");
        System.out.println("Jeho obsah je " + obsah + " cm^2");


    }

}
 
Odpovědět 15.11.2018 1:00
Avatar
Odpovídá na Radka Jánská
Radka Jánská:15.11.2018 1:04

Omlouvám se, chyba na mé straně. Cvičení jsem zpracovávala víc jak před půl rokem a dnes jsem si nepřečetla znovu zadání ... teprve teď jsem si všimla, že jste tam doplnili, že máme za pí dosadit 3.1415 :-)

 
Odpovědět 15.11.2018 1:04
Avatar
MICHAL ZAJAC
Člen
Avatar
MICHAL ZAJAC:23.11.2018 11:05

Caute, vie mi niekto poradiť ako mám odovzdavat tie riesenia na kontrolu? lebo mi nechce zobrat to umocnenie na druhu pritom mi to vypisuje presne to iste ako im tu.

 
Odpovědět 23.11.2018 11:05
Avatar
MICHAL ZAJAC
Člen
Avatar
Odpovídá na Michal Chmel
MICHAL ZAJAC:23.11.2018 11:10

Poprosil by som vrátit peniaze, ked to overovanie máte tak debilne že mi neprejde ani jednoduche mocnenie tak neni šanca aby prešli nejake neskôrsie ťažšie priklady ked to musim robit presne tak ako vy. Ved na toto sa vám musia vsetci stazovat

 
Odpovědět 23.11.2018 11:10
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na MICHAL ZAJAC
David Jančík:23.11.2018 11:54

Když nepošleš svůj kód, nemůžeme ti poradit, co máš špatně.

Odpovědět 23.11.2018 11:54
Zapomeň, že je to nemožné a udělej to ;)
Avatar
MICHAL ZAJAC
Člen
Avatar
MICHAL ZAJAC:23.11.2018 11:55

Kam ho mám poslať? A nič nemám špatne, ked mi v IDE vypisuje to iste čo vám ale vy dáte overenie len ked je to napisane presne tak ako chcete vy. Ved to je nemozné,

 
Odpovědět 23.11.2018 11:55
Avatar
Odpovídá na MICHAL ZAJAC
Matúš Olejník:23.11.2018 12:46

Ved do komentu posli ten kusok kodu

Odpovědět 23.11.2018 12:46
/* I am not sure why this works but it fixes the problem */
Avatar
Michal Duba
Člen
Avatar
Michal Duba:4.12.2018 19:40

Chápu správně, že pro navyšování zkušenostního baru se musí platit ? Nebo tu je i jiná možnost ?

 
Odpovědět 4.12.2018 19:40
Avatar
Michal Duba
Člen
Avatar
Odpovídá na Michal Duba
Michal Duba:4.12.2018 19:40

Hmm právě jsem si sám odpověděl, odeslal jsem komentář a bar narostl, nvm ^^

 
Odpovědět 4.12.2018 19:40
Avatar
Odpovídá na Michal Duba
Matúš Olejník:4.12.2018 20:01

Rovnako môžeš vypracovať kvízy poskytnúť riešenie na nejaký problém, pridať článok..bez toho že by si niečo platil

Odpovědět 4.12.2018 20:01
/* I am not sure why this works but it fixes the problem */
Avatar
Radek Bárta
Člen
Avatar
Radek Bárta:11.12.2018 10:44

nevím, kde je problém, ale u prvního cvičení mi po spuštění kód funguje dle zadání, ale při odevzdání mi to napíše, že je tam chyba:
package onlineapp;

import java.util.Scanner;

public class Program
{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadej jméno uživatele:");
String a = sc.nextLine();
System.out.prin­tln("Zadej jeho vlastnost:");
String b = sc.nextLine();
String vystup = a + " je " + b;
System.out.prin­tln(vystup);
}
}

 
Odpovědět 11.12.2018 10:44
Avatar
Odpovídá na Radek Bárta
Matúš Olejník:11.12.2018 12:13

Ale veď v ukážke máš napísané, že máš vypísať "Ahoj, jak se jmenuješ?" a nie "Zadej jméno uživatele:" rovnako ako "Jaký jsi?" namiesto "Zadej jeho vlastnost:" ;)

Odpovědět  +1 11.12.2018 12:13
/* I am not sure why this works but it fixes the problem */
Avatar
Radek Bárta
Člen
Avatar
Radek Bárta:11.12.2018 12:27

Jo jo, díky, já četl jen zadání a myslel, že se kontroluje výstup. Již jsem pochopil, že musí souhlasit i texty z ukázky.

 
Odpovědět 11.12.2018 12:27
Avatar
Nessay
Člen
Avatar
Nessay:19.12.2018 14:29

Asi je teda ta kontrola automatizovana, ked to kontroluje aj tie predlohy. Aj ked tam nedam interpunkciu, tak mi to neprejde?

 
Odpovědět 19.12.2018 14:29
Avatar
Jiří Hrotek:29.12.2018 11:29

super na procvičení , akorát ani jedno nejde odeslat . Ale mě to nevadí , protože vím že to v IDE funguje tak jak má.

 
Odpovědět 29.12.2018 11:29
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Jiří Hrotek
David Čápka:29.12.2018 11:32

Kdybys napsal proč ti to nejde nebo poslal svůj kód, tak by tvůj komentář měl nějaký smysl. Cvičení samozřejmě odeslat jdou, pokud ti to nejde, tak je buď nemáš správně nebo se ti to podařilo udělat nějakým způsobem, se kterým jsme nepočítali.

Odpovědět 29.12.2018 11:32
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Tomáš Kusý:7. ledna 22:16

Pochopil jsem spravne ze pokud chci ziskat certifikat tak musim absolvovat skoleni v praze, nebo udelat "bezplatne" online skoleni? Online skoleni mam uspesne zvladnute, ale ted jsem zjistil ze musim udelat ty cviceni a nahrat vypracovane aplikace. Ale to uz neni zdarma, ale za body (penize). Pletu se snad?

PS: prvni cviceni je:

package onlineapp;

import java.util.Scanner;

public class Program
{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Ahoj, jak se jmenuješ?");
String jmeno = sc.nextLine();
System.out.prin­tln("Jaký jsi?");
String vlastnost = sc.nextLine();
System.out.prin­tln(jmeno +" je "+ vlastnost );

}
}

 
Odpovědět 7. ledna 22:16
Avatar
Odpovídá na Tomáš Kusý
Radka Jánská:10. ledna 22:43

Pochopil jsi to spravne. Body teoreticky muzes ziskat i bezplatne

 
Odpovědět 10. ledna 22:43
Avatar
Feri Laky
Člen
Avatar
Feri Laky:19. ledna 19:30

Spustil jsem kód, vše proběhlo bezva, ale vypisuje mi ňáký blbiny o stejným textu, pak abych zadal jiný text - nebere ani tak, ani tak.
není jedno jaký text zadám? - musí být jako v ukázce? A stejně vypisuje něco o předloze , atd...

 
Odpovědět 19. ledna 19:30
Avatar
Feri Laky
Člen
Avatar
Odpovídá na David Čápka
Feri Laky:20. ledna 17:12

Pokusil jsem se zadat kód s textem několikrát - pořád vypisuje:1.zkus zadat osobu z ukázky
2.zkus zadat jinou osobu - s oběma zadáními mi to funguje u vás i u mne v Netbeansu bez problému.
Pod tím je napsáno: Zkontroluj, zda výstupy programu odpovídají předloze. S jinými texty testy neprojdou.
Neprojdou ani s originálními!
Tak teď co mám dělat?Už mě to přestáva bavit.....

 
Odpovědět 20. ledna 17:12
Avatar
Feri Laky
Člen
Avatar
Odpovídá na David Čápka
Feri Laky:20. ledna 17:18

Davide - oprava!!!! Měls pravdu - něco je špatně! - na konci jsem napsal za "bohatý" výkŕičník - omlouvám se - mea culpa, mea maxima culpa :-)))

 
Odpovědět 20. ledna 17:18
Avatar
Feri Laky
Člen
Avatar
Feri Laky:20. ledna 19:02

Je nutné dát pozor i na čárku, výkričník, mezeru atd.- jinak to neprojde....
je to sila, ale nutí člověka k precizitě.

 
Odpovědět 20. ledna 19:02
Avatar
Ondra Hájek
Člen
Avatar
Ondra Hájek:29. ledna 13:04

Hmm.. v IDE mi to iďe! ten tester je asi dost striktní :-)

 
Odpovědět 29. ledna 13:04
Avatar
Odpovídá na Ondra Hájek
Matúš Olejník:29. ledna 14:37

To znamená, že tu ti nechce zobrať nejakú úlohu? Napíš ktorú a pošli kód ;)

Odpovědět 29. ledna 14:37
/* I am not sure why this works but it fixes the problem */
Avatar
Ondra Hájek
Člen
Avatar
Odpovídá na Matúš Olejník
Ondra Hájek:29. ledna 15:45

Druhou mocninu a kruh.

package mocnitel;

import java.util.Scanner;

public class Mocnitel {

public static void main(String[] args) {
Scanner sc = new Scanner(System­.in,"Windows-1250");
System.out.prin­tln("Zadejte číslo k umocnění.");
float a = Float.parseFlo­at(sc.nextLine());
float b = a * a;
System.out.prin­tln(b);
}

}

package kruh;

import java.util.Scanner;

public class Kruh {

public static void main(String[] args) {

Scanner sc = new Scanner(System­.in,"Windows-1250");
float pi = 3.1415F;
System.out.prin­tln("Zadej poloměr kruhu");
float r = Float.parseFlo­at(sc.nextLine());
float o = 2 * pi * r ;
float s = pi * r * r ;
System.out.prin­tln("Obvod kruhu je :" + o);
System.out.prin­tln("Povrch kruhu je :" + s);

}

}

Asi jsem nedodržel přesně ty popisky.

 
Odpovědět 29. ledna 15:45
Avatar
Odpovídá na Ondra Hájek
Matúš Olejník:29. ledna 16:12

Pri tej mocnine máš vypísať
Zadej číslo k umocnění: a nie Zadejte číslo k umocnění. Rovnako pred výsledkom máš mať aj text Výsledek:

Podobne pri tej tretej úlohe ;)

Odpovědět 29. ledna 16:12
/* I am not sure why this works but it fixes the problem */
Avatar
Lenka Kovačová:12. března 13:40

Třetí úlohu mi to nechce vzít. V IntelliJ mi script funguje bez problémů a dělá, co má. Posílám script.

package com.company;

import java.util.Scanner;

public class Kruh {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Zadej poloměr kruhu (cm): ");
float r = Float.parseFlo­at(sc.nextLine());
float pi = 3.1415F;
float obvod = 2 * pi * r;
float obsah = pi * (r * r);
System.out.prin­tln("Obvod zadanéhho kruhu je: " + obvod + " cm");
System.out.prin­tln("Jeho obsah je " + obsah + " cm2");
}
}

 
Odpovědět 12. března 13:40
Avatar
Odpovídá na Lenka Kovačová
Matúš Olejník:12. března 14:07

Ahoj v ukážkovom výstupe je Zadej poloměr kruhu (cm): bez medzery na konci. Skús tak :)

Odpovědět 12. března 14:07
/* I am not sure why this works but it fixes the problem */
Avatar
zitekv
Člen
Avatar
Odpovídá na Lenka Kovačová
zitekv:13. března 10:22

Ahoj,
jedná se o chyby z přehlédnutí, ale ty se většinou obtížně hledají (ti co koukají někomu přes rameno to vidí hned :-)

System.out.println("Obvod zadanéhho kruhu je: " + obvod + " cm");
System.out.println("Jeho obsah je " + obsah + " cm2");

"zadanéhho"
"cm^2"

 
Odpovědět 13. března 10:22
Avatar
Odpovídá na zitekv
Lenka Kovačová:13. března 19:36

Děkuji, nevšimla jsem si toho. Mám potíže i s první úlohou, přestože výstup je podle zadání. Nikde chybu nevidím.

package onlineapp;

import java.util.Scanner;

public class Program {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.prin­tln("Ahoj, jak se jmenuješ?");
String jmeno = sc.nextLine();
System.out.prin­tln(jmeno);
System.out.prin­tln("Jaký jsi?");
String vlastnost = sc.nextLine();
System.out.prin­tln(jmeno + " je " + vlastnost);
}
}

 
Odpovědět 13. března 19:36
Avatar
zitekv
Člen
Avatar
Odpovídá na Lenka Kovačová
zitekv:13. března 19:54

K tomu ti poradím, aby jsi si opravdu zkontrolovala výstupy zadání a tvoje.

 
Odpovědět 13. března 19:54
Avatar
Odpovídá na zitekv
Lenka Kovačová:13. března 20:10

ok, tak budu bojovat dál :)

 
Odpovědět 13. března 20:10
Avatar
Odpovídá na Lenka Kovačová
Matúš Olejník:13. března 20:30

Toto System.out.prin­tln(jmeno); nemáš volať hneď po zadaní mena. V ukážke druhý riadok "Bill Gates" je vstup a nie výstup ;)

Odpovědět 13. března 20:30
/* I am not sure why this works but it fixes the problem */
Avatar
Odpovídá na Matúš Olejník
Lenka Kovačová:13. března 20:38

Rozumím. Děkuju, už mám odevzdáno :)

 
Odpovědět  +1 13. března 20:38
Avatar
Viktor Willow:14. března 8:19

Jen se zeptám, abych měl jistotu ohledně toho. Přijde mi trošku přehlednější používat místo:


package priklad;

import java.util.Scanner;

public class program {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "Windows-1250");
}
}


Spíše toto:


package priklad;

import java.util.Scanner

public class program {

private static Scanner sc;
public static void main(String[] args) {
sc = new Scanner(System.in, "Windows-1250);
}
}


Bude to bráno jako chyba nebo ne? Dělá to naprosto to samé, jen mě osobně se to takto píše lépe a nemám v tom poté takový zmatek. Jen se ptám, abych pak při odevzdání neměl zbytečně chybný zápis.

 
Odpovědět 14. března 8:19
Avatar
Olga Špicarová:17. dubna 14:18

Mám radost. Sice jsem se potýkala s pár menšími chybičkami, ale dala jsem to. Na začátečníka super.

 
Odpovědět  +1 17. dubna 14:18
Avatar
Jan Maule
Člen
Avatar
Jan Maule:9. května 12:11

Ahoj, tak zatím to jde lehce. Uvidíme, jak dál... Každopádně skvělé tutoriály, díky!

 
Odpovědět 9. května 12:11
Avatar
shaakar
Člen
Avatar
shaakar:21. května 17:32

Třetí úloha mi nevychází, vzorce mám správně, ale výsledky jsou odlišné. Pro výpočet pí používám funkci Math.PI a výsledky jsou trochu odlišné, když to pak odešlu na zkontrolování vyhodí mi to 50% úspěšnost. Nesetkal se s tím někdo?

 
Odpovědět 21. května 17:32
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na shaakar
David Čápka:21. května 18:05

Ahoj, zadání té úlohy má 2 řádky, což si nemyslím, že je těžké si přečíst. Cituji:

Pro číslo Pí použijte hodnotu 3.1415

Ty jsi napsal:

Pro výpočet pí používám funkci Math.PI

Tvůj program tedy nesplňuje zadání a proto neprochází kontrolou. Math.PI je vysvětleno až dále v kurzu a proto jeho použití zde nedává smysl a ani se s ním při odevzdání nepočítá.

Odpovědět 21. května 18:05
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Petr T.
Člen
Avatar
Petr T.:4. června 16:39

Ahoj, příklady mi prochází jak u mne tak tu, ale nemohu je odevzdat. Je potřeba si koupit body?

 
Odpovědět 4. června 16:39
Avatar
Vít Vlach
Člen
Avatar
Odpovídá na Petr T.
Vít Vlach:4. června 19:55

Ano, kontrola je zpoplatněná za 5 bodů, další cvičení jsou také zpoplatněna, u nich se vyplatí si koupit všechny naráz a v nějaké slevě (java týden...)

Odpovědět 4. června 19:55
My code doesn't work. Let's change nothing and run it again.
Avatar
Petr T.
Člen
Avatar
Odpovídá na Vít Vlach
Petr T.:4. června 21:42

Díky, pořídím body a budu pokračovat.

 
Odpovědět 4. června 21:42
Avatar
Petr T.
Člen
Avatar
Odpovídá na Vít Vlach
Petr T.:5. června 8:34

Ahoj, co by mohlo být ještě za problém? Body mám pořízené, příklady otestovány, ale stále při odevzdání neprochází.
Předem díky

 
Odpovědět 5. června 8:34
Avatar
Odpovídá na Petr T.
Matúš Olejník:5. června 12:19

Pošli kód, asi pre nejaký vstup nevrátiš správny výstup :)

Odpovědět 5. června 12:19
/* I am not sure why this works but it fixes the problem */
Avatar
Petr T.
Člen
Avatar
Petr T.:5. června 12:38

Tu je:

Scanner sc = new Scanner (System.in, "Windows-1250");
System.out.prin­tln("Ahoj, jak se jmenuješ?");
String a;
a = sc.nextLine();
System.out.prin­tln("Jaký jsi?");
String b;
b = sc.nextLine();
String vystup;
vystup = a +" je " + b + "!";
System.out.prin­tln(vystup);

 
Odpovědět 5. června 12:38
Avatar
David Jančík
Tým ITnetwork
Avatar
Odpovídá na Petr T.
David Jančík:5. června 12:49

Na vkládání zdrojových kódů prosím používej tlačítko </>.
Ve výstupu máš navíc "!", který v ukázce ze zadání není. Texty musí být stejné, jinak kód neprojde.

Odpovědět 5. června 12:49
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Petr T.
Člen
Avatar
Petr T.:5. června 12:57

Překontroluji texty. Příště na vkládání zdrojových kódů použiji </>.
Díky moc.

 
Odpovědět 5. června 12:57
Avatar
Adriana Tessa Zwanziger:13. července 11:51

priklad 2 mam dobre ale nevezme mi ho, mozem pouzivat vstup1 a vstup2, alebo x a z a pod, ?lebo inak neviem v com je problem,

 
Odpovědět 13. července 11:51
Avatar
 
Odpovědět 13. července 11:52
Avatar
Odpovídá na Adriana Tessa Zwanziger
Matúš Olejník:13. července 19:46

Ahoj, najlepšie bude keď pošleš svoj kód :) problém môže byť aj v tom, že nevypisuješ presne rovnaký text ako v ukážke

Odpovědět 13. července 19:46
/* I am not sure why this works but it fixes the problem */
Avatar
Katka H
Člen
Avatar
Katka H:31. července 19:15

Ahoj, potřebovala bych pomoc... nějak se mi nedaří odevzdat druhý příklad - umocnění. Snad milionkrát jsem kontrolovala, zda všechno sedí, ale žádnou chybu jsem nenašla... přitom první příklad mi to vzalo bez problému. Nevíte někdo, co s tím?
Tady je kód, který jsem tam zadala:
Scanner sc = new Scanner(System.in, "Windows-1250");
System.out.println ("Zadej číslo k umocnění:");
int a =Integer.parse­Int(sc.nextLi­ne());
int soucet = a*a;
System.out.println ("Výsledek:"+sou­cet);

 
Odpovědět 31. července 19:15
Avatar
Odpovídá na Katka H
Matúš Olejník:31. července 21:31

Ahoj, vo vzorovom riešení je za "Výsledek:" medzera.

Odpovědět 31. července 21:31
/* I am not sure why this works but it fixes the problem */
Avatar
Katka H
Člen
Avatar
Odpovídá na Matúš Olejník
Katka H:31. července 22:30

Jojo, už jsem na to přišla, mockrát děkuji :)

 
Odpovědět  +1 31. července 22:30
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 206 zpráv z 206.