int Month = 30;
for(int i = 3; i < Month; i++){
f = f2;
f2 = f1 + f2;
f1 = f;
System.out.println(f2);
}
}
}
输出:
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
10946
17711
28657
46368
75025
121393
196418
317811
514229
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。
package suanfa50;
/**
-
判断101-200之间有多少个素数,并输出所有素数。
-
@author ASUS
*/
public class test02 {
public static void main(String[] args){
int count = 0;
for(int i = 101; i < 200; i++){
boolean flag = true;
for(int j = 2;j < Math.sqrt(i); j++){
if(i % j == 0){
flag = false;
break;
}
}
if(flag){
count++;
System.out.println(i + “是素数”);
}
}
System.out.println(“素数的总数是:” + count);
}
}
输出:
101是素数
103是素数
107是素数
109是素数
113是素数
121是素数
127是素数
131是素数
137是素数
139是素数
149是素数
151是素数
157是素数
163是素数
167是素数
169是素数
173是素数
179是素数
181是素数
191是素数
193是素数
197是素数
199是素数
素数的总数是:23
【程序3】
题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
package suanfa50;
/**
-
打印出所有的 "水仙花数 ",
-
所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。
-
例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
-
@author ASUS
*/
public class test03 {
public static void main(String[] args){
int a, b, c;
for(int i = 101; i < 1000; i++){
a = i / 100;//百位
b = i / 10 % 10;//十位
c = i % 10;//个位
if(aaa + bbb + ccc == i){
System.out.println(i + “是水仙花数”);
}
}
}
}
输出:
153是水仙花数
370是水仙花数
371是水仙花数
407是水仙花数
【程序4】
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n > k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
package suanfa50;
/**
- 将一个正整数分解质因数。例如:输入90,打印出
《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享
90=233*5
-
@author ASUS
*/
public class test04 {
public static void main(String[] args){
int n = 90;
int k = 2;
while(n >= k){
if(n == k){
System.out.println(k);
break;
}else if(n%k == 0){
System.out.println(k);
n = n / k;
}else{
k++;
}
}
}
}
输出:
2
3
3
5
【程序5】
题目:利用条件运算符的嵌套来完成此题:学习成绩> =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
import java.util.Scanner;
public class test05 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int score=input.nextInt();
char grade=score>=90?‘A’:score>=60?‘B’:‘C’;
System.out.println(grade);
}
}
【程序6】
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
package suanfa50;
import java.util.Scanner;
/**
-
输入两个正整数m和n,求其最大公约数和最小公倍数。
-
@author ASUS
*/
public class test04{
public static void main(String[] args) {
Scanner input =new Scanner(System.in);
int a=input.nextInt();
int b=input.nextInt();
test04 test=new test04();
int i = test.gongyinshu(a, b);
System.out.println(“最小公因数”+i);
System.out.println(“最大公倍数”+a*b/i);
}
public int gongyinshu(int a,int b) {
if(a<b) {
int t=b;
b=a;
a=t;
}
while(b!=0) {
if(a==b)
return a;
int x=b;
b=a%b;
a=x;
}
return a;
}
}
输出:
5
8
最小公因数1
最大公倍数40
【程序7】
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
package suanfa50;
import java.util.Scanner;
/**
-
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
-
@author ASUS
*/
public class test04{
public static void main(String[] args) {
int abccount=0;
int spacecount=0;
int numcount=0;
int othercount=0;
Scanner input=new Scanner(System.in);
String toString=input.nextLine();
char [] ch=toString.toCharArray();
for(int i=0;i<ch.length;i++) {
if(Character.isLetter(ch[i])) {
abccount++;
}else if(Character.isDigit(ch[i])) {
numcount++;
}else if(Character.isSpaceChar(ch[i])){
spacecount++;
}else {
othercount++;
}
}
System.out.println(abccount);
System.out.println(spacecount);
System.out.println(numcount);
System.out.println(othercount);
}
}
输出: