1 import java.util.Scanner; 2 public class H1{ 3 public static void main(String[] args) { 4 //1. 有两个正整数a和b,已知a*b=2048,//求a、b各为何值时,a+b的值最小 5 /*int a = 1; 6 int b = 2048; 7 int sum = a+b; 8 for (int i=1;i<=2048;i++){ 9 if(2048%i==0){ 10 int j = 2048/i; 11 if(i+j<sum){ 12 sum = i+j; 13 a = i; 14 b = j; 15 } 16 } 17 } 18 System.out.println("a:"+a+",b:"+b);*/ 19 20 // 2. 用1、2、3、4能组成多少无重复数字的数 21 /*int count = 0; 22 for (int a = 1;a<=4;a++) { 23 for (int b = 1;b<=4;b++) { 24 for (int c = 1;c<=4;c++) { 25 if(a!=b&&b!=c&&a!=c){ 26 count++; 27 } 28 } 29 } 30 } 31 System.out.println("count:"+count); 32 int count1 = 0; 33 for (int a = 1;a<=4;a++) {//ge 34 for (int b = 1;b<=3;b++) {//shi 35 for (int c = 1;c<=2;c++) {//bai 36 count1++; 37 } 38 } 39 } 40 System.out.println("count1:"+count1);*/ 41 //3. 根据以下公式计算s,n通过控制台输入。 42 //s=1/1+1/(1+2)+1/(1+2+3)+……1/(1+2+3+…+n) 43 //例如:若n的值为11时,函数的值为1.833333 44 /*double s = 0; 45 int b = 0;//分母 46 // int n = scan.nextInt(); 47 // if(n<=0){ 48 // System.out.println("sorry"); 49 // }else{ 50 for (int i=1;i<=11;i++) { 51 b += i;//b = 1 b = 1+2 52 s += 1.0/b; 53 } 54 System.out.println(s); 55 // }*/ 56 // 57 // 4. 已知序列1/2,2/3,3/5,5/8,...,求其前20项之和 58 /* double s = 0; 59 int a = 1;//分子 60 int b = 2;//分母 61 for (int i=1;i<=20;i++) { 62 //1.0*a/b=1/2 63 s += 1.0*a/b; 64 b = a+b;//分母b= 3 b = 5 65 a = b-a;//分子 a = 2 a = 5-2 = 3 66 } 67 System.out.println(s);*/ 68 //5. 有80个小朋友手拉手围成一圈, 69 //由第一个小朋友开始从1开始数, 70 //数到3的小朋友退出,再从后面的小朋友从1数起, 71 //数到3的再退出, 72 //以此游戏下去,问最后剩下哪个小朋友? 73 /*int[] array = new int[80];//0表示在圈内,1不在圈内 74 int lendNum = array.length;//剩余的小朋友数量 75 int num = 0;//报得数 76 int index = 0; 77 while(lendNum>1){ 78 if(array[index]==0){//小朋友在 79 num++; 80 } 81 if(num==3){//小朋友需要退出 82 array[index] = 1; 83 lendNum--; 84 num=0; 85 } 86 index++; 87 if(index==array.length){ 88 index = 0; 89 } 90 } 91 for (int i=0;i<array.length;i++) { 92 if(array[i]==0){ 93 System.out.println(i+1); 94 break; 95 } 96 }*/ 97 //6.定义一个数组,int[] a = {1,2,3,4,5,6,7,8}; 98 //让用户输入一个1-8的数字, 99 //并且将该数字从数组中删除, 100 //将处理后的数组数据以此打印 101 /* int[] a = {1,2,3,4,5,6,7,8}; 102 Scanner scan = new Scanner(System.in); 103 System.out.println("请输入1~8的数字:"); 104 int num = scan.nextInt();*/ 105 // 1,2,3,4,5,6,7,8 106 // 1,2,4,5,6,7,8,8 107 // 1,2,4,5,6,7,8 108 // index = 2 109 // 3~7 array[2] = array[3]; 110 /* int index = -1; 111 for (int i=0;i<a.length;i++) { 112 if(num==array[i]){ 113 index = i; 114 break; 115 } 116 } 117 if(index ==-1){ 118 System.out.println("sorry"); 119 }else{ 120 for (int i = index+1;i<array.length;i++) { 121 array[i-1]=array[i]; 122 } 123 a = Arrays.copyOf(a,a.length-1); 124 } 125 for (int num : a) { 126 System.out.print(num+" "); 127 } 128 System.out.println();*/ 129 130 } 131 }