常见编程题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
     /**
  * 判断输入的数字是否是回文数
 
  * @date 2013-3-2 下午10:11:09
  */
public  void  judgeInputNumber() {
     String intputValue = JOptionPane.showInputDialog( "请输入一个整数" );
     StringBuilder source =  new  StringBuilder(intputValue);
     source.reverse();
     String reverseValue =  new  String(source);
     if  (reverseValue.equals(intputValue)) {
         System.out.println(intputValue +  "是一个回文数" );
     else  {
         System.out.println(intputValue +  "不是一个回文数" );
     }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
static   void  loopNumber(){  
         int  number= 0 ,d5,d4,d3,d2,d1;  
         String str=JOptionPane.showInputDialog( "输入一个1至99999之间的数" );  
         number=Integer.parseInt(str);  
         if (number< 100000 &&number> 0 //判断number在1至99999之间的条件  
             {  
                 d5=number/ 10000 ;    //计算number的最高位(万位)d5  
                 d4=(number/ 1000 )% 10  ;   //计算number的千位d4  
                 d3=(number/ 100 )% 10  ;   //计算number的百位d3  
                 d2=(number% 100 )/ 10 ;  
                 d1=number% 10 ;  
               if (d5 != 0 )   //判断number是5位数的条件  
                 {  
                   System.out.println(number+ "是5位数" );  
                   if (d5 ==d1 && d4 == d2)  //判断number是回文数的条件  
                    {  
                       System.out.println(number+ "是回文数" );  
                    }  
                   else 
                    {   
                      System.out.println(number+ "不是回文数" );  
                    }  
                 }  
               else  if (d5 ==  0  && d4 !=  0 )   //判断number是4位数的条件  
                 {  
                    System.out.println(number+ "是4位数" );  
                    if (d1 ==d4&&d2==d3)  //判断number是回文数的条件码  
                    {  
                         System.out.println(number+ "是回文数" );  
                    }  
                   else 
                    {   
                       System.out.println(number+ "不是回文数" );  
                    }  
                 }  
                 else  if (d5 ==  0 &&d4 ==  0 &&d3 != 0 )   //判断number是3位数的条件  
                 {  
                    System.out.println(number+ "是3位数" );  
                    if (d3 == d1)  //判断number是回文数的条件  
                    {  
                         System.out.println(number+ "是回文数" );  
                    }  
                   else 
                    {   
                     System.out.println(number+ "不是回文数" );  
                    }  
                 }  
              else  if (d2!= 0 )  
                 {  
                   System.out.println(number+ "是2位数" );  
                    if (d1==d2)  
                    {  
                        System.out.println(number+ "是回文数" );  
                    }  
                   else 
                    {   
                      System.out.println(number+ "不是回文数" );  
                    }  
                 }  
              else  if (d1!= 0 )  
                 {  
                   System.out.println(number+ "是1位数" );  
                    System.out.println(number+ "是回文数" );  
                 }  
             }  
          else 
             {  
                System.out.printf( "\n%d不在1至99999之间" ,number);  
             }  
     }



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/**
  * 打印各种图形
 
  * @author Administrator
 
  */
public  class  Shape {
  
     public  static  void  main(String[] args) {
         Shape shape =  new  Shape();
         shape.printTriangle( 5 );
         shape.printPyramid( 5 );
     }
  
     /**
      * 在控制台打印三角形
     
      * @date 2013-3-2 下午06:26:12
      */
     public  void  printTriangle( int  size) {
         // 正着打印
         for  ( int  i =  0 ; i < size; i++) { // 控制行数
             for  ( int  j = i; j >=  0 ; j--) { // 控制列数
                 System.out.print( "  ☆ " ); // 打印图形
             }
             System.out.println(); // 换行
         }
         System.out
                 .println( "----------------------------------------------------" );
         // 倒着打印
         for  ( int  i =  0 ; i < size; i++) {
             for  ( int  j = size; j > i; j--) {
                 System.out.print( "  * " );
             }
             System.out.println();
         }
         System.out
                 .println( "----------------------------------------------------" );
     }
  
     public  void  printPyramid( int  lay) {
         // 定义变量lay,i,j,k
         int  i, j, k;
         // 给lay赋值,它代表金字塔的总层数,改变它的值,金字塔的层数也会跟着改变
         // 用for循环来控制金字塔的层数输出
         for  (i =  1 ; i <= lay; i++) {
             // 嵌套一个for循环来打出空格
             for  (j =  1 ; j <= lay - i; j++) {
                 System.out.print( " " );
             }
             // 用for循环来控制"*"的输出
             for  (k =  1 ; k <=  2  * (i -  1 ) +  1 ; k++) {
                 System.out.print( "*" );
             }
             System.out.println();
         }
     }
}


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
  * 打印九九乘法口诀
  * @author Administrator
  *
  */
public  class  Multiplication {
     public  static  void  main(String[] args) {
         for ( int  i= 1 ;i<= 9 ;i++){
             for ( int  j= 1 ;j<=i;j++){
                 if (i== 3 &&j== 3 ||i== 4 &&j== 3 )
                 System.out.print( " " +j+ "*" +i+ "=" +i*j+ " " );
                 else {
                     System.out.print(j+ "*" +i+ "=" +i*j+ " " );
                 }
             }
             System.out.println( "  " );
         }
     }
      
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import  java.io.Console;
  
/**
  * 打印100-999之间的水仙花数 水仙花数 例子:153=1*1*1+5*5*5+3*3*3
 
  * @author Administrator
 
  */
public  class  Daffodil {
     public  static  void  main(String[] args) {
         Daffodil daffodil =  new  Daffodil();
         daffodil.printDaffodil();
     }
  
     public  void  printDaffodil() {
         for  ( int  i =  100 ; i <=  999 ; i++) {
             int  baiWei, shiWei, geWei;
             // baiWei = i / 100;
             baiWei = (i %  1000 ) /  100 ;
             // System.out.println("百位:"+baiWei);
             // shiWei = (i - baiWei * 100) / 10;
             shiWei = (i %  100 ) /  10 ;
             // geWei = i - baiWei * 100 - shiWei * 10;
             geWei = i %  10 ;
             // int sum = geWei * geWei * geWei + shiWei * shiWei * shiWei +
             // baiWei
             // * baiWei * baiWei;
             int  sum = ( int ) (Math.pow(geWei,  3 ) + Math.pow(shiWei,  3 ) + Math
                     .pow(baiWei,  3 ));
             if  (i == sum) {
                 System.out.println( "水仙花数:"  + i);
             }
         }
     }
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值