赞
踩
package input; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner in= new Scanner(System.in); for(int n=2;n<100;n++) { boolean isPrime=true; for(int i=2;i<n;i++) { if(n%i==0) { isPrime=false; break; } } if(isPrime) { System.out.print(n+" "); } } } }
逻辑类型
优先级 | 运算符 | 结合性 |
1 | () | 从左到右 |
2 | !+ - ++ -- | 从右到左(单目的+和-) |
3 | * / % | 从左到右 |
4 | + - | 从左到右 |
5 | < <= > >= | 从左到右 |
6 | == != | 从左到右 |
7 | && | 从左到右 |
8 | || | 从左到右 |
9 | = += -=*= /= %= | 从右到左 |
package input;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner in= new Scanner(System.in);
int n=in.nextInt();
double sum=0.0;
for(int i=1;i<=n;i++)
{
sum+=1.0/i;
}
System.out.printf("%.2f",sum);
}
}
package input; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner in= new Scanner(System.in); int n=in.nextInt(); double sum=0.0; int sign=1; for(int i=1;i<=n;i++) { //i 为奇数的时候是正的 if(i%2==1) { sum+=1.0/i; } else { sum-=1.0/i; } } System.out.printf("%.2f",sum); } }
package input;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner in= new Scanner(System.in);
int n=in.nextInt();
double sum=0.0;
int sign=1;
for(int i=1;i<=n;i++,sign=-sign)//可以把sign挪到这个for里去,但是要用逗号隔开
{
sum+=sign*1.0/i;
}
System.out.printf("%.2f",sum);
}
}
package input; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner in= new Scanner(System.in); int a=in.nextInt(); int b=in.nextInt(); int gcd=1; for(int i=2;i<=a&&i<=b;i++) { if(a%i==0&&b%i==0) { gcd=i; } } System.out.println(gcd); } }
枚举:从2开始找能被两个数同时整除的数,在循环里更新这个值,直到枚举结束,就能输出最大公约数。
辗转相除法
步骤:
package input; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner in= new Scanner(System.in); int a=in.nextInt(); int b=in.nextInt(); int gcd=1; while(b!=0) { int r=a%b; a=b; b=r; } System.out.println(a); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。