java吧 关注:1,240,349贴子:12,712,508

回复:【入驻JAVA吧 记录学习点滴】

取消只看楼主收藏回复

【程序43】
题目:求0—7所能组成的奇数个数。
public class Test43 { /**
* 【程序43】 题目:求0—7所能组成的奇数个数。
*
* 分析:先考虑0-7这8个数字在每种位数能组成多少不同的奇数 1.1位数:4个
* 2.2位数:6*4个(排列组合思想)·····
* 3.3位数:6*6*4··········
*
* */ public static void main(String[] args) {
// 定义一个数组,里面的元素是每种位数的数字包含奇数的个数,比如2位数里面可以有7*7种奇数,count[1] = 6*4;
int[] count = new int[8];
//1位数中有4个奇数
count[0] = 4;
//2位数中奇数的算法: 个位上有4种可能(1,3,5,7);十位上有6种可能(当个位为1时)
count[1] = 6*4;
// 循环控制i位数有几种可能的奇数,能组成奇数的个数为数组的一个元素,从3位数开始呈现规律性阶乘
for (int i = 2; i < 8; i++) { count[i] = count[i - 1] * (8 - i);
} // 计算数组中所有元素的和,也就是所有情况的奇数个数
int sum = 0;
for (int i = 0; i < 8; i++) {
sum += count[i];
} System.out.println(sum);
}
}



175楼2011-12-19 11:03
回复
    【程序44】
    题目:一个偶数总能表示为两个素数之和。
    又蛋疼了~~~尼玛 0,2偶数能表示为两个素数的和? 应该是除了这两个数之外吧~~


    176楼2011-12-19 11:05
    回复
      【程序45】
      题目:判断一个素数能被几个9整除
      弱弱的问一句~~能被9整除了,还叫素数吗?


      177楼2011-12-19 11:07
      回复


        178楼2011-12-19 11:07
        回复
          吃饭回来接着蛋疼~~~如此经典50题,各种程序语言的初学者,应该都做过,我不晓得对于那几个令我蛋疼的命题其他人是怎么理解的~~~求真相


          179楼2011-12-19 11:09
          回复
            public class Test44 { /**
            * 【程序44】 题目:一个大于2的偶数总能表示为两个素数之和。
            *
            * 偶数:2*n,它可以拆成n组两个数相加;
            * 偶数可以是任意大的,用程序应该体现不出来任意大的偶数。暂时现在20000以内判断
            * */
            public static void main(String[] args) { int evenNumber = 0;
            int num1 = 0;
            int num2 = 0;
            int count = 0;
            for (int i = 1; i < 10000; i++) {
            evenNumber = 2 * i; for(num1 = 2; num1 < evenNumber; num1++){
            num2 = evenNumber - num1;
            //如果存在两个素数使他们的和等于这个偶数,那么满足条件的偶数就+1;
            if(Test44_SuShu.judgeEvenNumber(num1)==true
            && Test44_SuShu.judgeEvenNumber(num2)==true){
            count++;
            break;
            }
            }
            //在两万以内符合条件的偶数(除了0,2外)有9998个,如果所有这些偶数都满足有两个素数相加和等于它,就输出下面的语句
            //那么应该执行了9998次count++;
            if(count == 9998){
            System.out.println("在20000以内一个大于2的偶数总能表示为两个素数之和");
            }
            }
            }
            }


            180楼2011-12-19 11:35
            回复
              【程序47】
              题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。
              终于见到一个不蛋疼的了


              182楼2011-12-19 13:56
              回复
                import java.util.Scanner; public class Test47 { /**
                * 【程序47】 题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。
                *
                * */
                // 传入一个整数,打印该数值个数的*;
                public void daYin(int number) {
                for (int i = 0; i < number; i++) {
                System.out.print("*" + " ");
                }
                System.out.println();
                } public static void main(String[] args) {
                Scanner input = new Scanner(System.in);
                for (int i = 0; i < 7; i++) {
                System.out.println("请输入第" + (i + 1) + "个整数:");
                int number = input.nextInt(); Test47 t47 = new Test47();
                t47.daYin(number);
                } }
                }


                183楼2011-12-19 13:56
                回复
                  【程序48】
                  题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字 都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。


                  184楼2011-12-19 14:31
                  回复
                    import java.util.Scanner; public class Test48 { /**
                    * 【程序48】 题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字
                    * 都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
                    *
                    * 现在得到一个数字,求加密后的数字。 将每一位上的数字存到一个长度为4的数组里面
                    * */
                    public static void main(String[] args) {
                    Scanner input = new Scanner(System.in);
                    System.out.println("请输入要加密的四位数:");
                    int number = input.nextInt();
                    int[] numArr = new int[4];
                    numArr[0] = number / 1000;
                    numArr[1] = number / 100 % 10;
                    numArr[2] = number / 10 % 10;
                    numArr[3] = number % 10; for (int i = 0; i < numArr.length; i++) {
                    numArr[i] = (numArr[i] + 5) % 10;
                    } int temp = 0;
                    // 第一位与第四位交换
                    temp = numArr[0];
                    numArr[0] = numArr[3];
                    numArr[3] = temp; // 第二位与第四位交换
                    temp = numArr[1];
                    numArr[1] = numArr[2];
                    numArr[2] = temp; // 输出结果
                    System.out.print("加密后的数字为:");
                    for (int shuChu : numArr) {
                    System.out.print(shuChu + " ");
                    }
                    }
                    }
                    


                    185楼2011-12-19 14:31
                    回复
                      import java.util.Scanner; public class Test48_1 { /**
                      * * 【程序48】 题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字
                      * 都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
                      *
                      * 现在得到一个加密后的数字,求加密前的数字是多少;
                      *
                      * */
                      public static void main(String[] args) {
                      Scanner input = new Scanner(System.in);
                      System.out.println("请输入接受到的数字");
                      int number = input.nextInt(); int[] numArr = new int[4];
                      numArr[0] = number / 1000;
                      numArr[1] = number / 100 % 10;
                      numArr[2] = number / 10 % 10;
                      numArr[3] = number % 10; // 将第一位的数字和第四为交换,第二位与第三位交换
                      // 第一位与第四位交换
                      int temp = 0;
                      temp = numArr[0];
                      numArr[0] = numArr[3];
                      numArr[3] = temp; // 第二位与第四位交换
                      temp = numArr[1];
                      numArr[1] = numArr[2];
                      numArr[2] = temp; // 现在得到的每一位上面都是除以10之后的余数,将余数转换为本来数字(因为每一位上的数字都是小于10的加上5后
                      // 大于5小于15,所以每个余数对应的原本的数字只有一个) for (int i = 0; i < numArr.length; i++) {
                      if (numArr[i] < 5) {
                      numArr[i] = numArr[i] + 10;
                      }
                      }
                      // 将数字-5
                      for (int i = 0; i < numArr.length; i++) {
                      numArr[i] = numArr[i] - 5;
                      } // 输出结果
                      System.out.println("加密前的数字为:");
                      for (int shuChu : numArr) {
                      System.out.print(shuChu + " ");
                      }
                      }
                      }
                      


                      186楼2011-12-19 14:32
                      回复
                        【程序40】
                        题目:字符串排序。
                        【程序46】
                        题目:两个字符串连接程序
                        【程序49】
                        题目:计算字符串中子串出现的次数
                        这几个关于字符串的放到一起~~


                        187楼2011-12-19 14:33
                        回复
                          蛋疼的度娘,竟然不要我发帖,提示不要发广告或者不恰当内容


                          188楼2011-12-19 15:04
                          回复
                            如何是好 发不出来,难道有涉及到和谐内容?


                            189楼2011-12-19 15:07
                            回复


                              


                              190楼2011-12-19 15:13
                              回复