习题2
1-6
此处有图片
1.
package com.qfedu.test2;
public class Test1 {
public static void main(String [] args) {
//for循环计算1-100的和
int sum = 0;
for(int i = 0;i <= 100;i++) {
sum += i;
}
System.out.println("1--100的和为:" + sum);
}
}
2.
package com.qfedu.test2;
public class Test2 {
public static void main(String [] args) {
//求1-100的奇数和
// int sum = 0;
// for(int i = 1;i < 100;i++) {
// if(i%2!=0) {
// sum += i;
// }
// }
// System.out.println("1-100之间的奇数和:" + sum);
// int sum = 0;
// int i = 1;
// while(i <= 100) {
// sum += i;
// i +=2;
// }
// System.out.println("1-100之间的奇数和为:" + sum);
int sum = 0;
int i = 1;
do {
sum += i;
i += 2;
}while(i <= 100);
System.out.println("1-100之间的奇数和为:" + sum);
}
}
3.
package com.qfedu.test2;
public class Test3 {
//while/do-while循环 把第一第二题用while/do-while循环改写
public static void main(String [] args) {
// int sum = 0;
// int i = 1;
// while(i <= 100) {
// sum += i;
// i++;
// }
// System.out.println("1-100之间的和为:" + sum);
int sum = 0;
int i = 1;
do {
sum += i;
i++;
}while(i <= 100);
System.out.println("1-100之间的和为:" + sum);
}
}
4.
package com.qfedu.test2;
import java.util.Scanner;
public class Test4 {
//(for循环)读入一个小于10的整数 n,输出它的阶乘 n;
public static void main(String [] args) {
int n;
int product = 1;
Scanner sc = new Scanner(System.in);
System.out.println("请输入1-10之间的数字计算阶乘:");
n = sc.nextInt();
if(n>=1&&n<=10) {
for(int i = n;i > 0;i--) {
product *= i;
}
System.out.println(n + "的阶乘结果为:" + product);
}else {
System.out.println("请输入正确范围内的数字!!!");
}
}
}
5.
package com.qfedu.test2;
public class Test5 {
//for循环求100以内能被3整除但不能被5整除的数字的和
public static void main(String [] args) {
int sum = 0;
for(int i = 1;i <= 100;i++) {
if(i%3==0&&i%5!=0) {
System.out.println("符合情况的数字:" + i);
sum += i;
}
}
System.out.println("100以内能被3整除但不能被5整除的数字的和为:" + sum);
}
}
6.
package com.qfedu.test2;
public class Test6 {
//for循环“解决百钱买百鸡”
//题目:3文钱可以买一只公鸡,2文钱可以买一只母鸡,一文钱可以买3只小鸡。
//用100文钱买100只鸡,那么公鸡,母鸡和小鸡各多少只。
public static void main(String [] args) {
int i = 0;
for(int x = 0;x <= 100;x++) {
for(int y = 0;y <= 100;y++) {
for(int z = 0;z <= 100;z++) {
if((x+y+z == 100)&&((3*x)+(2*y)+(z/3) == 100)&&(z%3==0)) {
i++;
System.out.println("第"+ i +"种方法:"+"\t公鸡个数为:"+ x +","+"\t母鸡个数为:"+ y +","+"\t小鸡个数为:"+ z);
}
}
}
}
}
}
7-8-9
此处有图片
7.
package com.qfedu.test2;
public class Test7 {
//for循环,搬砖问题:36块砖,男搬4,女搬3,两个小孩抬1块,
//要求一次全搬完,问男,女,小孩各多少?
public static void main(String [] args) {
//设男人x人,女人y人,小孩z人
//思想思路:4x+3y+z/2=36其中z%2==0
//男人取值范围0-9;
//女人取值范围0-12;
//小孩取值范围0-72;
for(int x = 0;x <= 9;x++) {
for(int y = 0;y <= 12;y++) {
for(int z = 0;z <= 72;z++) {
if(x+y+z==36&&4*x+3*y+(z/2)==36&&z%2==0) {
System.out.println( "男人人数:"+ x +"女人人数:"+ y +"小孩人数:"+ z);
}
}
}
}
}
}
8.
package com.qfedu.test2;
public class Test8 {
//for循环,编程找出四位整数abcd中(ab+cd)(ab+cd)=abcd的数
public static void main(String [] args) {
//思路a,b,c,d的取值范围为0-9
int a,b,c,d;
for(int i = 1000;i <=9999;i++) {
a = i/1000;
b = i/100-a*10;
c = i/10-a*100-b*10;
d = i-a*1000-b*100-c*10;
if(((a*10+b)+(c*10+d))*((a*10+b)+(c*10+d))==i) {
System.out.println("该四位数为:" + i);
}
}
}
}
9.
package com.qfedu.test2;
import java.util.Scanner;
public class Test9 {
public static void main(String [] args) {
System.out.println("请输入一个整数n:");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for(int i = 1;i <= n;i++) {
//先输入三角形空格
for(int k = n;k >= i;k--) {
System.out.print(" ");
}
//再输出星号
for(int j = 2*i-1;j >= 1;j--) {
System.out.print("*");
}
System.out.println();
}
}
}
10-11
此处有图片
10.
package com.qfedu.test2;
public class Test10 {
//99乘法表
public static void main(String [] args) {
int k;
for(int i = 1;i <= 9;i++) {
//k = i;
for(int j = 1;j <= 2*i-1;j++) {
System.out.print(j + "*" + i +"="+ (i*j)+"\t");
if(i==j) {
break;
}
}
System.out.println(" ");
}
}
}
11.
package com.qfedu.test2;
public class Test11 {
public static void main(String [] args) {
//水仙数a^3+b^3+c^3=abc
int a,b,c;
for(int i = 100;i <= 999;i++) {
a = i/100;
b = i/10-a*10;
c = i-a*100-b*10;
if((a*a*a)+(b*b*b)+(c*c*c)==i) {
System.out.println("该水仙数为:" + i);
}
}
}
}