day6

  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 }

 

posted @ 2018-10-23 23:53  小书虫源  阅读(239)  评论(0编辑  收藏  举报