入门训练2 序列求和
解题思路
解这道题要知道:从1到n的有序数列和 = n * ( n + 1 ) / 2
Java的long数据类型完全满足题目要求:
long
数据类型是64
位有符号的Java
原始数据类型。当对整数的计算结果可能超出int
数据类型的范围时使用。long
数据类型范围是-9,223,372,036,854,775,808
至9,223,372,036,854,775,807
(-2^63
至2^63-1
)。
long
数据类型范围内的所有整数称为long
类型的整数字面量。long
类型的整数常数总是以大写L
或小写l
结尾。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
long n = sc.nextLong();
System.out.println(n*(n+1)/2);
}
}
入门训练3 圆的面积
解题思路
这道题只是考察对浮点数的输出,这里我使用模仿C语言的输出方式:System.out.printf("%.7f",PI*r*r);
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
double PI = 3.14159265358979323;
Scanner sc = new Scanner(System.in);
double r = sc.nextInt();
System.out.printf("%.7f",PI*r*r);
}
}
入门训练4 Fibonacci数列
解题思路
这个题是斐波那契数列,也是俗称的兔子数列,不用去管最后一个数的具体值的公式怎么写,也不用去想递归算法(因为时间消耗太长了,基本能不用递归的就不用递归)根据给定的提示,写出程序即可。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int f1 = 1, f2 = 1;
if(n > 2) {
for (int i = 3; i <= n; i++) {
int temp = f2;
f2 = (f1 + f2) % 10007;
f1 = temp;
}
}
System.out.println(f2);
}
}
今日总结:入门的三道题很简单,但是希望大家都能从中有所收获,Good night~
希望我的记录能够帮到你~ 喜欢请点赞!
谢谢你看到这里!写作仓促,有疏漏之处还请评论指正,共同探讨进步!