设银行1年期定期存款年利率为2.25%,存款本金为capital元,试编程计算并输出n年后的本利之和。
(注: 目前银行活期存款的利息是按单利计息的。如果是定期存款,连本带息转入下一个存期,那么会继续计入定期的,相当于是复利。)
输入输入一个正整数和一个实数,分别代表存款年数和存款本金。
输出输出一个实数为n年后的本利之和,小数点后保留6位数字。
样例输入2 100.0样例输出
104.550625提示
本题在课程网站上有专题讲解,第二章的边讲边写:银行利率——单利复利、数学函数
https://www.icourse163.org/learn/ZZULI-1206704833?tid=1465320443#/learn/content?type=detail&id=1245359076&cid=1270263136
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//读入数据
int a = sc.nextInt();
double b = sc.nextDouble();
for (int i = 1; i < a + 1; i++) {
b *= (1 + 0.0225);
}
System.out.printf("%.6f",b);
}
}
1017
题目描述
给定一个不多于5位的正整数,判断它是几位数,并输出。
输入一个不多于5位的正整数。
输出输出正整数的位数,单独占一行。
样例输入111样例输出
3提示
使用函数log10(n),求出n的以10为底的对数,这个对数的整数部分,就是n的科学计数法中的指数,这个整数加1就是n的位数。
#方法1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();//读入数据
System.out.println((a+"").length());//a+""可以将int数据转换为String类型,然后用String的length方法
}
}
#方法2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int temp = 1;//定义一个计数单位,初始为1
int a = sc.nextInt();//读入数据
//循环5次
for (int i = 1; i < 6; i++) {
if (a / 10 != 0) {
a = a / 10;
temp++;
}
}
System.out.println(temp);
}
}
1018
题目描述
输入一个整数,判断该数是奇数还是偶数。
输入输入整数n。
输出如果该数是奇数就输出“odd”,偶数就输出“even”(输出不含双引号)。
样例输入-3样例输出
odd
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if (a >= 0) {
if (a % 2 == 0) {
System.out.println("even");
} else {
System.out.println("odd");
}
} else {
if (a % -2 == 0) {
System.out.println("even");
} else {
System.out.println("odd");
}
}
}
}
1019
题目描述
某公园门票的票价是每人50元,一次购票满30张,每张可以少收2元。试编写自动计费系统程序。
输入输入一个正整数,表示购票的数量。
输出输出一个整数,表示用户实际需要支付的金额。
样例输入30样例输出
1440
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if (a >= 0 && a < 30) {
System.out.println(a * 50);
} else if (a >= 30) {
System.out.println(a * 48);
}
}
}
1020
题目描述
从键盘输入两个整数x,y,按从小到大的顺序输出它们的值。
输入输入两个整数x,y。
输出按从小到大的顺序输出它们的值。数据之间以空格间隔。
样例输入20 16样例输出
16 20
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] a=new int[2];
for(int i=0;i



