Problémm s počítáním a inputem – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Problémm s počítáním a inputem – Python – Fórum – Programujte.comProblémm s počítáním a inputem – Python – Fórum – Programujte.com

 

RIPR
~ Anonymní uživatel
4 příspěvky
21. 3. 2009   #1
-
0
-

Začínám se učit s Pythonem, ale narazil jsem na problém.

import random

a = random.randint(1, 10)
b = random.randint(1, 10)
c = a * b

print("Kolik je", a, "x", b, "?")

d = input()

if d == c:
print("Spravne!", a, "x", b, "=", c)
else:
print("Spatne!", a, "x", b, "je", c)



Takhle jsem napsal program na zkouseni pro lekci 2 (vim jak by se dalo udelat to ostatni, nekolikrat vyzkouset atd., ale proste se nedostanu pres tadyten problem). Nemuzu donutit program, aby input vzal jako d a porovnal ho s c. Napisu zpravnej vysledek, ale stejne to nevezme jako zpravny. Nevim co delam spatne. ZKousel jsem to dat ciste jenom jako do inputu, ale tam muzu napsat jenom jednu vec, vic jich nevezme, jinak to napise tohle.

input expected at most 1 arguments, got 5

Uz nevim co s tim mam udelat abych to prinutil, aby to fungovalo.

Nahlásit jako SPAM
IP: 90.176.131.–
Quiark0
Věrný člen
21. 3. 2009   #2
-
0
-

Předpokládám, že používáš Python 3 (pokud ne, tak místo input bys měl používat raw_input).

Narážíš na důležitou věc a tou jsou typy. Proměnná má vždy nějaký typ dat, které obsahuje (typy = celé číslo, desetinné číslo, písmena, bod, komplexní číslo, ...). input vrací vždy proměnnou typu "písmenka" (string), protože koneckonců na ten vstup ty písmenka píšeš. No a proměnná typu string obsahující jedno písmenko a sice 3 se holt nerovná proměnné typu celé číslo hodnoty 3.

Tedy potřebuješ z toho stringu udělat číslo (int). To se dá udělat takto:

int(x)

kde x je proměnná typu string. Taky si můžeš vyzkoušet, co to udělá, když x bude obsahovat něco, co není desetinným zápisem čísla (laicky řečeno co to udělá když se pokusíš převést "blabla" na číslo).

Nahlásit jako SPAM
IP: 193.86.140.–
RIPR
~ Anonymní uživatel
4 příspěvky
21. 3. 2009   #3
-
0
-

Aha to jsem nevedel... Bohuzel jsem ted nenasel nic na webu, kde by mi byly ty typy vysvetleny, takze kam mam dat ten dalasi radek? Zkousel jsem pod to, ale nefunguje to a nad tim to hazi error.

Nahlásit jako SPAM
IP: 90.176.131.–
Quiark0
Věrný člen
21. 3. 2009   #4
-
0
-

K datovým typům ti asi pro začátek stačí co jsem psal. Ten příkaz int(x) se chová jako funkce - vezme jednu proměnnou a vrátí tu proměnnou převedenou na int. Ten výsledek si asi někam budeš chtít uložit, takže napíšeš

nejaka_promenna = int(d)

Tento řádek teda vezme d, kam se uložil výsledek input(), převede to na int a uloží do nejaka_promenna. A tu už pak můžeš porovnávat s jinými čísly. Teď už bys měl vědět, kam to napsat.

Nahlásit jako SPAM
IP: 193.86.140.–
RIPR
~ Anonymní uživatel
4 příspěvky
21. 3. 2009   #5
-
0
-

Diky moc, uz to funguje! :)

Nahlásit jako SPAM
IP: 90.176.131.–
Tomix20
Duch
22. 3. 2009   #6
-
0
-

x= eval(input("Zadej :"))

Nahlásit jako SPAM
IP: 89.103.168.–
Na původního Tomixe se nemůžu dostat.
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 5 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý