Java实现 蓝桥杯VIP 算法训练 调和数列
2024-09-25 22:57:49
问题描述
输入一个实数x,求最小的n使得,1/2+1/3+1/4+…+1/(n+1)>=x。
输入的实数x保证大于等于0.01,小于等于5.20,并且恰好有两位小数。你的程序要能够处理多组数据,即不停地读入x,如果x不等于0.00,则计算答案,否则退出程序。
输出格式为对于一个x,输出一行n card(s)。其中n表示要计算的答案。
输入格式
分行输入x的具体数值
输出格式
分行输出n的数值,格式为n card(s)
样例输入
1.00
3.71
0.04
5.19
0.00
样例输出
3 card(s)
61 card(s)
1 card(s)
273 card(s)
import java.util.Scanner;
public class 调和数列问题 {
public static void main(String args[]){
Scanner sc=new Scanner (System.in);
while(true){
double d=sc.nextDouble();
double sum=0;
int count=0;
if(d==0.00)
break;
else{
for(int i=2;;i++){
sum+=1.0/i;
if(sum>=d){
count=i-1;
break;
}
}
System.out.println(count+" card(s)");
}
}
}
}
最新文章
- nba技能表
- javascrip自定义对象的方式
- set 赋值(转载)
- 控制DIV属性——实现盒子长、宽、背景等变化
- B. Mr. Kitayuta's Colorful Graph
- Python 学习日志(一)
- hdu4300之KMP&;&;EKMP
- PHP - 四级单词lrc文件解析为txt
- linux下tomcat shutdown后 java进程依然存在
- Qt+gsoap调用WebService
- win8.1启用ahci后蓝屏
- effective java——32用EnumSet代替位域
- MaterialEditText——Android Material Design EditText控件
- JDK8漫谈——增强接口
- C(m,n)算法
- POJ 2349 Arctic Network(最小生成树中第s大的边)
- 20155217《网络对抗》Exp07 网络欺诈防范
- 如何整合Office Web Apps至自己开发的系统(二)
- (转)Jupyter notebook入门教程(上,下)
- PostgreSQL的 synchronous_standby_names 参数学习