浙大Java语言程序设计编程答案6

上传人:hs****ma 文档编号:560857191 上传时间:2023-05-08 格式:DOC 页数:9 大小:49.01KB
返回 下载 相关 举报
浙大Java语言程序设计编程答案6_第1页
第1页 / 共9页
浙大Java语言程序设计编程答案6_第2页
第2页 / 共9页
浙大Java语言程序设计编程答案6_第3页
第3页 / 共9页
浙大Java语言程序设计编程答案6_第4页
第4页 / 共9页
浙大Java语言程序设计编程答案6_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《浙大Java语言程序设计编程答案6》由会员分享,可在线阅读,更多相关《浙大Java语言程序设计编程答案6(9页珍藏版)》请在金锄头文库上搜索。

1、实验7 循环结构程序的设计(二)程序填空,不要改变与输入输出有关的语句。1. 求11/21/31/4 输入一个正整数repeat (0repeat10),做repeat次下列运算:读入1 个正整数 n(n=100),计算并输出11/21/31/4的前n项和(四舍五入保留小数4位)。例:括号内是说明输入2 (repeat=2)103输出0.64560.8333import java.util.Scanner;public class Test40004 public static void main(String args) int ri, repeat;int i, n, flag;float

2、 sum;Scanner in=new Scanner(System.in);repeat=in.nextInt();for(ri=1; ri=repeat; ri+) n=in.nextInt(); /*-*/sum=0;flag=1;for(i=1;i=n;i+) sum+=flag*1.0f/i;flag=-flag; System.out.println(long)(sum*10000+0.5)/10000.); 2. 求11/31/51/7 输入一个正整数repeat (0repeat10),做repeat次下列运算:读入1 个正实数eps,计算并输出11/31/51/7,直到最后一

3、项的绝对值小于eps为止(要求每一项的绝对值均大于等于eps,并以float类型输出数据)。例:括号内是说明输入2 (repeat=2)1E-40.1输出0.78530.8349import java.util.Scanner;public class Test40006 public static void main(String args) int ri, repeat; int temp, flag; double eps, item, sum; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri=ep

4、s) sum+=item; flag=-flag; temp+=2; item=flag*1.0/temp; System.out.println(int)(sum*10000+0.5)/10000.); 3. 求2/13/25/38/5. 输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数n,输出 2/1+3/2+5/3+8/5 +.的前n项之和,保留4位小数(不足4位时,不必用0填满4位)。(该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子)例:括号内是说明输入3 (repeat=3) 1 5 20输出2.0 (第1项是2.

5、0)8.3917 (前5项的和是8.3917)32.6603 (前20项的和是32.6603)import java.util.Scanner;public class Test40011 public static void main(String args) int ri, repeat; int i,n; float a,b,s,t; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri=repeat; ri+) n=in.nextInt(); /*-*/a=1; /分母b=2; /分子s=0;for(i

6、=1;i=n;i+) s+=b/a;t=a;a=b; /分母是前一项的分子b=t+b; /分子是前一项分子与分母的和 System.out.println(int)(s*10000+.5)/10000.); 4. 求aaaaaaaaa 输入一个正整数repeat (0repeat10),做repeat次下列运算:输入2个正整数a和n, 求a+aa+aaa+aaa(n个a)之和。例:括号内是说明输入2 (repeat=2)2 3 (a=2, n=3)8 5 (a=8, n=5)输出246 (2+22+222)98760 (8+88+888+8888+88888) import java.util

7、.Scanner;public class Test40012 public static void main(String args) int ri, repeat; int i, n, a, sn, tn; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri=repeat; ri+) a=in.nextInt(); n=in.nextInt(); /*-*/tn=a;sn=0;for(i=1;i=n;i+)sn+=tn;tn=tn*10+a; /迭代公式 System.out.println(sn); 5

8、. 判断素数输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数m,如果它是素数,输出YES,否则,输出NO(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。例:括号内是说明输入4 (repeat=4) 1 2 9 17输出NO (1不是素数)YES (2是素数) NO (9不是素数) YES (17是素数)import java.util.Scanner;public class Test40013 public static void main(String args) int ri, repeat; int i, m, n; boole

9、an flag; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri=repeat; ri+) m=in.nextInt(); /*-*/ flag=true; if(m=1)flag=false; for(i=2;i=m-1;i+) if(m%i=0) flag=false; break; if(flag) System.out.println(YES); else System.out.println(NO); 说明:变量n未用到6. 求最小公倍数和最大公约数输入一个正整数 repeat (0repeat

10、10),做 repeat 次下列运算:输入两个正整数m和n,输出它们的最小公倍数和最大公约数。输入输出示例:括号内为说明输入:3 (repeat=3)3 7 (m=3,n=7)24 4 (m=24,n=4)24 18 (m=24,n=18)输出:the least common multiple:21, the greatest common divisor:1the least common multiple:24, the greatest common divisor:4the least common multiple:72, the greatest common divisor:6

11、import java.util.*;public class Test40014 public static void main(String args) Scanner in=new Scanner(System.in); int gcd, lcm, m, n,r; int repeat, ri; repeat=in.nextInt(); for(ri=1; ri=repeat; ri+) m=in.nextInt(); n=in.nextInt(); if(m= 0|n= 0) System.out.println(m = 0 or n = 0); else /*-*/ lcm=m*n; if(mn)r=m;m=n;n=r; r=m%n; while(r!=0) m=n; n=r; r=m%n; gcd=n; lcm=lcm/gcd; System.out.println(the least common multiple:+lcm +, the greatest common divisor:+gcd); 7. 求1 + 1/2! +.+ 1/n! 输入一个正整数repeat (0repeat10),做repeat次下列运算:输入1 个正整数n,计算 s 的前n项的和。 s = 1 + 1/2! +.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号