šachovnice ve small basicu

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Anonym_

šachovnice ve small basicu

Příspěvek od Anonym_ »

dobrý den,

potřebovala bych poradit, jak naprogramovat program ve Small Basicu, který mi bude po zadání velikosti okna vykreslí šachovnicovou síť.

Předem děkuji za radu! :smile:
Uživatelský avatar
domitea
Tvůrce článků
Příspěvky: 1971
Registrován: 24 čer 2009 19:46
Bydliště: Královehradecký kraj
Kontaktovat uživatele:

Re: šachovnice ve small basicu

Příspěvek od domitea »

Kód: Vybrat vše

rectangle = Shapes.AddRectangle(50,50)
Shapes.Move(rectangle, o kolik se to posunout o x, o y)


přes cyklus vytvoříš šachovnici
Anonym_

Re: šachovnice ve small basicu

Příspěvek od Anonym_ »

děkuji za radu, jsem ale úplný začátečník (tedy spíš neznalec, co neposlouchá o hodinách :D) a jsem ztracená i ve Vaší radě. pokud byste měl/a čas, prosím o přiblížení Vaší pomoci. :))
Uživatelský avatar
domitea
Tvůrce článků
Příspěvky: 1971
Registrován: 24 čer 2009 19:46
Bydliště: Královehradecký kraj
Kontaktovat uživatele:

Re: šachovnice ve small basicu

Příspěvek od domitea »

Kód: Vybrat vše

GraphicsWindow.Show()
For x = 1 To 8
For i = 1 To 8
  GraphicsWindow.DrawRectangle(50 * i,50 * x,50,50)
  endFor
EndFor


x a i určují počet políček - šachovnice

Proč něco takového(jednoduchého a v ČJ) neexistovalo před asi sedmi lety - stále se učím :lol:
Anonym_

Re: šachovnice ve small basicu

Příspěvek od Anonym_ »

děkuji moc. :) pokud budu ještě předtím chtít zadat velikost okna obrazovky, jak po mě učitel žádá, k čemu to bude dobré a jak to udělám? a ještě bych asi měla mít některá políčka vybarvená černě, některá ne.

proč vůbec existuje na naší škole povinná informatika, vážně mi kazí průměr! :D

jste vážně moc chytrý/á, jsem Vám vděčná! :)
Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7408
Registrován: 23 pro 2010 09:23

Re: šachovnice ve small basicu

Příspěvek od faraon »

Ještě na začátku doplň zadání velikosti té šachovnice, třeba takhle nějak:

Kód: Vybrat vše

TextWindow.Write("Zadej velikost strany: ")
strana = TextWindow.Read()


Když místo těch x a i dáš proměnnou strana, mělo by to udělat čtvercovou síť podle tvé volby.

Pár návodů do začátku najdeš tady:
http://download.microsoft.com/download/ ... c_Uvod.pdf
nebo tady:
http://download.microsoft.com/download/ ... 0Czech.pdf
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)
Anonym_

Re: šachovnice ve small basicu

Příspěvek od Anonym_ »

Faraon: děkuji moc. jen nevím, jak to myslíte s tou proměnnou. potřebovala bych šachovnici černobílou a přes celou obrazovku, což se asi řeší tím, že zadám právě velikost okna. ať zadávám velikost strany jak chci velkou, šachovnice vypadá pořád stejně. asi Vám to musí připadat vtipné, řešit takovéhle hloupé dotazy. :D
Uživatelský avatar
domitea
Tvůrce článků
Příspěvky: 1971
Registrován: 24 čer 2009 19:46
Bydliště: Královehradecký kraj
Kontaktovat uživatele:

Re: šachovnice ve small basicu

Příspěvek od domitea »

Velikost okna je vlastnost Width a Height (GraphicWindow.Height - jako výška a šířka v EN) s tím průměrem nestraš, my máme ve škole 13 předmětů z čehož je 9 počítačových :lol:

Edit: pustím se do toho faraone :wink: a hlopé nejsou, na začátečnici :smile:
Anonym_

Re: šachovnice ve small basicu

Příspěvek od Anonym_ »

ještě, že jsem na gymplu a informatiku máme naposledy letos. jinak bych vážně propadla! :D
vykoumám to zítra a ještě se určitě ozvu s nějakým problémem. :D

zatím díky moc! :)
Uživatelský avatar
domitea
Tvůrce článků
Příspěvky: 1971
Registrován: 24 čer 2009 19:46
Bydliště: Královehradecký kraj
Kontaktovat uživatele:

Re: šachovnice ve small basicu

Příspěvek od domitea »

Kód: Vybrat vše

TextWindow.Write("Velikost okna? ")
strana = TextWindow.Read()
GraphicsWindow.Show()
For x = 1 To strana Step 1
  For i = 1 To strana step 1
    zbytekpox = Math.Remainder(x,2)
    zbytekpoi = Math.Remainder(i,2)
    If zbytekpoi = 0 And zbytekpox = 1 then
      GraphicsWindow.FillRectangle(50 * i,50 * x,50,50)
    ElseIf zbytekpoi = 1 And zbytekpox = 0 then
      GraphicsWindow.FillRectangle(50 * i,50 * x,50,50)
    Else
      GraphicsWindow.DrawRectangle(50 * i,50 * x,50,50)
    EndIf
  endFor
EndFor
GraphicsWindow.Width = (strana + 2) * 50
GraphicsWindow.Height = (strana + 2) * 50


Barvičky si určitě upravíš podle toho druhého návodu, co ti dal faraon :wink:
Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7408
Registrován: 23 pro 2010 09:23

Re: šachovnice ve small basicu

Příspěvek od faraon »

Lucka123 píše:jak to myslíte s tou proměnnou...


Proměnná je místo v paměti, kam se ukládá nějaká hodnota, která se bude při zpracování měnit. Aby se do programu nemusela pokaždé zadávat nějaká adresa, tak se každé proměnné dá určitý název, domitea použil písmena x a i, já rovnou celé slovo strana. Takže když do té proměnné zadáš nějaké číslo, třeba 8, bude to znamenat že chceš mít šachovnici 8x8 čtverců.

Koukám že domitea už má program hotový, tak jen doplním jak bych řešil to střídání barev:

Kód: Vybrat vše

GraphicsWindow.BackgroundColor = "Green"
...
...
if (Math.Remainder(x,2) + Math.Remainder(i,2))=1 then
  GraphicsWindow.BrushColor = "White"
else
  GraphicsWindow.BrushColor = "Black"
endif


To by mělo udělat černobílou šachovnici na zeleném pozadí, aspoň doufám, podle toho co jsem vyčetl v tom návodu :D

Jen bych ty řádky GraphicsWindow.Width a GraphicsWindow.Height dal ještě před GraphicsWindow.Show(), tipnul bych si že takhle by na pomalejším počítači to okno mohlo po zobrazení šachovnice viditelně měnit svojí velikost, vypadalo by to divně.




Teda lituji tě že se musíš učit zrovna tohle, trochu mi uniká smysl (ne že by se například před třiceti lety na některých gymnáziích nevyučoval povinně FORTRAN), přidám jeden můj výrok v diskuzi na jiném webu, o tom který programovací jazyk je nejvhodnější pro začátečníky: :wink:

Jako pamětník osmibitových dob, s vědomím že BASIC je dodnes můj nejoblíbenější jazyk a často ho používám, prohlašuji: "Ne, nic co má společného s jakýmkoliv Basicem (zejména od Microsoftu) není vhodné pro výuku, tím méně začátečníků!". To už radši Baltík, ten napáchá méně škody.
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)
Uživatelský avatar
domitea
Tvůrce článků
Příspěvky: 1971
Registrován: 24 čer 2009 19:46
Bydliště: Královehradecký kraj
Kontaktovat uživatele:

Re: šachovnice ve small basicu

Příspěvek od domitea »

Visual Basic je opravdu hrůza, musel jsem přetrpět dva roky učení v tomto jazyce, to už jsem v té době uměl docela obstojně C# (učím se ho od sedmičky). To co jsem v C# uměl levou zadní jsem ve VB6 a .NET dával velice kostrbatě, ale už se konečně učíme C# a tam jsem se rozjel naplno :D. A C# nenadělá takovou paseku po učení, protože se použije dál :D
Odpovědět

Zpět na „Programování a tvorba webu“