import java.util.Scanner;
import java.lang.Math;
public class Instance {
public static Scanner sc=new Scanner(System.in);
public static void main(String[] args) {
int choose;
boolean cycle=true;
while(cycle){
//此循环用于一直执行题号中所对应的 方法体,起到调用的作用
System.out.println("===================================\n"+
"Please enter the number of instance(1-12).enter 0 or >13 will exit");
choose=sc.nextInt();//choose代表你输入的一个题号
switch(choose){
case 0: cycle=false; break;
case 1: instance1();break;
case 2: instance2();break;
case 3: instance3();break;
case 4: instance4();break;
case 5: instance5();break;
case 6: instance6();break;
case 7: instance7();break;
case 8: instance8();break;
case 9: instance9();break;
case 10: instance10();break;
case 11: instance1101();instance1102();break;
case 12: instance12();break;
case 13: instance13();break;
case 14: instance14();break;
default: cycle=false;break;
}
}
}
public static void instance1(){
//判定闰年或非闰年
System.out.println("请输入年份:");
int year=sc.nextInt();
/*if(year<0||year>6000){
System.out.println("你输入的年份有误,请重新输入");
int year=sc.nextInt();
; }*/
if((year%4==0&&year%100!=0)||year%400==0){
System.out.println(year+"是闰年");
}else{
System.out.println(year+"非闰年");
}
}
public static void instance2(){
System.out.println("请输入成绩:");
double  =sc.nextDouble();
/*if(<0||>100){
System.out.println("输入有误:");
System.exit(0);
}*/
int num= (int) /10;
switch(num){
case 10:
case 9: System.out.println("A");break;
case 8 :System.out.println("B");break;
case 7 :System.out.println("C");break;
case 6 :System.out.println("D");break;
default :System.out.println("E");break;

}
}
public static void instance3(){
//编写程序求 1+3+5+7+……+99 的和值
int sum=0;
for(int k=1;k<100;k+=2){
 sum +=k;
}
System.out.println("1+3+5+7+...+99="+sum);
}
public static void instance4(){
//打印出乘法口诀表
for(int i=1;i<10;i++){
for(int j=1;j<=i;j++){
int sum=i*j;
System.out.print(j+"*"+i+" = "+sum+" ");
}
System.out.println();
}
}
public static void instance5(){
//求出三位数的水仙花数
int a,b,c,i;
for(i=100;i<1000;i++){
a=i/100;
b=(i/10)%10;
c=i%10;
if(i==a*a*a+b*b*b+c*c*c){
System.out.println(a+"*"+a+"*"+a+" "+b+"*"+b+"*"+b+" "+c+"*"+c+"*"+c+"="+i);
}
}
}
public static void instance6(){
/*求  a+aa+aaa+.......+aaaaaaaaa=
       其中a为1至9之中的一个数,项数也要可以指定, 注意:这时的 a 已经变化了
 */
System.out.println("请输入1到9的数字:");
int a=sc.nextInt();
System.out.println("请输入相加的项数:");
int b=sc.nextInt();
int c=a;
int sum=0;
for(int k=1;k<=b;k++){
sum +=a;
a=10*a+c;
}
System.out.println(sum);
}
public static void instance7(){
// 求 2/1+3/2+5/3+8/5+13/8.....前20项之和
double fenzi=2;
double fenmu=1;
double sum=0;
for(int n=1;n<=20;n++){
sum +=fenzi/fenmu;
double t=fenmu;
fenmu =fenzi;
fenzi +=t;
}
System.out.println("2/1+3/2+5/3+8/5+...= "+sum);
}
public static void instance8(){
/*     *
   * * *
   * * * * *
   * * * * * * *
   * * * * *
   * * *
   *
*/
/* for (int i = 1; i <=13; i += 2) {
for (int j = 1; j <= i && i + j <= 14; j++) {
System.out.print("*");
}
System.out.println();
}*/
System.out.println("请输入一个大于1的自然数:");
int n=sc.nextInt();
for(int i=1;i<=2*n;i+=2){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println("");
}
for(int i=2*(n-1);i>0;i-=2){
for(int j=2;j<=i;j++){
System.out.print("*");
}
System.out.println("");
}
}
public static void instance9(){
//根据圆周率公式用代码求出 PI=4-4/3+4/5-4/7.......
double fenzi=4;
double fenmu=1;
double sum=0;
for(int n=1;n<1000000000;n++){
sum +=fenzi/fenmu;
fenzi *=-1;
fenmu +=2;
}
System.out.println(sum);
}
public static void instance10(){
//  按照  1  1  2  3  5  8  13  21  34求出第n个值为多少
System.out.println("请输入任意一个自然数");
int n=sc.nextInt();
int n1=1,n2=1,sum=0;
if(n<=2){
sum =1;
}else{
for(int h=3;h<=n;h++) {
sum=n1+n2;
n1=n2;
n2=sum;
}
}
System.out.println(sum);
}
public static void instance1101(){
//求出1-1/3+1/5-1/7+1/9......前50项的和
double fenzi=1,fenmu=1,sum=0;
for(int i=1;i<=50;i++){
sum +=fenzi/fenmu;
fenzi *=-1;
fenmu +=2;
}
System.out.println(sum);
}
public static void instance1102(){
// 求出1-1/3+1/5-1/7+1/9......最后一项的值的绝对值大于1e-5的情况下的和
double fenzi=1,fenmu=1,sum=0;
while(Math.abs(fenzi/fenmu)>1e-5){
sum +=fenzi/fenmu;
fenzi *=-1;
fenmu +=2;
}
System.out.println(sum);
}
public static void instance12(){
/*
          *
       ***
      *****
     *******
 */
// 打印出金字塔形状
System.out.println("请输入大于等于2的数字可以看到金字塔图象");
int a=sc.nextInt();
for (int i = 1; i <= a; i++) {
for (int j = 0; j < a - i; j++) {
System.out.print(" ");
}
for (int k = 0; k < 2 * i - 1; k++) {
System.out.print("*");
}
System.out.println();
}
} public static void instance13(){
// 任意一个偶数为两个质数之和
System.out.println("请你输入一个大于6的偶数");
int n=sc.nextInt();
if(n<6&&n%2!=0){
System.out.println("输入有误");
System.exit(0);
}
for(int i=3;i<(n/2);i+=2){
if(m1(n-i)&&m1(i)){
System.out.println(i + " + " + (n - i) + " = " + n);
}
}
}
public static boolean m1(int i){
//上面的方法体所要调用的
if(i%2==0){
return false;
}else{
for(int j=3;j<i;j++){
if(i%j==0){
return false;
}
}
return true;
}
}   public static void instance14(){
   //猜数字游戏,只许猜测十次,十次没中就直接结束游戏
System.out.println("请输入0到100的数字");
int num=(int)(Math.random()*100);
for(int k=1;k<=10;k++){
int a=sc.nextInt();
if(k==10&&num!=a){
System.out.println("You are stupid ! Game Over");
System.exit(0);
}
if(a<0||a>100){
System.out.println("输出的数字有误");
System.exit(0);
}
if(num==a){
System.out.println("恭喜猜对了"+num);
}else{
if(num>a){
System.out.println("你猜的太小了,请猜大点");
}else {
System.out.println("你猜的太大了,请猜小点");
}
}
}
   }
}