Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Potřeboval bych poradit s programem v C++

Čus,

potřeboval bych poradit s programem v C++ co mám napsat. Jsem v programování úplný začátečník a tato úloha mi rozhoduje o známku, tak bych potřeboval prosím poradit co nejrychleji, díky moc.

Napište program, který ze vstupu přečte celé číslo a najde k němu nejbližší vyšší číslo, které je beze zbytku dělitelné číslem 17

Příklad
=====
Vstup: 6
Výstup: 17

Vstup: 30
Výstup: 34

Změna předmětu, původně: >>Potřeboval bych poradit s programem<< (host) (los)

Předmět Autor Datum
to je tá naprimitívnejšia úloha vôbec.... ak toto nezvládate, asi by ste mali prestúpiť na iný odbor…
Mlocik97 17.01.2018 23:44
Mlocik97
--- #include <iostream> #include <stdio.h> int main(void) { int x; scanf("%d", &x); do { x++; } wh…
Mlocik97 18.01.2018 00:41
Mlocik97
zbytečně komplikované. 1. x=vstup mod 17 2. výsledek=vstup+(17-x) edit: nebo na jeden řádek: výsl…
touchwood 18.01.2018 05:45
touchwood
Alebo: cout << x / 17 * 17 + 17
los 18.01.2018 08:52
los
http://www.smart-jokes.org/programmer-evolution.html :-)
touchwood 18.01.2018 09:03
touchwood
Pekne. No stavil by som nejake to euro na to, ze v skole sa od neho bude ocakavat riesenie pomocou c…
wam_Spider007 18.01.2018 09:10
wam_Spider007
Pokud je na stredni, tak bych se klidne vsadil ze vyucujici reseni bez cyklu ani nepochopi a bude ho…
Dwane Dibbley 18.01.2018 10:20
Dwane Dibbley
tím jsi docela urazil mého učitele informatiky, budiž mu země lehká. Já jsem v hodinách informatiky…
touchwood 18.01.2018 15:27
touchwood
Mne to prijde najjednoduchšie riešenie a najbližšie k tomu jak by to riešil človek. E: I když teraz…
Mlocik97 18.01.2018 10:47
Mlocik97
Alebo to zapíšem takto, a rovno mám pokryté aj to když mám vstup deliteľný 17. --- #include <iostr…
Mlocik97 18.01.2018 11:13
Mlocik97
no já bych to žádným cyklem určitě neřešil. Zadané číslo bych vydělil 17 a zbytek odečetl od 17, čím…
touchwood 18.01.2018 12:59
touchwood
V zadání je psáno nejvyšší vyšší dělitelné číslo myslíš nejnižší vyšší číslo, nejvyšší by bylo treb…
Mlocik97 18.01.2018 13:18
Mlocik97
Napište program, který ze vstupu přečte celé číslo a najde k němu nejbližší vyšší číslo, které je be…
touchwood 18.01.2018 13:41
touchwood
nejbližší je v podstate nejnižší číslo, ktoré nasleduje po číslu vstupu ktoré je zároveň delitelné 1…
Mlocik97 18.01.2018 13:59
Mlocik97
"nejbližší vyšší" (ne "nejvyšší vyšší")
touchwood 18.01.2018 14:27
touchwood
V dotazu píšeš, že potřebuješ poradit a místo toho chceš, aby to někdo udělal za tebe.
host 18.01.2018 08:15
host
ono to už tak chodí. Věčný začátečník vždy potřebuje podporu, protože to sám neumí a výsledek od jin…
touchwood 18.01.2018 14:28
touchwood
Ale hlavně, že nepropadne z programování, nebo co to je za předmět. Také bych po slově poradit čekal…
ml1 18.01.2018 15:22
ml1
No čo, vyrastie z neho pán programátor, ktorý vám o pár rokov vypočíta dôchodky... :)
pozorovateľ 18.01.2018 19:09
pozorovateľ
Když mu někdo napíše, jak to udělat.
Wikan 18.01.2018 19:10
Wikan
Ze zaklady programovania najebu na SŠ aj do odborov, ktore s nim nemaju absolutne nic spolocne a dot…
blue5 18.01.2018 19:14
blue5
Tak ja som sa tomu snažil dať trocha iný rozmer. Ale keď si načal, tak ono to niekedy nemusí byť ove…
pozorovateľ 18.01.2018 19:31
pozorovateľ
nejak tak,.... ja na Vysokej mal napr. v prvom ročníku Základy Inžinierstva Materiálov kde som sa uč… poslední
Mlocik97 18.01.2018 20:14
Mlocik97

to je tá naprimitívnejšia úloha vôbec.... ak toto nezvládate, asi by ste mali prestúpiť na iný odbor.

Najprimitívnejší princíp je buď použiť cyklus for, modulo a overovať zvyšok, ak sa rovná nule, breaknuť cyklus a vypísať výsledok. Cyklus ti nech pripisuje k číslu, čož v podstate index bude prírastok k vstupu.
Alebo použiť cyklus while (resp. do-while) a vykonávať výpočet kým nieje zvyšok rovné 0, v cyklu zvyšovať číslo o jedna, po ukončení cyklu vypsať výsledok.

vstup z klávesnice naskenujete cez scanf a výstup vypíšete cez prinf

Mne to prijde najjednoduchšie riešenie a najbližšie k tomu jak by to riešil človek. E: I když teraz rozmýšlam že po prvom overení ak už viem zvyšok môžem ho odratať od 17, a priratať k mojmu číslu x. O polnoci ma to nejak nenapadlo. Ovšem tu je sťaženie v tom že ak máš už vstup delitelny bezezvyšku 17, tak by si dostal vysledok pôvodné číslo zo vstupu, takže by byla potrebna if podmienka, jako overiť vstup. V zadaní má totiž "nejbližší vyšší číslo"

Alebo to zapíšem takto, a rovno mám pokryté aj to když mám vstup deliteľný 17.
---


#include <iostream>
#include <stdio.h>

int main(void) {
    int x;
    scanf("%d", &x);
    x = x - (x % 17) + 17;
    printf("%d \n", x);

    return 0;
}

---
E: ovšem pri záporných číslach v rozsahu <-1, -16> program vypíše namiesto 0 číslo +17, to by zas v tejto situaci bola potrebná podmienka pre overenie "podnulového" vstupu.

E2: blbosti táram, v rozsahu <-1, -16> to píše správne číslo... nechceme najbližší násobok čísla 17 od nášho čísla ale najbližšie viššie číslo delitelné 17 bezezvyšku, resp. 0 deleno 17 je 0 zo zvyškom 17.

no já bych to žádným cyklem určitě neřešil. Zadané číslo bych vydělil 17 a zbytek odečetl od 17, čímž dostaneš rozdíl, který je potřeba přidat, aby ses dostal na dělitelné číslo.

V zadání je psáno nejvyšší vyšší dělitelné číslo, takže i když zadáš např. 17, tak správný výsledek je 34 :-) a výše uvedený algoritmus toto zohledňuje (zbytek je nula a přičte se celých 17).

Ale hlavně, že nepropadne z programování, nebo co to je za předmět. Také bych po slově poradit čekal nějakou specifikaci části, která dělá problémy. Ne že by nebylo jednodušší (v tomto případě i pro nás) napsat mu těch pár řádek textu, než složitě vysvětlovat něco, ale přínos pro tazatele bude opravdu maximálně ten, že nepropadne a až v dalším pololetí bude dělat obdobný příklad, tak bude zase v koncích.

nejak tak,.... ja na Vysokej mal napr. v prvom ročníku Základy Inžinierstva Materiálov kde som sa učil o Blochovej stene a strednej driftovej rýchlosti elektrónov alebo o permeabilite, molárnej polazizovatelnosti a iné pičoviny, a jako programátorovi mi je to tak na hovno, jak kuchárke kvantova fyzika.

Zpět do poradny Odpovědět na původní otázku Nahoru