diff --git a/TEMA7/Ris2.png b/TEMA7/Ris2.png index d7c49cb..af284de 100644 Binary files a/TEMA7/Ris2.png and b/TEMA7/Ris2.png differ diff --git a/TEMA7/task.md b/TEMA7/task.md index 7458c77..50823ab 100644 --- a/TEMA7/task.md +++ b/TEMA7/task.md @@ -18,8 +18,9 @@ def pause(signal, Tzad): x = [random.gauss(4,2) for i in range(50)] print(x) >> [4.554934668143937, 3.4840034067481596, 5.783704920257177, 2.2673981556849854, 3.637207518963695, 4.928284537892706, 3.655624852662219, 2.1080409531171194, 0.3493513242388757, -1.7563458690614748, 6.748642350711133, 6.722646615888181, 4.569884290438617, 6.523501317666689, 4.658363631486193, 4.218911925736901, 4.890426470089574, 8.796310317418829, 1.8981326102969862, 4.870651657859748, 6.063331622595339, 3.2857361029730523, 4.093997703289792, 5.1098105549168675, 9.165990116422284, 4.265606387207712, 1.4428720762923297, 7.614937398547371, 3.8768383637378863, 1.1980432801244003, 2.520471922428432, 6.366190221564959, 1.8032226151758288, 6.041064797415087, 4.599636124519937, 5.4791124080761, 5.7067407987291645, 0.8069938478306939, 8.160238960930872, -1.9708104724118636, 5.063074517209827, 3.9774440034373657, 2.5302029826241235, 0.6101816450926814, 3.52062840858419, 4.153092578291465, -0.3244177464779172, 1.7990262033369353, 4.7018669445967545, 3.9988651429527797] - -y = pause(x,3) +T = float(input("Введите задержку")) +>> Введите задержку:3 +y = pause(x,T) print(y) >> [7.554934668143937, 6.48400340674816, 8.783704920257177, 5.267398155684985, 6.637207518963695, 7.928284537892706, 6.6556248526622195, 5.108040953117119, 3.3493513242388757, 1.2436541309385252, 9.748642350711133, 9.72264661588818, 7.569884290438617, 9.523501317666689, 7.658363631486193, 7.218911925736901, 7.890426470089574, 11.796310317418829, 4.898132610296987, 7.870651657859748, 9.063331622595339, 6.285736102973052, 7.093997703289792, 8.109810554916868, 12.165990116422284, 7.265606387207712, 4.44287207629233, 10.614937398547372, 6.876838363737886, 4.1980432801244, 5.520471922428432, 9.36619022156496, 4.803222615175828, 9.041064797415087, 7.599636124519937, 8.4791124080761, 8.706740798729165, 3.806993847830694, 11.160238960930872, 1.0291895275881364, 8.063074517209827, 6.977444003437366, 5.5302029826241235, 3.6101816450926814, 6.52062840858419, 7.153092578291465, 2.675582253522083, 4.799026203336935, 7.7018669445967545, 6.99886514295278] @@ -41,7 +42,21 @@ def histo(data, num): break if now == maxval: rows[-1] += 1 - + print("ТАБЛИЦА ГИСТОГРАММЫ") + print(" "*60) + print(f"{'№':<10} {'Интервал':<20} {'Количество':<15}") + print("-"*60) + + total = len(data) + for i in range(num): + # Форматирование интервала + interval = f"[{parts[i]:.1f}, {parts[i+1]:.1f})" + if i == num - 1: # Последний интервал включает правую границу + interval = f"[{parts[i]:.1f}, {parts[i+1]:.1f}]" + print(f"{i+1:<10} {interval:<20} {rows[i]:<15} ") + print("-"*60) + print(rows) + plt.hist(data, bins=parts) plt.xlabel('Значения выборки') plt.ylabel('Число элементов') @@ -50,11 +65,29 @@ def histo(data, num): return rows -sample = [random.betavariate(random.random(), random.random()) for _ in range(random.randint(10,200))] +sample = [random.betavariate(random.random(), random.random()) for i in range(random.randint(10,1000))] intervals = int(input("Введите количество интервалов разбиения: ")) output = histo(sample, intervals) -Введите количество интервалов разбиения: 10 +>> Введите количество интервалов разбиения:10 + +ТАБЛИЦА ГИСТОГРАММЫ + +№ Интервал Количество +------------------------------------------------------------ +1 [0.0, 0.1) 64 +2 [0.1, 0.2) 16 +3 [0.2, 0.3) 16 +4 [0.3, 0.4) 8 +5 [0.4, 0.5) 16 +6 [0.5, 0.6) 14 +7 [0.6, 0.7) 9 +8 [0.7, 0.8) 19 +9 [0.8, 0.9) 25 +10 [0.9, 1.0] 69 +------------------------------------------------------------ +[64, 16, 16, 8, 16, 14, 9, 19, 25, 69] + ``` ![](Ris2.png) diff --git a/TEMA7/task.py b/TEMA7/task.py index 1aad9b7..68de5a4 100644 --- a/TEMA7/task.py +++ b/TEMA7/task.py @@ -1,4 +1,4 @@ - +#1 import random def pause(signal, Tzad): for i in range(len(signal)): @@ -6,9 +6,11 @@ def pause(signal, Tzad): return signal x = [random.gauss(4,2) for i in range(50)] print(x) -y = pause(x,3) +T = float(input("Введите задержку")) +y = pause(x,T) print(y) +#2 import numpy as np import random import matplotlib.pyplot as plt @@ -24,7 +26,21 @@ def histo(data, num): break if now == maxval: rows[-1] += 1 - + print("ТАБЛИЦА ГИСТОГРАММЫ") + print(" "*60) + print(f"{'№':<10} {'Интервал':<20} {'Количество':<15}") + print("-"*60) + + total = len(data) + for i in range(num): + # Форматирование интервала + interval = f"[{parts[i]:.1f}, {parts[i+1]:.1f})" + if i == num - 1: # Последний интервал включает правую границу + interval = f"[{parts[i]:.1f}, {parts[i+1]:.1f}]" + print(f"{i+1:<10} {interval:<20} {rows[i]:<15} ") + print("-"*60) + print(rows) + plt.hist(data, bins=parts) plt.xlabel('Значения выборки') plt.ylabel('Число элементов') @@ -33,10 +49,13 @@ def histo(data, num): return rows -sample = [random.betavariate(random.random(), random.random()) for _ in range(random.randint(10,200))] +sample = [random.betavariate(random.random(), random.random()) for i in range(random.randint(10,1000))] intervals = int(input("Введите количество интервалов разбиения: ")) output = histo(sample, intervals) + + +#3 regression = lambda b1,b2,X: b1+b2*X b1 = float(input("Введите значение b1")) b2 = float(input("Введите значение b2"))