6. díl - Učíme se počítat pomocí Batch průměr

Učíme se počítat pomocí Batch průměr

Upozornění: článek je starý a bude v nejbližší době aktualizován

Vítejte u dalšího dílu o souborech .bat... V tomto díle se naučíme počítat. Proměnné už umíme,takže by to mělo být jednoduché :) .

Vytvoříme si například prográmek, který spočítá průměr z 5-ti čísel. Pokud někdo neví, jak se průměr počítá - sečtou se všechna čísla a pak se vydělí počtem čísel,bnapř. průměř čísel 1,2,3,4,5 je 1+2+3+4+5=15/5=3 - průměr je 3

Začneme jako obvykle :

@echo off
title Pocitame prumer

Teď to bude trochu nudné - jdeme vytvářet proměnné:

set /p prvni=Zadejte prvni cislo :
set /p druhe=Zadejte druhe cislo :
set /p treti=Zadejte treti cislo :
set /p ctvrte=Zadejte ctvrte cislo :
set /p pate=Zadejte pate cislo :

Výborně,proměny konečně hotové :) Nyní se vrhneme na trochu zábavnější část prográmku - počítání : na počítání použijeme příkaz

set /a prumer=

"/a" slouží pro počítání a "set" tam je proto,že se to uloží do proměnné. Takže, napřed vše sečteme:

set /a soucet=%prvni%+%druhe%+%treti%+%ctvrte%+%pate%

Spočítáme průměr :

set /a prumer=%soucet%/5

A vypíšeme výsledek -

echo Prumer je %prumer%
pause

A je to hotovo...

Celkový kód:

@echo off
title Pocitame prumer
set /p prvni=Zadejte prvni cislo :
set /p druhe=Zadejte druhe cislo :
set /p treti=Zadejte treti cislo :
set /p ctvrte=Zadejte ctvrte cislo :
set /p pate=Zadejte pate cislo :

set /a soucet=%prvni%+%druhe%+%treti%+%ctvrte%+%pate%
set /a prumer=%soucet%/5
echo Prumer je %prumer%
pause

Pokud by někdo něčemu nerozuměl, ptejte se. Pro jistotu přikládám zdroj.


 

Stáhnout

Staženo 355x (332 B)
Aplikace je včetně zdrojových kódů

 

  Aktivity (1)

Článek pro vás napsal Daniel Vítek
Avatar
Primárně PHP programátor, rád si hraje s Arduinem a píše články do sekce Batch.

Jak se ti líbí článek?
Celkem (2 hlasů) :
55555


 



 

 

Komentáře
Zobrazit starší komentáře (4)

Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Daniel Vítek:

Jde to udělat,ale bylo by to složitější.. Možná to jde jinak,ale jak myslím já tak by to bylo horší :D

 
Odpovědět 5.6.2012 16:15
Avatar
adam
Člen
Avatar
adam:

moc děkuji za odpovědi :) :D

 
Odpovědět 5.6.2012 16:22
Avatar
tomas
Neregistrovaný
Avatar
tomas:

Promin ale nedaji se nejak dat do batche desetinne cisla?
Nevim si s tim rady

 
Odpovědět 25.11.2012 17:12
Avatar
Martin Bruna
Člen
Avatar
Odpovídá na tomas
Martin Bruna:

Já to řešil takto

set cislo=0
set /P cislo=Napiste polomer kruhu:
set /a cislo=%cislo%*%cislo%*314
set /a b=%cislo:~-2%
set /a a=%cislo:~-0,-2%
if %b%==0 (
echo Obsah kruhu je %a% cm*cm
pause
goto Menu
)
echo Obsah kruhu je %a%.%b% cm*cm
pause

ale nevím jestli je to řešení i pro váš případ

 
Odpovědět 25.11.2012 17:41
Avatar
Tomas
Neregistrovaný
Avatar
Odpovídá na Martin Bruna
Tomas:

Spis sem to potreboval pri zadavani.:(

 
Odpovědět 28.11.2012 12:47
Avatar
MARTIN
Neregistrovaný
Avatar
MARTIN:

Jak se to vyplnuje aby to fungovalo?
Díky. :)

 
Odpovědět 14.2.2013 13:10
Avatar
Kit
Redaktor
Avatar
Kit:

Také není špatné si do Windows nainstalovat Bash z balíku unxutils.zip. Kromě shellu je tam hromada dalších skvělých nástrojů pro práci s textem. Zkušenosti získané v tomto balíku se ti můžou hodit, až přejdeš na nějaký linuxový OS.

Bash je mnohem nadupanější než cmd, ale stále je to interpretr. Dají se v něm psát i vícevláknové aplikace.

Odpovědět 14.2.2013 16:56
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Tomas
Martin Bednář (xbedm01):

To je dost nevýhoda batche. Desetinná čísla opravdu moc nezvládá :/

Odpovědět 11.5.2013 9:08
I bez motta se dá žít
Avatar
Quark66
Člen
Avatar
Odpovídá na Kit
Quark66:

No bude to znít neuvěřitelně, ale u jedné bankovní firmy vysloveně vyžadovali, aby kandidát na práci uměl programovat v bash. Je o tom knížka asi 200 stran. Takže zní to divně, ale i to prosté skriptování může člověka uživit.

 
Odpovědět  +1 13.6.2013 15:47
Avatar
Kit
Redaktor
Avatar
Odpovídá na Quark66
Kit:

Bash je, jak zkratka napovídá, jen prostředí pro spouštění programů. Viděl jsem v něm napsány integrační testy komerčních aplikací, sám v něm také programuji. Je dobré se v něm vyhýbat práci s polem a cyklům, jinak je ta aplikace pomalá a neefektivní.

Odpovědět 13.6.2013 16:00
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
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 10 zpráv z 14. Zobrazit vše