Rysowanie przez losowanie - Zadanie konkursowe

logo_konkursuW dowolnym języku programowania (np.: Baltie, Scratch, Python, C++, Java, App Inventor) napisz program, który na życzenie użytkownika będzie rysował dowolny obrazek składający się z 7 elementów,  a każdy element należy do osobnej kategorii i posiada 6 wariantów.

Celem programu jest narysowanie 7-elementowego rysunku, przy czym elementy kategorii powinny być wybierane losowo (można zasymulować rzuty kostką).

Poniższe ilustracje z serwisu printoteka.pl pomogą zobrazować opis:

http://www.printoteka.pl/pl/materials/item/2899

http://www.printoteka.pl/pl/materials/item/2900 http://www.printoteka.pl/pl/materials/item/2908

PRZYKŁAD
Np. gdybyśmy rysowali bałwanka, to kategorie mogłyby wyglądać następująco: 
  • Korpus
  • Nakrycie głowy
  • Oczy
  • Nos
  • Usta
  • Szalik
  • Miotła
  • kostkaW każdej kategorii należy zaprojektować dokładnie 6 (tyle, ile jest wyników rzutu kostką) różnych wariantów (np. dla kategorii Nakrycie głowy mogłyby to być:

    1. Kapelusz
    2. Czapka
    3. Garnek
    4. Cylinder
    5. Hełm
    6. Beret

    rysunekWszystkie elementy rysunku powinny być samodzielnie zaprojektowane lub pochodzić z legalnych darmowych źródeł. W pracy należy podać źródła grafiki (np. własne rysunki, biblioteka Scratcha, Wikipedia itp.).

    Ekran startowy powinien zawierać instrukcję dla użytkownika.

    Dodatkowo można wprowadzić opcję, aby użytkownik sam wybierał dowolny element z każdej kategorii.

    W rezultacie program powinien móc wygenerować 67 różnych rysunków (za różne rozumiemy obrazki, w których przynajmniej jeden element jest inny np. bałwan w czapce i bałwan w kapeluszu).

    metka

    Praca konkursowa powinna zawierać:

    • program w wersji źródłowej
    • metkę programu, czyli plik tekstowy zawierający:
      1. Dane autora (imię, nazwisko, szkoła, opiekun)
      2. Wybrane środowisko/język programowania.
      3. Źródła grafiki
      4. Opcjonalnie - instrukcje dotyczące kompilacji lub uruchomienia programu (jeśli są konieczne).