Počítanie – Pascal – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Počítanie – Pascal – Fórum – Programujte.comPočítanie – Pascal – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
8. 12. 2010   #1
-
0
-

Dobrý podvečer, chcel by som sa spýtať, ako "vypočítať vstup".
Príklad:
Užívateľ zadá vstup:

5+5+5+6

a výstup by bol celkový výsledok, teda 21
Ako by sa to dalo?

Ďakujem za pomoc.

Nahlásit jako SPAM
IP: 95.105.210.–
Reklama
Reklama
liborb
~ Redaktor
+18
Guru
9. 12. 2010   #2
-
0
-

Pokud je to jen sčítání, tak stačí projít zadaný vstup (řetězec - pole znaků) v cyklu a zjišťovat čísla, operátory a provádět mezisoučet.

Nahlásit jako SPAM
IP: 91.203.96.–
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
9. 12. 2010   #3
-
0
-

Bol by prosím aj nejaký príklad?
Ďakujem :)

Nahlásit jako SPAM
IP: 87.197.16.–
Jeyekomon0
Stálý člen
9. 12. 2010   #4
-
0
-

Existuje několik variant zadání a každé se liší jak obtížností, tak způsobem naprogramování:

12 + 25 ... Pouze jedno (nebo jiný předem daný počet) sčítání.
12 - 25 ... Pouze jedna (nebo jiný předem daný počet) libovolná operace.
12 + 25 + 16 + 14 ... Libovolný počet sčítání.
12 + 25 * 16 - 14 ... Libovolný počet libovolných operací.
12 + 25 * (16 - 14) ... Libovolný počet libovolných operací s uzávorkováním.

atd. atd.
Takže pro lepší radu bych potřeboval upřesnit zadání.

Nahlásit jako SPAM
IP: 78.128.199.–
jjk
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
9. 12. 2010   #5
-
0
-

Ide mi o niečo podobné, ako je vypočítať priemer teda:
vstup by bol niekoľko známok, napríklad:

1+2+3+4+4+5

presne neurčený počet.

Nahlásit jako SPAM
IP: 95.105.210.–
Jeyekomon0
Stálý člen
9. 12. 2010   #6
-
0
-

Takže se jedná o vstup obsahující (kromě náhodného smetí) nespecifikovaný počet operací "+" a příslušný počet známek, tedy jednociferných čísel z množiny {1, 2, 3, 4, 5}.

Provedl bych to jednoduše třeba tak, jak bylo zhruba popsáno výše - prostě bych četl znak po znaku až do konce vstupu a když bych narazil na znak, který odpovídá číslu, tak bych příslušné číslo přičetl k mé pomocné proměnné.

Kostra programu by pak mohla vypadat třeba takhle:



const OrdOf_0 = 48;
OrdOf_9 = 57;
OrdOfNumbers = [OrdOf_0..OrdOf_9];
var Znak: char;

...

Sum:= 0;

while not eof do
begin
read(Znak);

if ord(Znak) in OrdOfNumbers
then Sum:= Sum + ( ord(Znak) - OrdOf_0 );
end;

Nahlásit jako SPAM
IP: 78.128.199.–
jjk
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
10. 12. 2010   #7
-
0
-

Ahoj, ďakujem za pomoc.

Nahlásit jako SPAM
IP: 95.105.210.–
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, 15 hostů

Moderátoři diskuze

 

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