只有2%的人会解吗? 利用程序来回答!

微信上有这样一个图片:


让我们来戳穿这个谎言, 程序员通常会写个程序验证一下,如下:

 C++ Code 
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
int GetValues(  const  int result )
{
     const  int arr[] = { 13579111315};

     int value =  0;
     int i, j, k;
     for ( i =  0; i <  sizeof(arr)/ sizeof( int); ++i ) {
        value = arr[i]; 
         if ( value > result ) { 
            value =  0continue
        } 

         for (j =  0;  j <  sizeof(arr)/ sizeof( int); ++j ) {
            value += arr[j];
             if ( value > result ) { 
                value = arr[i];  continue
            } 
            
             for ( k =  0; k <  sizeof(arr)/ sizeof( int); ++k) {
                value += arr[k];
                
                 if ( value != result ) {
                     if ( k ==  sizeof(arr)/ sizeof( int)- 1 ) 
                        value = arr[i];
                     else 
                        value = arr[i] + arr[j];  
                     continue;
                }

                printf(  "The Values is: %d, %d, %d.\n", arr[i], arr[j], arr[k] );
                value = arr[i];
                 break;
            }       
        }
    }


     return  0;
}

Try it, You will konw that is impossible!!微笑生活中,处处皆编程! Enjoy it!



猜你喜欢

转载自blog.csdn.net/JohnnyHu90/article/details/50616393