Write a program that takes an integer N and uses the function “np.random.randint(low = 0, high = N)” to generate a random sequence of integers between 0 and N-1. Run experiments to validate the hypothesis that the number of integers generated before the first repeated value is found is “~sqrt(pi * N / 2)”.   please help with last part  Show that as n increases (e.g. with a doubling experiment), from n = 2 to n = 1,000, the value of “day_sim(n)” approaches “sqrt(pi * n / 2)”.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Write a program that takes an integer N and uses the function “np.random.randint(low = 0, high = N)” to generate a random sequence of integers between 0 and N-1. Run experiments to validate the hypothesis that the number of integers generated before the first repeated value is found is “~sqrt(pi * N / 2)”.

 

please help with last part 

Show that as n increases (e.g. with a doubling experiment), from n = 2 to n = 1,000, the value of “day_sim(n)” approaches “sqrt(pi * n / 2)”.

import random
from random import randint
import numpy as np
def randomgen (n):
np. random. randint (low
return random. randint (0,n-1)
0, high = n)
randomgen (100)
def day (n):
result = []
random = randomgen (n)
count =0
while random not in result:
result.append (random)
random = randomgen (n)
count += 1
return count
day (100)
def day_sim(n):
n_trials = 10000
day_sim = [birthday(n) for _ in range(n_trials)]
return day_sim
day_sim(100)
Transcribed Image Text:import random from random import randint import numpy as np def randomgen (n): np. random. randint (low return random. randint (0,n-1) 0, high = n) randomgen (100) def day (n): result = [] random = randomgen (n) count =0 while random not in result: result.append (random) random = randomgen (n) count += 1 return count day (100) def day_sim(n): n_trials = 10000 day_sim = [birthday(n) for _ in range(n_trials)] return day_sim day_sim(100)
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY