当前位置:首页 >> 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


赞助商链接
相关文章:
实验三 循环结构程序设计
实验三 循环结构程序设计实验目的 1.熟练使用 while、do-while 语句实现循环程序设计 2.理解循环条件和循环体,以及 for、while 和 do-while 语句的相同及不同之...
实验三 循环结构程序设计
实验三 循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。c语言程序设计--实验方案设计 实验三 循环结构程序设计一、实验准备实验项目名称 循环结构程序设计 ...
实验三 循环结构程序设计(答案)_图文
实验三 循环结构程序设计(答案) - 实验教案 课题(项目)名称: 实验三 循环结构程序设计 实验类型: 1.演示性√ 授课日期: 一、实验目的 (1) 掌握 while、do~...
实验三、循环结构程序设计
实验三循环结构程序设计 - 【实验三循环结构程序设计 一、实验目的 1.熟练掌握三种循环语句的应用。 2. 掌握 break 和 continue 语句的使用。 3. 熟练掌握...
实验三:循环结构程序设计
实验三:循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。c语言实验任务书 实验三:循环结构程序设计【目的与要求】 1、掌握三种循环语句在编程中的使用。 2...
5.循环结构程序设计实验报告
5.循环结构程序设计实验报告_工学_高等教育_教育专区。循环结构程序设计实验报告...} 实验 3: #include<stdio.h> void main() { int day,x1,x2; x1=1;...
C语言_实验三、循环结构程序设计
C语言_实验三、循环结构程序设计_数学_自然科学_专业资料。实验三 循环结构程序设计 一、实验目的 1.熟练掌握三种循环语句的应用。 2. 熟练掌握循环结构的嵌套。 ...
C语言循环结构程序设计实验报告
C语言循环结构程序设计实验报告_实习总结_总结/汇报_实用文档。甘肃政法学院本科...(2*x0-4)*x0+3)*x0-6; f1=(6*x0-8)*x0+3; x1=x0-f/f1; ...
实验三 选择与循环结构程序设计
实验三 选择与循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。实验三 选择与循环结构程序设计张高鹏 1420022140 1. 输入一个整数,判断是奇数或偶数、负数...
10级实验三--循环结构程序设计
10级实验三--循环结构程序设计 - 实验三 循环结构程序设计 一、实验目的 (1) 掌握 while、do~while、for 语句的使用。 (2) 掌握循环体内使用 break、contin....
更多相关标签: