1.1 习题
打印出1000以内的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个“水仙花数”,因为153=(1的三次方+5的三次方+3的三次方)。
1.1.1 打印水仙花
/**
* 打印1000以内的水仙花数
* @author stu
*
*/
class Test01PrintSXH01{
public static void main(String[] args) {
int x,y,z;
for(int m = 100;m < 1000;m++){
x = m/100;
y = m%100/10;
z = m%10;
if(m == x*x*x + y*y*y + z*z*z){
System.out.println(m);
}
}
}
}
//打印水仙花while循环
class Test01PrintSXH02{
public static void main(String[] args) {
int x,y,z;
int m = 100;
while(m < 1000){
x = m/100;
y = m%100/10;
z = m%10;
if (m == x*x*x + y*y*y + z*z*z) {
System.out.println(m);
}
m++;
}
}
}
1.1.2 通过代码完成两个整数内容的交换
//通过代码完成两个整数内容的交换
class Test0201{
public static void main(String[] args) {
int x = 1;
int y = 2;
System.out.println("交换前:" + x +"--" + y);
x = x + y;
y = x - y;
x = x - y;
System.out.println("交换后:" + x + "--" + y);
}
}
class Test0202{
public static void main(String[] args) {
int x = 1;
int y = 2;
int t = 0;
System.out.println("交换前:" + x +"--" + y);
t = x;
x = y;
y = t;
System.out.println("交换后:" + x + "--" + y);
}
}
1.1.3 给定3个数,求出3个数中的最大值,并打印出最大值
//给定3个数,求出3个数中的最大值,并打印出最大值
//开始我自己写的
class Test0301{
public static void main(String[] args) {
int x = 4;
int y = 8;
int z = 6;
int t = 0;
if (x > y) {
t = x;
}else{
t = y;
}
if (t < z){
t = z;
}
System.out.println(t);
}
}
//网上的例子
class Test0302{
public static void main(String[] args) {
int x = 4;
int y = 8;
int z = 6;
int max = z;
if (x > z) {
max = x;
}
if (y > z) {
max = y;
}
if (x > y) {
max = x;
}
System.out.println(max);
}
}
1.1.4 判断某数能不能被3、5、7同时整除
//判断某数能不能被3、5、7同时整除
class Test04{
public static void main(String[] args) {
int x = 9;
if(x%3 == 0 && x%5 == 0 && x%7 == 0){
System.out.println(x + "能被3、5、7同时整除");
}else{
System.out.println(x + "不能被3、5、7同时整除");
}
}
}