Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Programování - úkol ve small basicu

Dobrý den, potřebovala bych s něčím pomoct - mám zadaný úkol na IVT a nevím si s ním rady, byla bych za každou radu vděčná ;) Týká se to programování, konkrétně ve small basicu, zadání je následující : vytvoř program, který postupně bude měnit barvy okna od černé až po bílé (simulace rozednívání)... Předem díky za každý užitečný komentář :)

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Je otázka, jestli je to chyba tazatelky nebo pedagoga co ji to nedokázal naučit. Nebo chyba osnov v…
Yarda 31.05.2011 07:38
Yarda
gymnázium
Martis-ta 31.05.2011 08:20
Martis-ta
Tak to je skutečně dovednost, co v životě velmi dobře uplatníte. Já si například pamatuji (ještě ze…
Yarda 31.05.2011 09:04
Yarda
s wordem/writerem sme pracovali loni, letos "je na programu" grafika, databáze, programování, tvorba…
Martis-ta 31.05.2011 16:14
Martis-ta
A to jste zacali probirat az koncem kvetna a hned jste dostali takovy priklad? To jsou dnes divne sk…
Jan Fiala 31.05.2011 17:39
Jan Fiala
Buď tazatelka lže a vykašlala se na to nebo může být chyba ve vyučujícím. Ono to tak bohužel je ve v…
marekdrtic 31.05.2011 19:00
marekdrtic
Nevykašlala jsem se na to, chyběla jsem na poslední dvouhodinovce a tento týden nemám o nic víc času…
Martis-ta 31.05.2011 23:51
Martis-ta
Kdyby jsi čas strávený s tímto dotazem a následnými odpovědmi věnovala přečtení základů Small Basicu…
Wikan 01.06.2011 09:58
Wikan
tak jsem se zasekla a bojim se, že sem na mrtvým bodě... logicky by mi tenhle příkaz přišel správný… nový
Martis-ta 04.06.2011 22:55
Martis-ta
Základní princip je správný, ale takhle konkrétně to opravdu nejde. i = 0 start: GraphicsWindow.Bac… nový
Wikan 04.06.2011 23:25
Wikan
heh "nepoužívej Goto". Tadle věta je jak virus a se s tim nakaženi skoro všichni . TO řiká každej.:-… nový
Vasekdvor 04.06.2011 23:33
Vasekdvor
Asi vědí, proč to říkají. nový
Wikan 04.06.2011 23:36
Wikan
For i = 0 To 255 Program.Delay(50) GraphicsWindow.BackgroundColor = GraphicsWindow.GetColorFromRGB(i… nový
Martis-ta 05.06.2011 10:28
Martis-ta
Zhruba tak na 50 milisekund co? Zkus popřemýšlet proč. nový
Wikan 05.06.2011 10:55
Wikan
ale když si třeba vemu jen tenhle příkaz GraphicsWindow.BackgroundColor="red" tak u toho je to to sa… nový
Martis-ta 05.06.2011 13:14
Martis-ta
For i = 0 To 255 Program.Delay(50) GraphicsWindow.BackgroundColor = GraphicsWindow.GetColorFromRGB(i… nový
marekdrtic 05.06.2011 14:37
marekdrtic
je to furt stejný... nový
Martis-ta 05.06.2011 18:36
Martis-ta
Tak to bude nejspíš jenom na tvém počítači, u mě to teda nedělá. nový
Wikan 05.06.2011 18:39
Wikan
U mě taky nejdřív blikne bílá. nový
Tomix 05.06.2011 19:32
Tomix
Tak fajn =) Moc děkjuju za pomoc !!! poslední
Martis-ta 05.06.2011 20:51
Martis-ta
Za jednu dvojhodinovku nepreberiete zaklady a pokrocilejsie veci vo visual basicu, rovno povedz ze s… nový
shiro 01.06.2011 10:48
shiro
Ne ve visual basicu, ale ve small basicu, nauc se cist. Podle me se to za dve hodiny opravdu probrat… nový
viperDavid 03.06.2011 21:20
viperDavid
Slečno, a Google jste už probírali? blogs.msdn.com smallbasic.com smallbasic.com ... a to všechno… nový
Jack 03.06.2011 22:23
Jack

Tak to je skutečně dovednost, co v životě velmi dobře uplatníte. Já si například pamatuji (ještě ze SVVŠ), jak se řekne německy jedním slovem "Množství mléčné bílkoviny".

Kdyby vás tam raději učili používat MS Office.
Schválně: Pokud budete psát vícestránkový dokument a budete potřebovat číslovat stránky od páté stránky a aby číslování začalo číslem 8725, naučili vás to?
Pokud ne, vyřiďte vašemu pedagogovi, že vás nemá otravovat 3,14čovinami, ale učit vás něčemu užitečnému. Že mu to vzkazuji.

Buď tazatelka lže a vykašlala se na to nebo může být chyba ve vyučujícím. Ono to tak bohužel je ve velké části škol. Díky za to, že aspoň já mám rozumnýho učitele IKT, který učí základy wordu, excelu, inkscapu, základy úpravy fotek v GIMPu, základy editace videa, od každého trochu, ale pořádně a vysvětluje to jak pro čtyřletý děcko :-), takže tomu rozumí všichni. Většinou je to asi tak, že kdo to umí, tak pracuje v nějaké programátorské firmě nebo je freelancer a ti, co se neuplatnili nikde, to učí ve školách. Potom je taky skupina učitelů, kteří nutí učit se nabídky ve Wordu, Excelu atd. nazpaměť!!! Další skupina zase zatuhla někdy před desíti lety a nejmodernější procesor je pro ně Pentium III nebo zavírání křížkem ničí operační systém. Tím nechci ty učitele nijak ospravedlňovat, kvalita školství postupně upadá, někdy se sám sebe ptám jestli jsem fakt na gymnáziu nebo ve zvláštní škole. Příchozí prváci nemají žádné tušení třeba o Pythagorově větě (natož napsat větu bez chyby nebo vědět v jakém století byla druhá světová válka) a když po mě něco chtějí, tak se zeptám "A co umíš, ať můžeme navázat." a oni suše odpoví "Nic, já absolutně netuším.". Místo povinné maturity z češtiny by se mělo zavést něco jako "základní znalosti", kde by byl diktát z češtiny, slohová práce, nějaká beletrie, kousek matiky, kousíček fyziky, chemie, něco hlavně o české a část o zahraniční historii, zeměpisu, slavných českých osobnostech (kolik mladých lidí dnes ví bez Wikipedie třeba o geniálním profesoru Holém?), prostě základní znalosti, které by měl vzdělaný člověk mít. Není to chyba těch dětí, chybu vidím hlavně v současném systému a částečně i v rodičích. Systém a rodiče je nenaučili respektovat autoritu a vykonávat povinnosti. Pokud učitel nedejbože dá facku spratkovi, je pak společností označen za tyrana a dohnán k sebevraždě (nedávno se stalo). Pokud výrostka slovně výrazněji napomene, spratek se schová za tatínka, ten dojde do školy a učitel má průser. I když je to občas chyba učitele, že se žák něco nenaučil, většinou je to chyba žáka (špatně vychovaného systémem a rodiči). Ale učitel nemá žádnou páku na to, aby ho donutil. Nedodrželo se jen jediného pravidlo Komenského - když nepomůže dobré slovo, pomůže rákoska. A takhle to bohužel dopadlo.

Nevykašlala jsem se na to, chyběla jsem na poslední dvouhodinovce a tento týden nemám o nic víc času, mám tu zahraniční návštěvu, tak se škole nestíhám moc věnovat... Obecně s počítači peru dost často a teď jak vidno svou bitvu prohrávám. V profesoru chyba není, to spíš asi ve mně. Poradil by mi teda, prosím, někdo ? Jak se mění barvy - to je tam mám vypisovat nebo jak ?

Kdyby jsi čas strávený s tímto dotazem a následnými odpovědmi věnovala přečtení základů Small Basicu (je i v češtině a má asi 70 stránek), tak už by jsi to dávno měla. Ten "program" bude mít maximálně 4 řádky.

Ale aby jsi neměla pocit, že jsme nelidové, tak malá nápověda:

Budeš potřebovat cyklus "For", barva okna je ve vlastnosti "GraphicsWindow.BackgroundColor", budeš ještě potřebovat metodu "GraphicsWindow.GetColorFromRGB()". A aby ten program neproběhl příliš rychle, tak je vhodné ho zpomalit metodou "Program.Delay()".

Odstíny šedi jsou takové barvy, které mají stejné hodnoty ve všech třech složkách RGB.

tak jsem se zasekla a bojim se, že sem na mrtvým bodě... logicky by mi tenhle příkaz přišel správný ale počítač mi ho prostě neuzná (zvýrazněná část je podle něj špatně) :

i = GraphicsWindow.GetColorFromRGB(0,0,0)
start:
GraphicsWindow.BackgroundColor = i
i = i+(1,1,1)
If i = (255,255,255) Then
Goto start
EndIf
Program.Delay(2)

RGB se musí načítat vždycky každý po jednom aby to bylo jako rozednívání.... nenapadá mě jak to ale udělat správně. =/

Základní princip je správný, ale takhle konkrétně to opravdu nejde.

i = 0
start:
GraphicsWindow.BackgroundColor = GraphicsWindow.GetColorFromRGB(i,i,i)
i = i + 1

Nepoužívej Goto, cyklus For je mnohem lepší.
Zkontroluj si podmínku, za jaké má cyklus pokračovat, takhle to nepůjde.
Zpoždění musíš dát dovnitř cyklu, jinak ti to zpomalí jenom úplný konec programu.

For i = 0 To 255
Program.Delay(50)
GraphicsWindow.BackgroundColor = GraphicsWindow.GetColorFromRGB(i,i,i)
endfor

Tak takhle mi to funguje =) akorát na začátku tam vždycky problikne bílá na moment... nevim jesi to je moje chyba nebo ?

ale když si třeba vemu jen tenhle příkaz GraphicsWindow.BackgroundColor="red" tak u toho je to to samý, že tam na začátku problikne bílá, když se program spustí. To nemůže bejt těma milisekundama, tady přece nic takovýho není a stejně to tam problikne...

For i = 0 To 255 
 Program.Delay(50)
 GraphicsWindow.BackgroundColor = GraphicsWindow.GetColorFromRGB(i,i,i) 
endfor

změň na:

For i = 0 To 255 
  GraphicsWindow.BackgroundColor = GraphicsWindow.GetColorFromRGB(i,i,i) 
  Program.Delay(50)
endfor

Jestli to taky nepůjde, tak to možná je vlastnost, že změna barvy chvíli trvá, i když o tom pochybuju.

Za jednu dvojhodinovku nepreberiete zaklady a pokrocilejsie veci vo visual basicu, rovno povedz ze si na to kaslala od zaciatku. Teraz budes znasat nasledky, za blbost sa plati. Na nejaku navsetevu sa nevyhovaraj, pretoze od nej problemy mat nebudes, kdezto v skole ano. A ze nemas cas na skolu? Tvoj problem, najdi si ho. Miesto poflakovania sa a robenia blbosti sa mas ucit. Na skolu mas mat cas vzdy.

Za cas straveny vypisovanim tuna, si to uz mohla mat nastudovane a spravene. Zabudni na to, ze to bude dakto za teba robit.

Ne ve visual basicu, ale ve small basicu, nauc se cist. Podle me se to za dve hodiny opravdu probrat da, protoze small basic zas tak moc klicovych slov nema.
Spis je problem v algoritmizaci jako takove. Ale to uz se asi naucit stejne nestihne

Zpět do poradny Odpovědět na původní otázku Nahoru