abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 22:33 | Zajímavý projekt

Na Humble Bundle byla spuštěna akce Humble Book Bundle: Hacking for the Holidays by No Starch Press. Za 1 dolar a více lze koupit 5 elektronických knih, za 8 dolarů a více lze koupit 10 elektronických knih a za 15 dolarů a více lze koupit 15 elektronických knih věnovaných počítačové bezpečnosti, penetračnímu testování, forenzní analýze nebo kryptografii od nakladatelství No Starch Press. Nákupem lze podpořit organizaci Electronic Frontier Foundation (EFF).

Ladislav Hagara | Komentářů: 0
včera 20:11 | Nová verze

Po devíti měsících od vydání verze 5.4 byla vydána verze 5.5 svobodného multiplatformního softwaru pro konverzi a zpracování digitálních fotografií primárně ve formátů RAW RawTherapee (Wikipedie). Nová verze RawTherapee je k dispozici také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

Ladislav Hagara | Komentářů: 0
včera 15:44 | Upozornění

Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal varování (pdf) před používáním softwaru i hardwaru společností Huawei Technologies Co., Ltd., a ZTE Corporation. Používání těchto prostředků představuje bezpečnostní hrozbu.

Ladislav Hagara | Komentářů: 42
včera 13:33 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 159. brněnský sraz, který proběhne v pátek 21. prosince od 18:00 v restauraci Na blbým místě na adrese Pellicova 5b.

Ladislav Hagara | Komentářů: 1
včera 12:55 | Bezpečnostní upozornění

V relačním databázovém systému SQLite (Wikipedie) byla nalezena bezpečnostní chyba pojmenovaná Magellan. Chyba se týká také webových prohlížečů postavených na Chromiu podporujících WebSQL API (POC). Bezpečnostní chyba byla opravena v SQLite 3.26.0 a v Chromiu 71.0.3578.80.

Ladislav Hagara | Komentářů: 1
včera 12:11 | Nová verze

WinBtrfs, open source systémový ovladač pro systémy Microsoft Windows umožňující přístup k linuxovému souborovému systému Btrfs, byl vydán ve verzi 1.1. Přináší podporu komprese zstd (Zstandard). WinBtrfs je používán například v operačním systému ReactOS.

Ladislav Hagara | Komentářů: 0
16.12. 12:44 | Komunita

Nadace Cloud Native Computing Foundation (CNCF), jejíž cílem je usnadnit spolupráci při vývoji a zavádění nových cloudových technologií, projekt konsorcia Linux Foundation, organizovala od 10. do 13. prosince v Seattlu konferenci KubeCon + CloudNativeCon North America 2018. Shrnutí dění na konferenci v příspěvku na blogu. V úvodu konference společnost Red Hat věnovala této nadaci distribuovanou key-value databázi etcd. Jedná se o

… více »
Ladislav Hagara | Komentářů: 0
14.12. 14:33 | Nová verze

Byla vydána nová verze 1.30 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání.

Ladislav Hagara | Komentářů: 2
14.12. 14:22 | Nová verze

Deset dnů po představení beta verze byla vydána stabilní verze Steam Linku pro Raspberry Pi umožňující streamovat hry ve službě Steam z počítače na televizní obrazovku.

Ladislav Hagara | Komentářů: 9
13.12. 20:00 | Nová verze

Byla vydána (YouTube) verze 2018.3 multiplatformního herního enginu Unity (Wikipedie). Přehled novinek i s videoukázkami v příspěvku na blogu a v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
Chystáte se přejít na Wayland na „desktopu“?
 (25%)
 (9%)
 (11%)
 (30%)
 (25%)
Celkem 148 hlasů
 Komentářů: 19, poslední 14.12. 18:37
Rozcestník

Dotaz: Python program

11.6. 17:20 bobo11028
Python program
Přečteno: 2182×
Ahoj, nevím si rady s tímhle. Zkoušel jsem to už jakkoliv ale nedokážu docílit toho aby se mi rybka spawnovala mimo ten vodní kanál a taky aby se ten vodní kanál zužoval.. Pomužete mi někdo?

Zachraň zlatou rybku Vytvořte program, který má tyto vlastnosti:  Rozměr grafického plátna je 1000 x 650 bodů.  Po spuštění programu, se na náhodném místě obrazovky nakreslí svislý rovný pruh - vodní kanál. Vodní kanál má náhodnou šířku od 100 do 300 px, a vykreslí se na náhodném místě, ale tak, aby měl od ľevého nebo pravého okraje odstup minimálně 100 px,  Po nakreslení kanálu, se na náhodném místě nakreslí zlatá rybka. Zlatá rybka se vykreslí náhodně, buď vlevo nebo vpravo od kanálu. Nikdy sa nenakreslí přímo ve vodním kanálu.  Zlatá rybka má následující obrázek:  Úlohou hráče je zachránit zlatou rybku a pomocí klávesnice ji přemístit do vodního kanálu. Rybku posouváme šipkou vlevo a vpravo.  Vodní kanál postupně vysychá, čímž se proud vody postupně zužuje. Hráč musí stihnout zachránit rybku, dříve než kanál vyschne.  Když se rybka dostane do vody, vypíše se nám oznámení: „Máš tři přání, zachránil jsi zlatou rybku.“ Oznámení je napsáno uprostřed obrazovky větším písmem, zlatou barvou a program se ukončí.  Pokud se nám rybku nepodaří zachránit do vyschnutí kanálu, vypíše se uprostřed obrazovky oznámení s textem „Smůla“ (Oznámení bude napsáno větším písmem červenou barvou).

Řešení dotazu:


Odpovědi

11.6. 18:12 logik
Rozbalit Rozbalit vše Re: Python program
Dej sem to, co máš a napiš, co nejde konkrétně a proč a jak jsi to zkoušel řešit.

Každej Ti rád pomůže, ale DÚ za Tebe dělat nebudem.
11.6. 18:26 bobo11028
Rozbalit Rozbalit vše Re: Python program
Mám zatím tohle. A jediný s čím si nevím rady je, jak mám udělat, aby se mi to pásmo (v tomhle případě ten potok) zužoval postupně. Jak stojí v zadání: Vodní kanál postupně vysychá, čímž se proud vody postupně zužuje. Hráč musí stihnout zachránit rybku, dříve než kanál vyschne. Netuším jak napsat tu definici aby se zmenšoval a zároveň stál na místě..

import tkinter from random import * canvas = tkinter.Canvas(width="1000",height="650") canvas.pack()

x = randrange(100,600) sirka = randrange(100,300) xs = x + sirka canvas.create_rectangle(x,0,xs,650, fill="blue")

xl=randrange(50,950)

x=randrange(1,1000) y=randrange(1,650)

ryba=canvas.create_rectangle(10+x,10+y,20+x,20+y,fill="yellow")

def posun_vpravo(event): canvas.move(ryba,10,0) def posun_vlevo(event): canvas.move(ryba,-10,0)

zde mám nastavené tlačítka rpo rybu na posun vpravo a vlevo ale nejde to sem dat :D
11.6. 19:27 NN
Rozbalit Rozbalit vše Re: Python program
Aby to bylo hratelne budes muset vymyslet po kolika tazich a o kolik se bude zmensovat reka a jak velke tahy/skoky dela ryba. Cele to hodis do smycky, ktera bude detekovat stisk klaves. Behem smycky budes prekreslovat reku a detekovat prekryti s rybkou.
11.6. 20:38 bobo11028
Rozbalit Rozbalit vše Re: Python program
no jasny, jenže problem je, že ja vubec nevím jak udělat tu smičku. Respektive vím že bych to nejspíš dělal přes příkaz IF ale nevím jake podmínky
12.6. 06:02 Olaf
Rozbalit Rozbalit vše Re: Python program
Prokristapána, vyprdni se na to. Očividně nejsi žádný myslitel, pane "smičko" a smyčko s "IF", takže je-li to škola, odhlas se a běž dělat něco, co ti jde, resp. čím budeš užitečný.
pVit avatar 12.6. 10:37 pVit | skóre: 11
Rozbalit Rozbalit vše Re: Python program
Smyčky (cykly) jsou for, while, do while. O těch si něco zjisti a pochop jejich funkci, jinak se nepohneš. If je podmínka, která složí k rozhodování.

Až pochopíš cykly, tak i pochopíš, co do nich máš vůbec dát.
Writing multithreaded code is easy... to get wrong.
Řešení 1× (wamba)
12.6. 21:47 .
Rozbalit Rozbalit vše Re: Python program

Když se ti pozice ryby vygeneruje v kanále, tak ji můžeš posunout. Nebo můžeš nejdříve vybrat jestli bude nalevo nebo napravo a podle toho pak vybrat pozici z rozsashu mimo kanál. Nebo prostě tu pozici generovat tak dlouho dokud nebude mimo.

Vysychání jako změnu pozice i šířky můžeš udělat funkcí coords. Pokud chceš, aby vysychání běželo "samo", tak můžeš použít funkci after.

Žádná blokující smyčka tam samozřejmě nebude.

def posun(event):
    dx = -10 if event.keysym == 'Left' else 10
    canvas.move(ryba, dx, 0)
    coords = canvas.coords(ryba)
    overlapping = canvas.find_overlapping(*coords)
    if kanal in overlapping:
        print('Kanal')


def vysychani():
    x0, y0, x1, y1 = canvas.coords(kanal)
    if x1 - x0 >= 10:
        canvas.coords(kanal, x0 + 5, y0, x1 - 5, y1)
        master.after(500, vysychani)


canvas.bind('<Left>', posun)
canvas.bind('<Right>', posun)
canvas.focus_set()

master.after(500, vysychani)
master.mainloop()
13.6. 07:38 NN
Rozbalit Rozbalit vše Re: Python program
Žádná blokující smyčka tam samozřejmě nebude.
A toto:
master.mainloop()
je prosim pekne co?
13.6. 16:22 .
Rozbalit Rozbalit vše Re: Python program
No jo, tak žádná další mimo té hlavní. A přesně to ty jsi vlastně myslel, žejo, kreténe?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.