IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Zjištění počtu čísel pls pomozte

Aktivity
Avatar
Jinoch Jirka
Člen
Avatar
Jinoch Jirka:14.12.2017 20:34

Skupina B

  1. Napište a odlaďte program pro zjištění počtu čísel ležících v intervalu <-5; 5> z N vygenerovaných čísel z intervalu <-10; 10>
  2. Vytvořte program, kt. vypočítá funkční hodnoty funkce f: y=x2 +x-1 pro celá čísla x od -10 do 10. Výsledek vypiše ve tvaru tabulky
  3. Vypište na obrazovku obrazec - trojúhelník ze zadaného znaku a počtu řad.

    Př.: vstup: +, 4
    výstup: ++++
    +++
    ++
    +

  4. Vytvořte program, kde uživatel zadá dolní mez a horní mez intervalu. Program následně zjistí, kolik čísel z intervalu je dělitelných 3 beze zbytku. Výsledek se vypíše na obrazovku.
 
Odpovědět
14.12.2017 20:34
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na Jinoch Jirka
gcx11:14.12.2017 20:36

A v čem je problém?

 
Nahoru Odpovědět
14.12.2017 20:36
Avatar
Marian Benčat:14.12.2017 20:36

takže podvodník.

Nahoru Odpovědět
14.12.2017 20:36
Totalitní admini..
Avatar
Jinoch Jirka
Člen
Avatar
Odpovídá na Jinoch Jirka
Jinoch Jirka:14.12.2017 20:44

Potřebuji udělat nějaké cvičení nejlépe všechny

 
Nahoru Odpovědět
14.12.2017 20:44
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na Jinoch Jirka
gcx11:14.12.2017 20:47

Nějak v tom nevidím důvod toho problému. Co už máš hotové/na čem ses zaseknul?

 
Nahoru Odpovědět
14.12.2017 20:47
Avatar
Jinoch Jirka
Člen
Avatar
Jinoch Jirka:14.12.2017 21:11

Já právě nemám nic hotové protoze nevím jak na to tak jestli byste někdo neporadil jak na to nebo neukázal

 
Nahoru Odpovědět
14.12.2017 21:11
Avatar
krepsy3
Tvůrce
Avatar
krepsy3:14.12.2017 22:20

To má být do konzole? Já jako mám pocit, že v ničem z toho není absolutně problém... Jestli si vůbec nevíš rady, možná by bylo dobrý projít si veškerý materiály z hodin a jít za učitelem/učitelkou aby ti to vysvětlil/a ještě jednou v klidu a v soukromí... Dále ti radím dělej si i všechny možný aj jednodušší cvičení, aby ses do toho dostal.

Jinak
1. Dostanu kolekci čísel, dejme tomu "int[]". Tuto projedu pomocí smyčky foreach a pokud je číslo větší rovno -5 a zároveň (&&) menší rovno 5, přičtu k výsledku jeden (před foreachem založíš proměnnou "int vysledek = 0" a pokud je číslo v intervalu, provedeš "vysledek++")

2. Chtělo by to nějakou inteligentní kolekci, kde bude vedle sebe hodnota proměnné a její funkční hodnota. Můžou to klidně být dva Listy, kde je stejný index. Já ti doporučuji slovník, tj. kolekci Dictionary<int, int>, kde klíč (tedy první int) bude proměnná a hodnota (druhý int) bude funkční hodnota v bodě proměnné. Ty potřebuješ od -10 do 10, zavoláš tedy for smyčku od 10 do -10 s inkrementací a v každém běhu uložíš hodnotu kontrolní proměnné jako klíč a přepočítanou hodnotu kontrolní proměnné jako hodnotu. Přepočet je podle tvého vzorce (dejme tomu že kontrolní proměnná je "n"):
<code>
Math.Pow(n, 2) + n - 1;
</code>
A pak provedeš výpis, tabulku vytvoříš pomocí unicode znaků ─ │ ┌ ┐ └ ┘ ├ ┤ ┴ ┬ ┼

3. To je vůbec primitivní. Načteš od uživatele nejprve char, pak int. Výpis uděláš ve smyčče for od načteného intu do 1 s dekrementací. Podle čísla n v každém běhu zavoláš další for, který ti do stringu přidává daný znak, a to právě n-krát. String vypíšeš.

4. Načteš dva inty a jedeš for smyčku od spodní meze do horní meze, s inkrementací. V každém běhu zavoláš na kontrolní proměnné modulo 3, které pokud bude rovno 0, zinkrementuješ proměnnou s výsledkem, podobně jako v prvním příkladě.

Hádám, že je to cvičení na for smyčky, co? :D

A mimochodem, ta čtyřka by šla řešit ještě o mnoho jednodušeji. Vzhledem k tomu, že dělitelnost hledáš na nepřerušené aritmetické posloupnosti, stačí ti najít nejmenší dělitelné číslo pomocí foru a modula, jako v prvním příkladě. Počet menších čísel než je ono nalezené (0, 1 nebo 2 při dělitelnosti 3) odečteš od celkového počtu čísel v zadaném intervalu, vydělíš 3 a zaokrouhlíš dolů (Math.Floor), výsledné číslo je tvůj hledaný výsledek. Počet čísel v intervalu zjistíš jednoduše jako HorníMez - DolníMez + 1.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
14.12.2017 22:20
Programátor je stroj k převodu kávy na kód.
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na krepsy3
gcx11:14.12.2017 22:31

2. Na to stačí jedna kolekce a

n*n

Math.Pow vrací double

3. while je na to lepší

Editováno 14.12.2017 22:31
 
Nahoru Odpovědět
14.12.2017 22:31
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na gcx11
krepsy3:15.12.2017 0:25

V tý trojce - while hlavní nebo while na sestavení stringu? Hádám, že myslíš asi to druhé :)

string s;
do { s += nactenyChar; } while (s.Lenght < pozadovanaDelka)
Nahoru Odpovědět
15.12.2017 0:25
Programátor je stroj k převodu kávy na kód.
Avatar
Petr Čech
Tvůrce
Avatar
Petr Čech:15.12.2017 0:47

Úloha 4 by měla teoreticky jít řešit v konstantním čase. Bohužel se mi na to nepodařilo přijít :D

Nahoru Odpovědět
15.12.2017 0:47
the cake is a lie
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na Petr Čech
krepsy3:15.12.2017 10:23

Jak jsi dospěl k takovému závěru?

Nahoru Odpovědět
15.12.2017 10:23
Programátor je stroj k převodu kávy na kód.
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na krepsy3
Petr Čech:15.12.2017 11:04

Měli jsme to na cvičení z programování, ale ten můj algoritmus se mi nepodařilo zprovoznit.

Nahoru Odpovědět
15.12.2017 11:04
the cake is a lie
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na Petr Čech
krepsy3:15.12.2017 11:30

Já se v tom právěže nevyznám, tak mě zajímá, jak jsi to poznal :)

Editováno 15.12.2017 11:31
Nahoru Odpovědět
15.12.2017 11:30
Programátor je stroj k převodu kávy na kód.
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 14 zpráv z 14.