22.2. Генератор случајних бројева¶
Функцијом random.randint(a, b)
можемо добити насумично одабран цео
број из интервала \([a, b]\). Ово може бити веома корисно када је
потребно да цртеж испунимо већим бројем неправилно распоређених
облика.
Насумични реалан број из задатог интервала
Функцијом random.uniform(a, b)
добијамо насумично
одабрани реалан број из интервала \([a, b]\).
Ноћно небо¶

Смркнуло се и небо је препуно звездица. Уз звездице се види и млад месец. Нацртај такав цртеж.
Насумичне боје¶

Украсићемо собу тако што ћемо на плафон окачити пет балона у насумично одабраним бојама. Напиши програм који исцртава овакав цртеж, при чему сваки балон црта у облику елипсе.
Генератор случајних бројева можемо употребити и да насумично одаберемо боју. Довољно је да за сваку од црвене, зелене и плаве компоненте насумично одаберемо број између 0 и 255. Ово можемо издвојити у посебну функцију коју ћемо позвати кад год нам затреба насумична боја.
Прикажимо и како да равномерно распоредимо балоне по плафону. Претпоставимо да треба да распоредимо \(n\) балона. Ширину прозора ћемо поделити на \(n\) једнаких делова. Сваки балон ћемо закачити на средину њему одговарајућег дела. Ширину једног дела можемо израчунати тако што ширину прозора поделимо са бројем делова, \(x\) координату левог краја \(i\)-тог дела (где бројање креће од 0) добијамо тако што ширину једног дела помножимо са \(i\), док \(x\) координату средине тог дела (тачке у којој се налази врх балона) добијамо тако што на леви крај додамо још пола ширине дела. На основу те тачке лако израчунавамо горњу леву тачку правоугаоника описаног око елипсе (\(x\) координату добијамо тако што од \(x\) координате средине поља одузмемо пола ширине елипсе, док је \(y\) координата једнака нули).