亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求簡單的程序,感覺寫的都很繁瑣,要考慮n是不是等于2?

求簡單的程序,感覺寫的都很繁瑣,要考慮n是不是等于2?

西瓜媽媽 2017-09-30 13:08:11
我們認為2是第一個素數,3是第二個素數,5是第三個素數,依次類推?,F在,給定兩個整數n和m,0<n<=m<=200,你的程序要計算第n個素數到第m個素數之間所有的素數的和,包括第n個素數和第m個素數。
查看完整描述

1 回答

?
winner4265975

TA貢獻19條經驗 獲得超17個贊

import?java.util.ArrayList;
import?java.util.List;

public?class?SumPrime?{
	
	public?boolean?isPrime(int?num){
		if(num<2)
			return?false;
		for(int?i=2;i<=Math.sqrt(num);i++){
			if(num%i==0)
				return?false;
		}
		return?true;
	}

	public?List<Integer>?primeList(int?maxNum){
		List<Integer>?list=new?ArrayList<>();
		for(int?i=0;i<maxNum;i++){
			if(isPrime(i))
				list.add(i);
		}
		return?list;
	}
	
	public?int?sum(int?n,int?m,List<Integer>?list){
		if(n<0||m<0)
			throw?new?RuntimeException("索引越界!");
		int?bigger;
		int?samller;
		if(n>m){
			bigger=n;
			samller=m;
		}
		else{
			bigger=m;
			samller=n;
		}
		if(bigger>list.size())
			throw?new?RuntimeException("索引越界!");
		int?sum=0;
		for(int?i=samller;i<=bigger;i++)
			sum+=list.get(i);
		return?sum;
	}
		
	public?static?void?main(String[]?args)?{
		SumPrime?sumPrime=new?SumPrime();
		int?sum=sumPrime.sum(1,2,sumPrime.primeList(200));
		System.out.println(sum);
	}

}


查看完整回答
1 反對 回復 2017-09-30
  • 西瓜媽媽
    西瓜媽媽
    太高級了,這個題目是在循環那一課出現的題目 笑哭/
  • 1 回答
  • 0 關注
  • 1450 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號