1.153是一个非常特殊的数,它等于它的每位数字的立方和,即153=111+555+33*3。编程求出所有满足这种条件的三位十进制数,并从大到小进行输出
解题思路:此题就是简单的循环三重循环将每个三位数都遍历出来然后用if判断符合条件的数值,将数值赋给之前定义的值,然后输出即可
public class Main {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i < 10; i++) {
for (int j = 1; j < 10; j++) {
for (int j2 = 1; j2 < 10; j2++) {
if ((i*i*i)+(j*j*j)+(j2*j2*j2)==(i*100)+(j*10)+j2) {
sum = (i*100)+(j*10)+j2;
System.out.println(sum);
}
}
}
}
}
}
2.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半多一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?
解题思路:此题首先是根据已知条件第10天就剩一个桃子来判断第九天剩余的桃子,接着是第八天…第一天,找到每天减少的规律,逆向推出第一天桃子的数量
public class Main2 {
public static void main(String[] args) {
//由题意可知,
//第九天吃过后就剩一个桃子,
//那么第八天就是4个
int tao = 1;//桃子数量
int day = 10;//天数
for (int i = day; i >0; i--) {
if (i<10) {//因为第十天没有吃桃,就不需计算
tao = (tao+1)*2;
}
}
System.out.println(tao);
}
}