Java基础练习四
1.洪乞丐干10天,收入是多少?
天朝有一个乞丐姓洪,去天桥要钱
第一天要了1块钱
第二天要了2块钱
第三天要了4块钱
第四天要了8块钱
以此类推
public class Work01 {
public static void main(String[] args) {
int sum = 0;
for (int i = 0; i < 10; i++) {
sum += Math.pow(2,i);
}
System.out.printf("洪乞丐10天的收入为%d\n",sum);
}
}
2. 李四跑步
李四每天跑步
第一周周一跑 100 米,周二到周天每天比前一天多 100 米。
往后每周以比前一周周一多 100 米。
请问 李四 n(控制台输入) 天后跑了多少米
import java.util.Scanner;
public class Work02 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int day = input.nextInt();
int week = day / 7;
if (day % 7 != 0) {
week++;
}
int sum = 0;
for (int j = 1; j <= week; j++) {
for (int i = 1; i <= 7; i++) {
sum += (i * 100 + (j -1) * 100);
day--;
if (day == 0) {
break;
}
}
}
System.out.println(sum);
}
}
3. 输入一个数字,和位数,判断这个数是否回文数字。(1221 就是回文数字)
- 方法一
import java.util.Scanner;
public class learn034 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int num = input.nextInt();
int count = input.nextInt();
int sum = 0;
int num1 = num;
for (int i = 0; i < count; i++) {
int last = num % 10;
sum = sum * 10 + last;
num /= 10;
}
if (sum == num1) {
System.out.println("合适");
} else {
System.out.println("不是回文数");
}
}
}
- 方法二
import java.util.Scanner;
public class Work03 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String str = input.next();
String reversedStr = reverseString(str);
if (reversedStr.equals(str)) {
// System.out.println(str.length());
System.out.printf("%s是回文数\n",str);
} else {
System.out.printf("%s不是回文数\n",str);
}
}
// 字符串翻转
public static String reverseString(String str) {
StringBuilder sb = new StringBuilder(str);
sb.reverse();
return sb.toString();
}
}
4. 一个循环,打印输出一个由字符构成的正方形图案,其中边长由用户输入确定。要求字符按照以下顺序循环使用:‘#’,‘@’,‘*’。例如,当边长为 5 时,输出如下:
# @ @ @ #
@ * * * @
@ * * * @
@ * * * @
# @ @ @ #
import java.util.Scanner;
public class Work04 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入正方形的边长:");
int num = input.nextInt();
for (int i = 1; i <= num; i++) {
if (i == 1 || i == num) {
for (int j = 1; j <= num; j++) {
if (j == 1 || j == num) {
System.out.print("# ");
} else {
System.out.print("@ ");
}
}
System.out.println();
} else {
for (int j = 1; j <= num; j++) {
if (j == 1 || j == num) {
System.out.print("@ ");
} else {
System.out.print("* ");
}
}
System.out.println();
}
}
}
}