Dobrý den, mám otázku.
Dokázal by někdo napsat program, který by řešil podobné věci? ↓↓↓
Dobrý den, mám otázku.
Dokázal by někdo napsat program, který by řešil podobné věci? ↓↓↓
Vsichni, kdo umi aspon zaklady programovani? Ktere se muze bezny clovek naucit asi za hodinu, kdyby fakt moc chtel?
Ale zadani je samozrejme k nicemu. Je tam nejaky obrazek, par krivek, a co dal? A jakou nabizis odmenu? Ceny zacinaji od 500 kc za kazdou zapocatou hodinu. Studenti ti to mozna vyresi za 2 piva, ale, to ja nejsem, muj cas je drahy. SS a VS skoly jsou vsude, staci tam zajit a poptat se.
A vis, jak to resit uplne jednoduse?
Vemes si plochu 10.000 x 10.000. Ctverec. Ten rozpulis, od rohu, k rohu a chces vedet, kolik je ta polovina?
Matematicky: S = 10k * 10k = 100M; S2 = S/2 = 50M
Graficky: Kdyz to nakreslis. Pulctverecky uplne zanedbas (bude jich presne 10.000), tak dostanes plochu 50M-10k = 49.99M Coz se velmi blizi spocitane hodnote. A jen si pocital pixely obarvene cervene. Docela slusna presnost, co rikas? :)
Na papire to muzes odhadovat, nic, 1/4, 1/3 ctverecku, 1/5, 2/3, 3/4, plny. Neboj se vyuzit cely ctvereckovany papir. nepocitej 8 jako 8cm ale jako 30cm (delka papiru), tim padem mas 4 jako 15cm. nakresli krucnici a pocitej ctverecek po ctverecku. Muzes si jako pomucku zvyraznit linie po 4 ctvereccich. a pak poscitat cele ctverice a ostatni spocitat rucne.
Jeste mne napadlo vcera jedno reseni, podobne zminenemu. Pouzit pruniky a procentualni podil.
Mam ctvereckovanou sit. Vypocitam body krivky pro x = 1, 2 .. n. A vyctvereckuji oblast, ktera mne zajima (do pole zapisi +1). Totez udelam z ostatnimi krivkami. Pak spocitam pocet ctverecku s nejvetsim cislem. Spocitam pocet vsech ctverecku. Udelam pomer. Vypocitam realnou plochu cele oblasti. Ukazka:
..................111 krivka 1
...............111111
............111111111
.........111111111111
......111111111111111
...111111111111111111
111111111111111111111
..................... krivka 2
1...................1
1...................1
11.................11
111...............111
11111...........11111
11111111.....11111111
11111111111.......... oblast, kde se nachazi vysledek, prusecik s osou x krivky 2
11111111111..........
11111111111..........
11111111111..........
11111111111..........
11111111111..........
11111111111..........
Soucet / prunik:
1111111111........111 * nechtelo se mi pocitat, ale je tam jine cislo nez 3
2111111111*****111112
2111111111**111******
221111111211*********
2221112222***********
2223322222***********
333333332211122222222
Pocet trojek (3) je 10.
Cela plocha, pocet vsech policek je 20x7 = 140.
Cela plocha, realny obsah je 4x8 = 32 jednotek
Procentualni podil trojek je 10/140 = procentualni podil obsahu hledane casti vuci cele plose.
Prepocitano na obsah realne plochy: 1/14 * 32 = 16/7 = 2.3 priblizne.
Kolik ti to vyslo matematicky? :)
Cim vice ctverecku, obdelnicku pouzijes, tim presnejsi bude vysledek. ja mel jenom 140. Pocet policek 10. Pocet oznacenych policek, prunik, je v tomto pripade strasne maly k nejakym presnejsim poctum. Odhadem bude vysledek 2.3+-2.3, protoze kazde to policko v mem 140 polickove oblasti je soucasti hranice krivek, nikoliv vyplne. Takze je velka sance, ze tam mozna z neho bude jen malinkata ploska a nebo mohlo byt nektere policko vynechano. No, proste problem vybarvovani ctverecku, no.
.... prazdny ctverecek
....
....
....
.... plny ctverecek? zvolim si NE
....
....
...x
.... plny ctverecek? zvolim si NE
....
...x
..xx
...x plny ctverecek? zvolim si ANO
..xx
..xx
.xxx
A tim padem 50% plochy je zaokrouhleni.
A v mem prikladu mam takovych nejistych ctverecku 10, vsechny,
shodou okolnosti :) Diky malemu meritku
V tom obrazku, obecny vzorecek je:
- prusecik kruznice a primky, bod A
- prusecik kruznice a oxy x (primky), bod B (shodou okolnosti je to [4,0])
- S = integral primky 0 az Ax + integral kruznice Ax az Bx
Primka ma body: [0,0] a [8,4]
y = kx + q
0 = k0 + q => q = 0
4 = k8 + 0 => k = 2
___y = 4x___
kdyby to nula nebyla (q = 0), musel bys obe rozvnice odecist tak, aby se jeden parametr vyloucil.
Ta kruznice je
xx + yy = rr ; r = 4, to vidis z obrazku, ale, opet muzes dosadit dva body, jestli chces [0,4] [8,4]
Ale, protoze nema stred v x=0 y=0, tak tam musis pridat jeste posunuti
(x-4) (x-4) + (y-4) (y-4) = rr
(0-4) (0-4) + (4-4) (4-4) = rr
rr = 16 + 0 => r = 4
(8-4) (8-4) + (4-4) (4-4) = rr
rr = 16 + 0 => r = 4
xx + yy = 16 => ___y = odmocnina(xx - 16)___
A ty rovnice pouzijes pro ten integral a vypoceku pruseciku A a B.
----
Ale, na mat. olympiade bys pouzil ctvereckovou sit a vysledek odhadl, protoze ti daji 4 moznosti, ktere se budou vyrazne lisit.
----
A bez nejakych velkych vypoctu se da z obrazku vysledek odhadnout.
S kruhu = pi rr = 16 pi
S poloviny je 8 pi = 8 * 3.14 = 25,12
S obdelniku je 8 x 4 = 32
S obdelniku - S poloviny kruhu je 32 - 25.12 = 6.88 ... to jsou vsechny spodni casti
A ta vybarvena je zhruba mensi nez 1/4.
6.88/4 = 1.71, cili, by to mohlo byt tak 1.6-1.65-1.7 odhadem
----
Nebo, jiny odhad.
Vybarvena oblast pod primkou vypada stejne jako pod kruznici.
bod na primce (usecce [0,0], [4,8]) je od nuly v jakesi vzdalenosti. Na uhlopricku celeho obdelniku se vejde rekneme 4,7 krat.
y = 4 / 4.7
x = 8 / 4.7
S = xy/2, dvojnasobna plocha je S = xy
S = (4 / 4.7) (8 / 4.7)
S = 32 / (16+2.8+2.8+0.49) = 32 / 22.09, rekneme 22, a mozna rekneme 20, 32/20 = 1.6
32/22 bude jen o neco malo mensi.
Kdyz to porovnam s predchozim, kde bych tipoval spis 1.65, tak, pokud tam budou vyrazne odlisna cisla jako 0.6, 2.6, 3.6, tak 1.6 je jasna volba.
#9 honza572
jinak pokud by byla možnosti dá se to odhadnout od pohledu
určíš si rovnici kružnice včetně posunu středu o -r
určíš rovnici přímky z daných bodů
vypočteš si ten trojůhelník do bodu kde se kruh dotýká osy X tzn v rovnici kruhu pro y=0 v příkladu je to X=4
z rovnice přímky pro dané x vypočteš Y a následně obsah trojúhelníka v příkladu Str=4
a označenou plochu
odhadneš dle toho čverečkování je to cca 1/3 toho obsahu trojůhelníka
Kdybys např potřeboval spočítat tu druhou plochu nad přímkou podél osy Y, dalo by se to spočítat pomocí převrácené rovnice té přímky tzn x=Y/2 => y=2x
přes víkend ti můžu zkusit ty výpočty vytvořit pro obecné strany toho obdélnka, z toho vytvořit rovnice přímky a kruhu návazně průsečíky a integrály.ploch
#1 honza572
ten program samozřejmě existuje a menuje se Derive a taky Maple a Methematica a MathCad a Matlab
to co potřebuješ tomu se říká Integrování ... ale to se učí až v posledním ročníku na gymplu nebo na technických vš v prváku ... takže do té doby to pro tebe bude jen "neznámý svět" .........
ten tvuj případ se dá řešit jako součet plochy trojuhelníka a integrálu, kde plocha se ohraničena křivkou kružnice ...
Kdyz to bude, jako na obrazku, ...
obdelnik oznaci ABCD, prunik kruznice a usecky jako M, prunik kruznice a osy x jako N.
- S1 = ctverec ANN'D je ctverec = 4x4 = 16
- S2 = a soucasne je tam 1/4 kruhu = pi rr
- S3 = S1 - S2 = ctverec - cast kruhu = 16 - 1/4 PI rr
- S4 = trojuhelnik ABC = 4 x 8 / 2= 16
- S5 = cast kruhu vytvorena useckou MC, na to je nejaky vzorecek pro kruhovou vysek, usec nebo tak neco
S5 = 1/2 rr (arc alfa - sin alfa)
S5 = PI rr * alfa/360
- S6 = S4 - S3 - S5 je vysledek
Jenze S5 neni takovy problem, jak se zda.
C = [8,4]
A = [0,0]
2 strany jsou r r a treti je prepona MC, r = 4.
Navic, uhel beta a gama jsou stejne a jsou z trojuhelniku ACD, tg beta = 4/8 = 1/2. A tez cos beta = 4 / (MC)
alfa = 180 - 2 x beta.
Ale, pokud mas tabulky, tg pro 1/2 je 25.6 ... https://www.vypocitejto.cz/…tangens.html
To je asi jediny zadrhel, kde ti nestaci znalosti ZS a mozna to nenajdes v tabulkach. Zbytek uz si dopocitas.
Stale mi to vrtalo hlavou, tak jsem nakonec precijem udelal program.
Program si stahnes pres prohlizes, ulozit stranku jako, editovat muzes v poznamkovem bloku windows.
https://mlich.zam.slu.cz/js-geometrie/js-geometrie.htm
Co te zajima nejvic je toto cislo:
"b_plocha8x4":1.2520161295774328 (zoom je 50, cili plocha 200x400 pixelu)
sum.a = soucet vypocitane hodnoty pro x = 1, 2, 3
sum.b = soucet zaokrouhlene vypocitane hodnoty (pro zobrazeni pixelu)
Rozdil je asi 25, to je proti hodnote 3000 zanedbatelne.
Tady pridavam rozdil pro zoom 50 a 200, hodnoty se moc nelisi
zoom = 50
{"a":3130.0403239435823,"b":3055,"plocha":80000,
"a_plocha":"3.9125%",
"b_plocha":"3.8187%",
"a_plocha8x4":1.2520161295774328}}
zoom = 200
{"a":50079.70768613711,"b":49770,"plocha":1280000,
"a_plocha":"3.9124%",
"b_plocha":"3.8882%",
"a_plocha8x4":1.2519926921534277}}
V kodu najdes matematicke reseni, ale to mam spatne, nekdy to spravim :) Nicmene, sel jsem pres trojuhelniky a potrebujes jen znat vysledky odmocnin. Ty by slo celkem presne odhadnout. nicmene, je to spatne, nekde je tam chyba, vychazi mi uplne jina cisla nez detekuje program.
#7 honza572
Dá se to spočítat i analyticky. Vezmeš si jako základ plochu spodního trojúhelníku. Od pohledu je to 16. Od něj odečteš plochu kruhové úseče a ještě odečteš plochu spodního rohu Ten je rozdílem plochy čtverce o straně 4 a a plochou čtvrtkruhu. Pak už jen dosadíš.
Ale, musis znat vzorecek na kruhovou usec :) Tvuj postup je sikovny.
Napadlo mne pri tom, resit to jeste jinak. Modra cast je 1/6 kruhu a trojuhelnik r-r-r.
A zelenou uhloprickou jsem rozdelil obdelnik na 4 casti.
Připojen obrázek.Takze, pak je to:
S1 = 1/6 kruhu
S2 = modry trojuhelnik
S3 = S1 - S2 = dolni oblouk
S6 = (S4) spodni 1/4 celeho obdelniku MINUS (S5) plocha cerno-zeleno-modreho trojuhelniku uvnitr modreho
S = (S6 - S3) / 2
---
S1 = 1/6 pi r r
S2 = r/2 v = r/2 (rr - rr/4) = r/2 odm(3)
S3 = S1 - S2 = 1/6 pi r r - r/2 odm(3) = 8/3 pi - 2 odm(3)
S4 = 2 x 4
S5 = r/2 x r/4 ... ten obsah vim, protoze pomer stran je 1:2, podobnost trojuhelniku, a polovina modre je r/2
S6 = S4 - S5 = 8 - 2 = 6
2 x S = (S6 - S3) / 2 = 6 - (8/3pi - 2 odm(3)) = 6 - (8 - 3.4) = 6 - 4.6 = 2.4
S = 1.2 (melo vyjit 1.25)
pro zjednoduseni:
pi je jen 3.14 (rekneme 3)
odm(3) je 1.73 (rekneme 1.7)
Kdyz dosadim presne, tak vyjde: 6 - (8/3pi - 2 odm(3)) = 6 - (8.378 - 3,464) = 6 - 4,915 = 1,085... polovina 0.5 (melo vyjit 1.25) takze, je mozne, ze tam mam nekde chybu :)
Ja mam pocit, ze tohle jsem mel nekde na prijimackach na stredni nebo na vysokou a ze tam kalkulacka moc nebyla povolena, protoze uz tehdy umeli pracovat s grafy a tyhle veci pocitat :)
Myslim, ze tam se to resilo odhadem, prave pomoci te ctvereckove mrizky
#18 MilanL
jinak je to druhý postup:
z tětivy lze vypočítat úhel t=2r sin (α/2) => sin(α/2)=t/(2r) pro určení α použijeme tabulky
t = 2* (r - X průsečíku)
obsah výseče pak Sv = Pi r r α / 360 když je α ve stupních, pokud v rad použije se 2Pi lze pak zjednodušit na r r α / Pi
dále se vypočte trojúhelník nad tětivou výška Vt = r - Y průsečíku
St = (t - Vt) / 2 lze zjednodušit na (r - X průsečíku)*(r - Y průsečíku)
obsah úseče Su = Sv - St
vypočteme obdélník So = (r - X průsečíku) * Y průsečíku
a nakonec obsah pod kružnicí Sk = So - Su/2
z příkladu:
t = 2* (4-16/10) = 48/10 = 4,8
sin (α/2) = 4.8/(2*4) = 4,8/8 = 0,6 => z tabulek 36,87° = α/2 => α=73,74
Sv= Pi * 4 * 4 * 73,74 / 360 = 10,3
St = (4-16/10)*(4-8/10) = 24/10 * 32/10 =768/10=7,68
Su = 10,3 * 7,68 = 2,62
So = (4-16/10) * 8/10 = 24/10 * 8/10 = 192 / 100 = 1,92
Sk = 1,92 - 2,62/2 = 1,92 - 1,31 = 0,61
k tomu se přičte trojúhelník [0;0] až průsečík [16/10;8/10]
St2 = 16/10*8/10 /2 = 128/100 /2 = 64/10 = 0,64
S = Sk + St2 = 0,61 + 0,64 = 1,25
Jako, matematicky, se znalosti stredoskolske matiky, jde ten prusecik P spocitat jako:
kruznice (pro zjednoduseni si bod [0,0] posunu do S)
xx + yy = rr
xx + yy = 16
uhlopricka
y = kx + q
[4,0] : 0 = 4k + q => q=-4k
[-4,-4]: -4 = -4k + q => -4 = q + q => q = -2
q = -4k => -2 = -4k => k = 2
y = 2x - 2
prusecik (prunik)
xx + yy = 16
y = 2x - 2
xx + (2x-2) * (2x-2) = 16
xx + 4xx + 4 + 2*2*(-2)*x = 16
5xx - 8x - 12 = 0
D = bb - 4ac = (-8)*(-8) - 4*5*(-12) = 64 + 240 = 304
x12 = (-b +- odm(D)) / 2a
x12 = (--8 +- odm(304)) / 2*5
zajima te cast, kde bude x<0
// ta odmocnina bude mezi 10*10=100 a 20*20 = 400,
// tipnu si treba 16 [kalk. 17.44], x2 = -0.8,
// podle obrazku by to melo vyjit tak kolem -2.2 az -2.4)
// takze tam mam nekde chybu, ale principialne takhle nejak :)
A potom prusecik pouzijes pro integraly. jestli pouzijes stejne krivky,
tak integral vztahuje obsah k nulove ose, takze vyslednou prochu bude
treba odecist od ctverce 4 * 4, abys dostal jen tu vybarvenou casy
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku