From 3644ec1a7c52da0c6e66c46f8d92205f3af283b1 Mon Sep 17 00:00:00 2001 From: Martin Mares <mj@ucw.cz> Date: Fri, 10 Jan 2020 21:25:25 +0100 Subject: [PATCH] =?UTF-8?q?Knihovna:=20P=C5=99iklady?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 12-knihovna/kostky.py | 12 ++++++++++++ 12-knihovna/permutace.py | 9 +++++++++ 12-knihovna/pevne-body.py | 24 ++++++++++++++++++++++++ 12-knihovna/pi.py | 13 +++++++++++++ 4 files changed, 58 insertions(+) create mode 100755 12-knihovna/kostky.py create mode 100755 12-knihovna/permutace.py create mode 100755 12-knihovna/pevne-body.py create mode 100755 12-knihovna/pi.py diff --git a/12-knihovna/kostky.py b/12-knihovna/kostky.py new file mode 100755 index 0000000..a066e08 --- /dev/null +++ b/12-knihovna/kostky.py @@ -0,0 +1,12 @@ +#!/usr/bin/python3 + +import random + +N = 1000 +pocty = [0]*6 + +for _ in range(N): + hod = random.randrange(6) + pocty[hod] += 1 + +print(pocty) diff --git a/12-knihovna/permutace.py b/12-knihovna/permutace.py new file mode 100755 index 0000000..0f1274f --- /dev/null +++ b/12-knihovna/permutace.py @@ -0,0 +1,9 @@ +#!/usr/bin/python3 + +import random + +slova = "nemám rád zbytečně použité permutace".split() + +for _ in range(20): + perm = random.sample(slova, len(slova)) + print(" ".join(perm)) diff --git a/12-knihovna/pevne-body.py b/12-knihovna/pevne-body.py new file mode 100755 index 0000000..8bba7bb --- /dev/null +++ b/12-knihovna/pevne-body.py @@ -0,0 +1,24 @@ +#!/usr/bin/python3 + +import random + +N = 10 +pokusu = 1000 +bez_pevnych = 0 +celkem_pevnych = 0 + +for _ in range(pokusu): + perm = random.sample(range(N), N) + + pevne = 0 + for i in range(N): + if perm[i] == i: + pevne += 1 + + celkem_pevnych += pevne + if pevne == 0: + bez_pevnych += 1 + +print("Celkem pokusů:", pokusu) +print("Pravděpodobnost permutace bez pevného bodu:", bez_pevnych / pokusu) +print("Průměrný počet pevných bodů:", celkem_pevnych / pokusu) diff --git a/12-knihovna/pi.py b/12-knihovna/pi.py new file mode 100755 index 0000000..296841f --- /dev/null +++ b/12-knihovna/pi.py @@ -0,0 +1,13 @@ +#!/usr/bin/python3 + +import random + +N = 1000000 +v_kruhu = 0 + +for _ in range(N): + x, y = random.uniform(-1, 1), random.uniform(-1, 1) + if x**2 + y**2 <= 1: + v_kruhu += 1 + +print(4*v_kruhu/N) -- GitLab