Pomoc oko 2 zadatka iz algoritama

Pomoc oko 2 zadatka iz algoritama

offline
  • Més que un club
  • Glavni vokal @ Harpun
  • Pridružio: 27 Feb 2009
  • Poruke: 3898
  • Gde živiš: Novi Sad,Klisa

1.Nacrtati blok dijagram algoritam koji diskutuje resenja jednacine ax+b=0 za razne vrednosti parametara a i b

2.U dekartovom koordinatnom pocetku nalazi se tenk koji ispali granatu pocetnom brzinom v0 pod uglom alfa,u odnosu na horizont. Na rastojanju d od tenka nalzi se zid visine h. Nacrtati blok dijagram algoritam koji ce utvrditit da li ce se granata pogoditi zid,te ako hoce na izlazu ispisati visinu na kojoj je granata pogodila zid,kao i vreme koje je proteklo od ispaljenja granate do pogotka u zid.


Ovaj drugi zadatak je nenormalno tezak... Mi nikakve formule iz fizike za ovako nesto nismo ucili... zato mi i predstavlja veliki problem.

Ako moze neko da pomogne oko resavanja zadataka....



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Software developer
  • Pridružio: 06 Sep 2005
  • Poruke: 3800
  • Gde živiš: Beograd

1.
Ne bi trebalo da je tesko
ax+b=0 , to ti je u stvari ax = -b , odnosno x=-b/a
dakle, treba da pazis da ti je a!=0
Sto se tice algoritma bio bi ovako nesto:
1.Ucitaj a
2.Ucitaj b
3.1. Ako je a == 0 -> deljenje nulom
3.2. Inace, x=-b/a


Ovaj drugi ne znam ni ja formulu koja ide. U principu ne bi trebao da je tezak kad imas formulu, mozda da trazis to u delu foruma za fiziku. Ne znam koliko oni koji je znaju dolaze na programiranje.



offline
  • Pridružio: 16 Jun 2005
  • Poruke: 2392
  • Gde živiš: Beograd

Za drugi zadatak jedino što realno može da se traži je kosi hitac (mada to uopšte nije prilagođeno vašem uzrastu):

y koordinatu na rastojanju d možeš naći pomoću formule:

y = h+ x * tg (alfa) - (g*x^2)/(2*V0^2*cos^2(alfa)) (ovo je poznato kao jednačina trajektorije).

h - početna visina sa koje se ispaljuje kosi hitac, za tvoj slučaj to je 0
x - vrednost koordinate x za koju tražiš y, u tvom slučaju d
g - gravitaciono ubrzanje
alfa - početni ugao

kada nađeš ovo y, ostatak je krajnje jednostavan - proveriš da li je y <= visina zida i y>0 imaš pogodak (ako je y<0 tenk nije dobacio do zida), a ako je y>visina zida onda je tenk prebacio zid.

proteklo vreme možeš naći po formuli: t = x/(V0*cos(alfa))

Dok sam ovo iskucao, setio sam se da je to verovatno mnogo lakša varijatna (koja doduše sa aspekta fizike nema puno smisla, ali je prilagođena tvom uzrastu):

y = x * tg(alfa) // ovo sam sada izveo na brzinu, ako postoji neka greška neka me neko slobodno ispravi

U slučaju da imamo pogodak, vreme ćeš naći pomoću [x/(cos(alfa))]/V0

Objašnjenje: imaš x koordinatu i imaš pravougaoni trougao koji formiraju podloga (x), visina do koje je došao hitac u koordinati x (y) i liniju koja spaja cev pod uglom alfa i tačku (x,y).

pošto su poznati x i ugao alfa možemo naći y, jer je x = h * cos(alfa), a y = h* sin(alfa) pa je onda y = x * tg (alfa).
Što se tiče vremena, standardno pređeni put (h = x/cos(alfa)) podeljeno sa brzinom kretanja (V0, pošto nema ubrzanja).

h - hipotenuza posmatranog trougla

Ako ti nešto nije jasno pitaj, onaj prvi deo zanemari, bilo mi je žao da ga obrišem, možda nekom nekada zatreba, a ti se skoncentriši na drugi deo i pitaj ako ti nešto nije jasno.
U sam algoritam nisam ulazio (treba da predvidiš i "neispravne podatke" tipa uglovi za koje je nemoguće pogoditi zid i eventualno brzina koja nije pozitivna).

Nadam se da će ti ovo pomoći Smile

offline
  • Més que un club
  • Glavni vokal @ Harpun
  • Pridružio: 27 Feb 2009
  • Poruke: 3898
  • Gde živiš: Novi Sad,Klisa

Napisano: 19 Sep 2011 21:03

Da da taj kosi hitac treba da koristimo.... znam da nam je profa tako nesto pricao a mi ga gledali ko tele u sarena vrata...

Dopuna: 19 Sep 2011 21:03

Hvala obojici Ziveli Ziveli

Dopuna: 20 Sep 2011 18:57

Evo da pitam... X mi predstavlja koju promenljivu? Mr. Green

offline
  • Pridružio: 16 Jun 2005
  • Poruke: 2392
  • Gde živiš: Beograd

Riddler ::x - vrednost koordinate x za koju tražiš y, u tvom slučaju d
Wink

Ako ima još nešto nejasno ili neko novo pitanje - tu sam Smile

Ko je trenutno na forumu
 

Ukupno su 1138 korisnika na forumu :: 45 registrovanih, 7 sakrivenih i 1086 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., aramis s, babaroga, Boris90, Brana01, brundo65, ccoogg123, CrazyDiablo, Dannyboy, djordje92sm, doloress, dozorni, hatman, HrcAk47, Joja, Još malo pa deda, karevski, Kubovac, kybonacci, Lieutenant, Marko Marković, mercedesamg, mgolub, Mi lao shu, milenko crazy north, milimoj, Millennium, Motocar, MrNo, nebkv, nenad81, nextyamb, nikoladim, Parker, prle122, Romibrat, Shinobi, sombrero, strelac07, tubular, virked, VJ, zixmix, zodiac94, Žrnov