Diskuze: Vypsání textu víckrát
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 12 zpráv z 12.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.


Napíšu pseudokód, protože Javu neumím:
string number = číslo_které_zadáš;
int count = int.Parse(number);
for(int i = 0; i < count; i++)
{
Vypiš_do_konzole("*");
}
Todle nejde do string nemůžeš uložit int
Neříkej mi, že v Jave neexistuje funkce na parsování textu do čísla...
Když už máš úkol v Javě, tak by sis mohl pročíst alespoň základní kontrukce Javy, ne? To co ty hledáš, je ve 3. díle Základní konstrukce jazyka Java:
int a = Integer.parseInt(number);
Zkus něco takového
String číslo = "5";
int počet = Integer.parseInt(číslo);
for (int i = 0; i < počet; i++)
System.out.print("*");
Ale to jsou úplné základy. Doporučuji si přečíst http://www.itnetwork.cz/java/zaklady. Tohle by měl každý umět.
Možné řešení:
import java.util.Scanner;
public class Stars {
private static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
String vstup = null;
boolean pokracovat = true;
do {
System.out.print("Zadej celé kladné číslo (pro konec 0): ");
vstup = scanner.next();
try {
int cislo = Integer.parseInt(vstup);
if (cislo == 0) {
pokracovat = false;
} else if (cislo < 0) {
System.out.println("Zadané číslo nebylo kladné!");
} else {
StringBuilder sb = new StringBuilder();
sb.append(cislo);
sb.append(" - ");
for (int i = 0; i < cislo; i++) {
sb.append("*");
}
System.out.println(sb.toString());
}
} catch (Exception e) {
System.out.println("Chybný vstup!");
}
} while (pokracovat);
System.out.println("Konec");
}
}
Vysvětlení:
Tato část kódu řeší tvůj dotaz. Zbytek je načítání a ošetření vstupu od uživatele.
StringBuilder sb = new StringBuilder();
sb.append(cislo);
sb.append(" - ");
for (int i = 0; i < cislo; i++) {
sb.append("*");
}
System.out.println(sb.toString());
Vytvořím objekt typu StringBuilder (pro rychlejší sestavování textového řetězce) a v cyklu for potom přidám počet hvězdiček podle velikosti zadaného číslo.
Výstup programu:
Zadej celé kladné číslo (pro konec 0): 3
3 - ***
Zadej celé kladné číslo (pro konec 0): -2
Zadané číslo nebylo kladné!
Zadej celé kladné číslo (pro konec 0): 99999999999999999999999999999999
Chybný vstup!
Zadej celé kladné číslo (pro konec 0): lisahfdasůhfa
Chybný vstup!
Zadej celé kladné číslo (pro konec 0): 11
11 - ***********
Zadej celé kladné číslo (pro konec 0): 0
Konec
Já nechci nějak bejt chytrej ale ted mi doslo že sem byl dost blbej a ty
si to udělal zbytečně složitě vlastně stačí udělat for cyklus a tam
daš to číslo a tolikrát to vypíše hvězdičku
int a = 4;
for(int i = 0; i < a; i++)
{
System.out.print("*");
}
Vypis teda bude ****
Omlouvám se za zdržování 
Zbytečná složitost
No, rozdíl mezi mým a tvým programem je ten, že ty to číslo musíš napsat
ve zdrojovém kódu, ale já ho můžu načíst za běhu programu 
Sorry za mínus, chtěl jsem se podívat kdo ti dal mínus a když jsem skrýval jeho jméno omylem jsem se uklepnul, nic si z toho prosím nědělej. A když už jsem tady, tak tě taky nasměruju ... podle mě bys ale měl začít spíš u problematiky programování a uvažování jako programátor... podmínky, cykly, switch/case ... musíš hlavně přemýšlet a až potom v klidu kódit... jinak přeju hodně zdaru. Hoj
Arrays.fill() by malo tiez fungovat, neviem ci je rychlejsie alebo pomalsie.
int length = new Scanner(System.in).nextInt();
char[] array = new char[length];
Arrays.fill(array, '*');
System.out.println(new String(array));
Zobrazeno 12 zpráv z 12.