0
点赞
收藏
分享

微信扫一扫

80题通关Java基础:第15至16题


目录

  • ​​🍋第15题 编程:从键盘输入k和n后求k*(k+1)*...*n(10分)​​
  • ​​🍋第16题 编程序求[200,M]中的所有素数之和(10分)​​

🍋第15题 编程:从键盘输入k和n后求k*(k+1)*…*n(10分)

Time Limit : 1.0 s Memory Limit : 32 MB

下面程序是求1+2+…+100的值:

public class Main {
public static void main(String[] args) {
int product=0;
for(int cnt=1;cnt<=100;cnt++)
{
sum+=cnt;
}
System.out.println(“sum=”+sum);
}
}

请在此程序的基础上,编写程序求k*(k+1)…n的和值(n<=20),其中整数k和n从键盘输入(0<k<n)。
说明:如果k=10,n=15,就是求1011
15. 如果k=2,n=5,就是求23*…*5.
重要说明:按题目“从键盘输入n”的要求和下面的样例要求进行其它修改。
提示:(1) 注意修改1+2+…+100程序中的cnt=1,本题从k开始,就是说初值=k。
(2) 注意从键盘输入k的语句是int k=in.nextInt();

此题的上机步骤是:

  1. 建立一个Java项目,名称可以按题号取名;
  2. 建立一个类, 类的名称为Main。这一点非常重要;
  3. 输入代码,并按上面要求修改;
  4. 运行程序, 从键盘输入下面的样例数据检验程序的正确性;
  5. 提交代码,注意题号要一致。
    输入格式
    输入2个整数(k和n)。
    输出格式
    输出“product=”和一个整数。

样例1输入:
1
10
样例1输出:
product=3628800

样例2输入:
10
15
样例2输出:
product=3603600

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
// TODO Auto-generated method stub
long sum=1;
Scanner in =new Scanner(System.in);
long k=in.nextLong();
long n=in.nextLong();
for(long cnt =k;cnt<=n;cnt++)
{
sum*=cnt;
}
System.out.println("sum="+sum);

}

}

🍋第16题 编程序求[200,M]中的所有素数之和(10分)

请编Java程序求[200,M]中的所有素数之和。
其中200<M<1000。
此题的上机步骤是:

  1. 建立一个Java项目,名称可以按题号取名;
  2. 建立一个类, 类的名称为Main。这一点非常重要;
  3. 输入代码并运行;
  4. 提交代码,注意题号要一致。

输入格式
输入1个整数M。
输出格式
[200,M]中的所有素数之和。

样例1输入:
300
样例1输出:
4048

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
// TODO Auto-generated method stub
int sum=0;
int flag=1;
Scanner in =new Scanner(System.in);
int m=in.nextInt();
for(int cnt =201;cnt<=m;cnt++)
{
int k=(int) Math.sqrt(cnt);
for(int i=2;i<=k;i++)
{
if(cnt%i==0)
{
flag=0;
break;
}
}
if(flag==1)
{
sum+=cnt;
}
flag=1;
}
System.out.println(sum);

}

}


举报

相关推荐

0 条评论