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 10. 08. 2013 11:46

Petrys
Příspěvky: 41
Reputace:   
 

Jak vypočítat odpracované hodiny?

Zdravím, chci se zeptat, jak vypočítat tento příklad?

Jedna skupina lidí má hodinovou sazbu 153,78.
Druhá skupina lidí má hodinovou sazbu 76,67.

Celkový rozpočet na výplaty je 16 104,96.

Kolik hodin mohou odpracovat tyhle dvě skupiny lidí, aby se vešli do rozpočtu výplaty?
Výsledek pouze s celými čísly, nebo například 10,5... 43,5....17,5..můžeme započítat i půlhodiny.

Předem díky za odpověď

Offline

 

#2 10. 08. 2013 12:08

Formol
Místo: Praha
Příspěvky: 782
Pozice: krotitel mikroskopů (UHIEM 1. LF UK)
Reputace:   42 
 

Re: Jak vypočítat odpracované hodiny?

↑ Petrys:
Obecnější přístupy asi (=nevím o tom nic než že jsem si kdysi přešetl anotaci předmětu) poskytuje celočíselné programování. Prostou úvahou jde tvůj problém zapsat jako rovnici:
a*153.78 + b*76.67 <= 16104.96

za podmínek:
a>=0, b>=0, a=m*0.5, b=n*0.05

Nejvíce praktické je asi grafické řešení. Nakreslíš si první kvadrant roviny ab (jen kladné nebo nulové) a do něj si narýsuješ přímku s rovnicí:
a*153.78 + b*76.67 = 16104.96

průsečíky s osami si určíš tak, že si dosadíš a resp. b rovno nule a dostaneš dva body na osách:
a*153.78 = 16104.96 -> a = 104.73 (bod A)
b*76.67 = 16104.96 -> b = 210.06 (bod B)

Všechna řešení splňující zadání tedy leží uvnitř (nebo na hranici) trojúhelníku ABO. Není problém si nakreslit čtvercovou síť a všechna řešení si "vypuntíkovat" - pokud máš ovšem dostatečně velký papír, řešení je docela dost (skoro 88 tisíc možných řešení).

pozn.1: Význam mají především výsledky, které leží co nejblíže u přímky AB - ovšem tvoje zadání nezní "aby se právě vyčerpala výplata".
pozn.2: Součástí takových příkladů je obvykle hledání nejlepšího rozvržení prostředků, protože se skupiny liší nejen mzdovými náklady, ale i ziskem. Pak je to zajímavější a dokonce i užitečné;-)


Доктор сказал «в морг» — значит в морг!

Offline

 

#3 10. 08. 2013 12:12

Petrys
Příspěvky: 41
Reputace:   
 

Re: Jak vypočítat odpracované hodiny?

↑ Formol:

Děkuji, to byla velice vyčerpávající odpověď :)

A mohu se zeptat, když vezmu v potaz, že celkový rozpočet na výplaty se musí vyčerpat úplně? Není nějaký jednoduchý princip výpočtu? Popř. nemohl by jste mi říct nějaký jednoduchý výsledek?

Předem díky za odpověď

Offline

 

#4 10. 08. 2013 12:49

Formol
Místo: Praha
Příspěvky: 782
Pozice: krotitel mikroskopů (UHIEM 1. LF UK)
Reputace:   42 
 

Re: Jak vypočítat odpracované hodiny?

↑ Petrys:
Pokud se musí rozpočet vyčerpat úplně, pak tě budou zajímat jen body na přímce AB.

To se bude lépe řešit početně. Vezmeš rovnici:
a*153.78 + b*76.67 = 16104.96

a dosadíš si z podmínek a=m*0.5, b=n*0.5:

0.5*m*153.78 + 0.5*n*76.67 = 16104.96
76.89m + 38.335n = 16104.96

limity si určíš z podmínek pro a a b:
a = 104.73 -> 0<=m<=209
b = 210.06 -> 0<=n<=420

Rovnici si pak upravíš do tvaru s celočíselnými koeficienty:
76890m + 38335n = 16104960

Velká čísla se pokusíš zmenšit, bohužel zde je největší společný dělitel 5, takže nic moc:
15378m + 7667n = 3220992

No a to je diofantická rovnice - postupy řešení nejsou úplně triviální, ale tady máš poměrně malý počet možností, takže nejrychlejší by bylo to otestovat "hrubou silou" skriptu v libovolném jazyce.


Доктор сказал «в морг» — значит в морг!

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson