2017-05-03 5 views
0
package com.wukang.demo; 

public class Demo { 

    public static void main(String[] args) { 
     for (int i = 11; i < 32;i++) { 
      int a = i * i; 
      int b = i & 10; 
      int c = i/10; 
      if((a/10 & 10) == c && (a & 10) == b) { 
       System.out.println(a);      
      } 
     } 
    } 
} 
+1

mmm, was Ihr Programm tun sollte? Es ist unklar, was dein Programm macht? Kannst du mehr erklären? –

+0

Haben Sie versucht, Ihren Code zu debuggen? – RamPrakash

+1

Ihr Programm hatte keine Ergebnisse, da die if-Bedingung nicht erfüllt ist. Ich weiß nicht, was diese Aussage machen soll, aber es ist ein guter Grund, nicht so viele Bedingungen in einer einzigen Zeile zu kombinieren. –

Antwort

4
for (int i = 11; i < 32; i++) { 
    int a = i * i; 
    int b = i % 10; 
    int c = i/10; 
    if ((a/10 % 10) == c && (a % 10) == b) { 
    //---------------------------^ 
     System.out.println(a); 
    } 
} 

Sie & statt% verwendet wird, ist

+0

Woher wissen Sie das/erraten, dass er eine Modulo vorhatte? Ich rufe schwarze Magie haxx! ;) –

+0

@OHGODSPIDERS manchmal mache ich diesen Fehler zu% = (shift + 5) & = (shift + 6) auf der Tastatur - und es war reiner Zufall modulo bringt das erwartete Ergebnis ^^ – KilledByCheese

+0

Ich habe nicht erwartet, dass ich das gemacht habe Fehler, danke! @Kidded @YCF_L –

Verwandte Themen