每日一题
题目
打印所有不超过n(n<256)的,其平方具有对称性质的数。如11*11=121。
Python解题
for i in range(256):
num = str(i**2)
lenNum = len(num)
for j in range(lenNum//2):
if num[j] != num[-1-j]:
break
else:
print(i,i**2)
JavaScript解题
<script>
var flag = true;
for(var i=0;i<256;i++){
var num = i * i;
var str = String(num);
var len = str.length;
for(var j=0;j<=Math.floor(len/2);j++){
var a = str.charAt(j);
var b = str.charAt(len-1-j);
if(a!=b){
flag = false;
break;
}
}
if(flag){
console.log(i,i*i)
}
flag = true;
}
</script>
Java解题
package code01;
public class Test01 {
public static void main(String[] args) {
for(int i=0;i<256;i++) {
String num = String.valueOf(i*i);
boolean flag = true;
for(int j=0;j<=num.length()/2;j++) {
char a = num.charAt(j);
char b = num.charAt(num.length()-1-j);
if(a!=b) {
flag = false;
break;
}
}
if(flag) {
System.out.println(i+","+i*i);
}
}
}
}