Отримання знань

дистанційна підтримка освіти школярів


Програми з використанням випадкових чисел

  Генератор випадкових чисел random підключається за допомогою команди:

       from random  import *

  Можливі варіанти команд:

      ¤  r = random() повертає дробове число r таке, що  0.0≤ r <1.0.

      ¤  d = randint(a, b) повертає ціле число d із проміжку [a, b].

      ¤  c = choice ([k, m, n]) обирає випадковим чином одне з перерахованих чисел: k, m чи n.

          Наприклад: c= choice ([11, -2, 38, -400, 5]) обирає одне з чисел: 11, -2, 38, -400 або 5.


Задача “Windows_26_01.py”

  Написати програму зображення вікна розмірами 60х40, назвою“My windows” з товщиною рамки 5, колір якого генерується програмою.

 Розв’язання

   Будь-який колір утворюється при змішуванні трьох основних: червоного, зеленого і синього. Щоб при запуску програми кожного разу отримувати інший колір, потрібно генерувати (придумувати) різну насиченість (кількість) кожного з вказаних кольорів.

    Насиченість (кількість) кольору задається числом у межах 1 байта (числа від 0 до 255). Нам потрібно згенерувати кількість червоного, зеленого та синього кольорів, змішати їх та перевести отримане значення у 16-ову систему числення для отримання коду кольору. 

   Це можна здійснити за допомогою наступних команд:

       red = randint (0, 255)
       green = randint (0, 255)
       blue = randint (0, 255)
       col = "#%02x%02x%02x"  %(red, green, blue)

    Розглянемо код програми.

  from Tkinter import *      # підключаємо бібліотеку Tkinter для роботи з вікнами

  from random import *      # підключаємо бібліотеку random для генерування випадкових чисел

  win=Tk ()            #  створюємо об’єкт “вікно” під назвою win 

  win.title ('My windows')      # задаємо властивість title (заголовок вікна)

  red = randint (0, 255)       # генеруємо насиченість (кількість) червоного кольору

  green = randint (0, 255)       # генеруємо насиченість (кількість) зеленого кольору

  blue = randint (0, 255)      # генеруємо насиченість (кількість) синього кольору

  col = "#%02x%02x%02x"  %(red, green, blue)

              # перетворюємо 3 отримані числа в 16-ову систему, отримуючи код кольору col

  win.config (width = 60, height = 40, bg = col, relief = RAISED, bd = 5)

             # задаємо властивості вікна: ширину - 60 пікселів, висоту - 40 пікселів, колір вікна - згенерований код кольору col, тип рамки relief, товщину рамки - 5 пікселів

  win.mainloop()    # запускаємо (відображаємо) вікно


Задача “Windows_26_02.py”

    Написати програму, яка зображуватиме вікно із однією з 3-ох описаних надписів “Microsoft Word”, “Windows” або “Python” (вибір надпису здійснює програма). Параметри надписів задати на власний смак.

Розв’язання

  from Tkinter import *

  from random import *

  win=Tk()

  win.title ('My windows')

  win.config (width = 40, height=60, bg='green', relief=RAISED, bd=5)

  lab1 = Label (win, text='Microsoft Word', fg='red', font = ('Arial',40))

         # створюємо об’єкт “надпис” lab1, який буде розміщуватись на вікні win; задаємо властивості: текст -  'Microsoft Word', колір літер - червоний, шрифт - назва 'Arial', розмір кегля - 40

  lab2 = Label (win, text='Windows', fg='blue')

        # створюємо об’єкт “надпис” lab2, який буде розміщуватись на вікні win; задаємо властивості: текст -  'Windows', колір літер - синій

  lab3 = Label (win, text='Python', fg='yellow', bg='green', font='Centaur')

       # створюємо об’єкт “надпис” lab3, який буде розміщуватись на вікні win; задаємо властивості: текст -  'Python', колір літер - жовтий, колір фону навколо літер - зелений, шрифт - назва 'Centaur'

  lab = choice ([lab1, lab2, lab3])    

         # обираємо довільним чином один із трьох варіантів (lab1, lab2 або lab3), результат зберігаємо в змінній lab

  lab.pack()      #   розміщуємо об’єкт “надпис” lab на вікні win

  win.mainloop()

 



Задача “Windows_26_03.py”

   1) Написати програму зображення вікна блакитного кольору, розмірами 250х85, товщиною рамки 5, назва (title) якого генерується програмою (вибір серед “Windows1”, “Windows2”, “Windows3”).

   2) Додати надпис “I live in Vinnitsa” (шрифт - 'Arial', розмір шрифту генерує програма з проміжку [16, 45]).

   3) Додати генерування довільного кольору надпису “I live in Vinnitsa”.


В системі: гості - (1); користувачі - (0)