当前位置:首页 >> IT/计算机 >>

实验3循环结构程序设计


实验三 循环结构程序设计

1.根据 ?

2

6

?

1
2

1 2 3

?

1
2

?

1
2

???

1

n

2

, 求 ? 的近似值。 当 n 分别取 100、 1000、 10000

时,结果是多少? 1)for 语句:
s=0; n=input('请输入n的值:'); for i=1:n s=s+1/i^2; end p=sqrt(6*s); p

2)while 语句:
s=0; i=1; n=input('请输入n的值:'); while i<=n s=s+1/i^2; i=i+1; end p=sqrt(6*s); P

运行结果:
请输入n的值:100 p= 3.1321 >> shiyan31 请输入n的值:1000 p= 3.1406 >> shiyan31 请输入n的值:10000 p= 3.1415

1 1 1 2.根据 y=1+ ? ? ? ? ,求: 3 5 2n - 1 (1)y<3 时的最大 n 值。 (2)与(1)的 n 值对应的 y 值。 命令语句:
n=1; y=0; while y<3 y=y+1/(2*n-1);

n=n+1; end y=y-1/(2*(n-1)-1); n=n-2; disp(['满足条件的n的值是:',num2str(n),',','对应的 y的值是:',num2str(y)])

运行结果:
满足条件的n的值是:56,对应的y的值是:2.9944

3.考虑以下迭代公式:

x
其中a、b为正的常数。

n ?1

?

a b ? xn

(1 )编写程序求迭代的结果,迭代的终止条件为 =1.0,迭代次数不超过500次。 (2)如果迭代过程收敛于r,那么r的准确值是

x

n ?1

? xn ? 10 ,迭代初值
2

?5

?b?

b
2

? 4a

,当(a,b)的值

取(1,1) 、 (8,3) 、 (10,0.1)时,分别对迭代结果的准确值进行比较。 命令语句:
a=input('请输入一个正数a:'); b=input('请输入一个正输b:'); x=1.0; n=0; while abs(x-(a/x-b))>10e-5 & n<=500 x=a/(b+x); n=n+1; end x r1=(-b+sqrt(b^2+4*a))/2 r2=(-b-sqrt(b^2+4*a))/2

运行结果:
>> shiyan4 请输入一个正数a:1 请输入一个正输b:1 x= 0.6181 r1 = 0.6180 r2 = -1.6180 >> shiyan4 请输入一个正数a:8

请输入一个正输b:3 x= 1.7016 r1 = 1.7016 r2 = -4.7016 >> shiyan4 请输入一个正数a:10 请输入一个正输b:0.1 x= 3.1127 r1 = 3.1127 r2 = -3.2127

实验结论: ? x总是收敛于r1( ? r2= -r1-b
?b?

b
2

2

? 4a



? f ? 1, ? 1 ? f ? 0, 4.已知 ? 2 ? f 3 ? 1, ? ? ?fn f
求f
1

n ?1 n?2 n?3
n ?1

?2

f

n?2

?

f

n ?3

, n?3

~

f 中:
100

(1)最大值、最小值、各数之和。 命令语句:
f(1)=1; f(2)=0; f(3)=1; max=f(3); min=f(2); sum=2; for i=4:100 f(i)=f(i-1)-2*f(i-2)+f(i-3); sum=sum+f(i); if f(i)>max max=f(i); elseif f(i)<min min=f(i);

end end sum max min

运行结果:
>> shiyan44 sum = -7.4275e+011 max = 4.3776e+011 min = -8.9941e+011

(2)正数、零、负数的个数。 命令语句:
f(1)=1; f(2)=0; f(3)=1; pn=2; nn=0; zn=1; for i=4:100 f(i)=f(i-1)-2*f(i-2)+f(i-3); if f(i)>0 pn=pn+1; elseif f(i)<0 nn=nn+1; else zn=zn+1; end end disp(['正数的个数:',num2str(pn)]) disp(['负数的个数:',num2str(nn)]) disp(['零的个数:',num2str(zn)])

运行结果:
正数的个数:49 负数的个数:49 零的个数:2 5.若两个连续自然数的乘积减 1 是素数,则称这两个连续自然数是亲密数对,该素数是亲密 素数。例如,2 ? 3-1=5,由于 5 是素数,所以 2 和 3 是亲密数对,5 是亲密素数。求[2,50] 区间内: (1)亲密数对的对数。 (2)与上述亲密数对对应的所有亲密素数之和。 命令语句:

sum=0; prime=[]; for i=2:49 p=i*(i+1)-1; m=ceil(sqrt(p)); for j=2:m if rem(p,j)==0 p=0; end end if p~=0 prime=[prime p]; n=length(prime); sum=sum+p; end end disp(['亲密数对的对数有:',num2str(n)]) disp(['对应的亲密素数之和为:',num2str(sum)]) 运行结果: 亲密数对的对数有:28 对应的亲密素数之和为:21066


相关文章:
实验3循环结构程序设计
实验3循环结构程序设计 - 实验三 循环结构程序设计 1.根据 ? 2 6 ? 1 2 1 2 3 ? 1 2 ? 1 2 ??? 1 n 2 ,求 ? 的近似值...
实验三 循环结构程序设计
实验三 循环结构程序设计 - 实验三 循环结构程序设计 一、实验学时 4 学时。 二、实验目的 1.熟练掌握用 while、do-while 以及 for 语句实现循环程序设计的...
汇编与接口实验三 循环程序设计
汇编与接口实验三 循环程序设计 - 1、掌握循环结构程序设计的基本方法。 2、掌握循环程序中重复控制指令的使用。 3、掌握循环结构程序的组成部分和基本结构形式。
10级实验三--循环结构程序设计
10级实验三--循环结构程序设计 - 实验三 循环结构程序设计 一、实验目的 (1) 掌握 while、do~while、for 语句的使用。 (2) 掌握循环体内使用 break、contin....
实验三 循环结构程序设计(参考答案)
实验三 循环结构程序设计(参考答案) 实验三 循环结构程序设计(参考答案) 1、设计程序 sy3-1.c ,要求打印小学九九乘法表。 算法分析: 算法分析: 根据九九乘法表...
实验三 循环结构程序设计(答案)_图文
实验三 循环结构程序设计(答案) - 实验教案 课题(项目)名称: 实验三 循环结构程序设计 实验类型: 1.演示性√ 授课日期: 一、实验目的 (1) 掌握 while、do~...
实验三 循环结构程序设计
实验三 循环结构程序设计_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档 实验三 循环结构程序设计_计算机软件及应用_IT/计算机_专业...
实验三循环结构程序设计
实验三循环结构程序设计 - 湖北科技学院计算机科学与技术学院 《微机接口技术》实验报告 学号: 124221031 姓名: 李亮亮 实验题目: 循环结构程序设计实验报告 指导老师...
实验三 循环结构程序设计
实验三 循环结构程序设计 - 实验三 循环结构程序设计 一、 教学目标 1.了解循环及控制语句的使用; 2.掌握 while 语句、for 语句、do-while 循环语句的应用; 3...
实验三:循环结构程序设计
实验三:循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。c语言实验任务书 实验三:循环结构程序设计【目的与要求】 1、掌握三种循环语句在编程中的使用。 2...
更多相关标签: