Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 18. 11. 2010 09:22 — Editoval paces (18. 11. 2010 09:23)

paces
Zelenáč
Příspěvky: 14
Reputace:   
 

Dobré číslo [Pascal]

Zdravim,
nemate nejaky tip. ci dokonce reseni, jak vyresit nasledujici zadani?


Číslo 612 je dobré (tzn. je dělitelné beze zbytku každou svou cifrou.) , neboť je dělitelné šestkou, jedničkou i dvojkou. Naproti tomu číslo 512 není dobré, jelikož není dělitelné pěti. Napište funkci, která pro zadané číslo C (typu integer) určí, zda je toto číslo dobré.
S pomocí této funkce napište program, který pro dané kladné celé číslo N (N není větší než 10000) určí a vypíše nejmenší dobré číslo vyšší než N. Například pro vstup N = 22 bude správným výsledkem číslo 24.


Diky moc za cenné rady, tipy ci reseni : )

Offline

 

#2 18. 11. 2010 14:42

septolet
Příspěvky: 334
Reputace:   
 

Re: Dobré číslo [Pascal]

↑ paces:

Tvoje funkce by mohla vracet bool. Například v případě, že je číslo dělitelné všemi svými ciframi, tak vracet true, jinak false. Víš, jak tohle napsat?

Offline

 

#3 19. 11. 2010 10:00 — Editoval Honzc (19. 11. 2010 10:02)

Honzc
Příspěvky: 4592
Reputace:   243 
 

Re: Dobré číslo [Pascal]

↑ paces:
Např. takhle:(v Pascalu)

Offline

 

#4 19. 11. 2010 23:41

paces
Zelenáč
Příspěvky: 14
Reputace:   
 

Re: Dobré číslo [Pascal]

↑ Honzc: diky moc za tip jak to resit, ale nevim jestli se mi to zdá ale toto není psané pro pascal ne? nejaké delphi nebo tak neco
viz. {$APPTYPE CONSOLE} ci   s := IntToStr(c) to lze pouuzit v pascalu?? DIKY

Offline

 

#5 19. 11. 2010 23:48

paces
Zelenáč
Příspěvky: 14
Reputace:   
 

Re: Dobré číslo [Pascal]

↑ septolet: ok diky za napad...tim si nejsem jist, ale uvidim co se da delat ;-)

Offline

 

#6 20. 11. 2010 10:47

Honzc
Příspěvky: 4592
Reputace:   243 
 

Re: Dobré číslo [Pascal]

↑ paces:
Nevím jestli Pascal obsahuje funkci IntToStr(cislo) (myslím, že ano, ale nejsem si jistý)
Tak místo s := IntToStr(c) použij proceduru Str(c,s)

Offline

 

#7 05. 12. 2010 22:05 — Editoval Majki (05. 12. 2010 22:31)

Majki
Příspěvky: 120
Reputace:   
 

Re: Dobré číslo [Pascal]

můžu mít dotaz
místo  StrToInt(s[i])
se v pascalu dá dát co za proceduru?

a ještě proč mi nefunguje
např. if s[i] ='a' then ...
i když a je jednociferné číslo typu integer, nebo to se může jen pro konkrétně zadané číslo tedy např '0' či '2'?
děkuji

Offline

 

#8 06. 12. 2010 10:55 — Editoval Honzc (06. 12. 2010 11:00)

Honzc
Příspěvky: 4592
Reputace:   243 
 

Re: Dobré číslo [Pascal]

Vždyť jsem ti už napsal o 2 příspěvky nahoru

Honzc napsal(a):

↑ paces:
Nevím jestli Pascal obsahuje funkci IntToStr(cislo) (myslím, že ano, ale nejsem si jistý)
Tak místo řádku s := IntToStr(c) použij (proceduru) Str(c,s)

Pokud porovnáváš string, tak musíš porovnat číslo zapsané jako string.
Tedy s[i]='0';

Offline

 

#9 07. 12. 2010 16:57

Majki
Příspěvky: 120
Reputace:   
 

Re: Dobré číslo [Pascal]

↑ Honzc:
já nemyslím IntToStr , ale StrToInt

Offline

 

#10 07. 12. 2010 21:41

Olin
Místo: Brno / Praha
Příspěvky: 2823
Reputace:   81 
 

Re: Dobré číslo [Pascal]

V nějakých prastarých Pascalech lze na konverzi řetězce na číslo použít proceduru Val.

Jinak lze StrToInt běžně nalézt v unitce SysUtils.


Matematika = královna věd. Analýza = královna matematiky. (Teorie množin = bohatství matematiky.)
MKS Náboj iKS

Offline

 

#11 08. 12. 2010 10:45 — Editoval Honzc (08. 12. 2010 11:04)

Honzc
Příspěvky: 4592
Reputace:   243 
 

Re: Dobré číslo [Pascal]

↑ Majki:
No jo já neumím číst.
Takže Jak psal ↑ Olin: použij proceduru Val - viz.
Val(S:string;var V;var Code:integer);
"Převede řetězec S na číslo V. V případě chyby nastaví v Code číslo pozice znaku, který nelze převést."

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson