3.7.2 必修1 项目七用随机投点法设计算法 学案2

*
1.
Python  随机数产生模块-random
Python random 模块主要用于生成随机数。
random 模块实现了各种分布的伪随机数生成器。
使用 random() 方法返回一个随机数,它在半开放区间 [0,1) 范围内,产生包含 0 但不包含 1的浮点数。

要使用 random 函数必须先导入:
模式一:
from random import random            #导入random包中的random函数
a=random()                                         #直接引用random函数
b=random()
print(a,b)

模式二:
import  random              # 导入 random 包
a=random.random()      #产生一个[0,1)随机数赋值给a
b=random.random()      #产生一个[0,1)随机数赋值给b
print(a,b)


[  拓广知识: ]
random随机数模块有许多,常用的有:
1.random.randint(a,b)
作用:生成一个[a,b]之间的随机整数

参数:

a:随机区间的开始值,整数

b:随机区间的结束值,随机数包含结束值整数

2.random.uniform(a,b)
作用:生成一个[a,b]之间的随机小数

参数:

a:随机区间的开始值,整数或浮点数

b:随机区间的结束值,随机数包含结束值,整数或浮点数

练习1.下列程序运行结果不可能出现的是(  )
import  random
a=random.random()
b=random.randint(1,10)
c=random.uniform(1,10)
print("a=",a,"b=",b,"c=",c)

A. a= 0.65.. b= 9 c= 7.58..
B.a= 0.48.. b= 6 c= 5.43..
C.a= 0.78.. b= 8 c= 0.69..
D.a= 0.38.. b= 10 c= 6.59..
*
2.
下列程序中定义函数语句定义不正确的是(     )
import  math
import  random
a=random.randint(100,1000)
b=randint(100,1000)
c=math.sqrt(a)
d=math.sqrt(b)
print(a,b,c,d)
A. a=random.randint(100,1000)
B. b=randint(100,1000)
C. c=math.sqrt(a)
D. d=math.sqrt(b)
*
3.
python变量赋值:
python中的变量在使用前必须赋值,
赋值用等号(=)来给变量赋值,等号(=)左边是变量,右边是存储在变量中的值,
可以单行定义变量,也可以多个变量赋值。

1>单行定义变量
counter = 100          # 整型变量
miles = 1000.0         # 浮点型变量
name = "python"      # 字符串


2>同时为多个变量赋值。

例如:
a = b = c = 1                   #三个变量同量赋相同的值
a, b, c = 1, 2, "python"  #两个整型数1,2分别赋给变量a,b,字符串对象“python”赋给变量c


练习3.下列变量定义正确的是(     )



A. a:b:c=1:2:3
B. a,b,c=1,2,python
C. a/b/c=1/2/3
D. a,b,c=1,2,"python"
4.
用随机投点方法来估算圆周率*
一、分析问题:
使用计算机模拟随机投豆(也就是投点)的整个过程如下。
首先,确定总的投点数darts。
然后,在边长为1的正方形中投点,并判断这个点是否在扇形区域内,如果是,则扇形区域的投点数hits增加1。(每个投点的x坐标和y坐标都是[0,1)中的随机数;若x2+y2<1,则判断该点投在扇形区域内。)
最后,在所有点投完后,计算圆周率的近似值pi。
二、设计算法:
1.输入总的投点数 darts
2.令hits=0;
3.循环i从0到dars-1,step1; 输出圆周率的近似值
         3.1 获取x,y的随机值
         3.2 如果x2+y2<1,则hits增加1;
4.计算圆周率的近似值;
5.输出圆周率的近似值;
三、流程图:
四、python程序如下:
请补全流程图中的判断框和处理框的内容
并运行程序输入投点数为1000000时pi值为多少?:
判断框:处理框:
*
5.
P101活动7 改写程序:计算并输出不同精确度值pi的值及输出运算时间。

将上述程序输入并运行,当输入精度为0.0000001时,pi的值为(        )
问卷星提供技术支持
举报