一个四位正整数M满足千位上的数字与百位上的数字之和为9,且十位上的数字与个位上的数字之和 为5,则称M为“九五数”,将“九五数”M的千位上的数字与十位上的数字交换、百位上的数字与个位上的数字交换得到一个新的四位正整数M',则称这个数M'为M的“九五新佳数”,规定 F(M)=(M-M')/99 。若M是“九五数",且満足F (M)能被8整除,求出所有符合条件的四位数M。用java代码实现
时间: 2023-03-21 19:01:52 浏览: 66
用Java实现:for(int m = 1000; m <= 9999; m++) {
int a = m / 1000;
int b = (m / 100) % 10;
int c = (m / 10) % 10;
int d = m % 10;
if (a + b == 9 && c + d == 5) {
int m_ = d * 1000 + c * 100 + b * 10 + a;
if ( (m - m_) % 99 == 0 && (m - m_) / 99 % 8 == 0 ) {
System.out.println(m);
}
}
}
相关问题
一个四位正整数M满足千位上的数字与百位上的数字之和为9,且十位上的数字与个位上的数字之和 为5,则称M为“九五数”,输入一个四位数,是否是“九五数”,用java代码实现
是的,以下是Java代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int thousand = num / 1000; // 千位上的数字
int hundred = num / 100 % 10; // 百位上的数字
int ten = num / 10 % 10; // 十位上的数字
int unit = num % 10; // 个位上的数字
if (thousand + hundred == 9 && ten + unit == 5) {
System.out.println(num + "是九五数。");
} else {
System.out.println(num + "不是九五数。");
}
}
}
```
代码中,首先通过 `Scanner` 类获取用户输入的四位数,然后分别计算出千位、百位、十位和个位上的数字。接着使用 `if` 判断是否符合“九五数”的条件,如果符合,输出是“九五数”,否则输出不是“九五数”。
25.一个四位正整数M满足千位上的数字与百位上的数字之和为9,且十位上的数字与个位上的数字之和 为5,则称M为“九五数”,将“九五数”M的千位上的数字与十位上的数字交换、百位上的数字与个位上的数字交换得到一个新的四位正整数M,则称这个数M为M的“九五数”。判断7214,3550是否是“九五数”,用java程序实现
7214 不是“九五数”,因为它的千位数字和十位数字之和不等于 9,而是等于 7。而 3550 是“九五数”,因为它的千位数字和十位数字之和为 5,百位数字和个位数字之和也为 5。
以下是用 Java 实现的代码:
```
public class Main {
public static void main(String[] args) {
int num1 = 7214;
int num2 = 3550;
if (isNineFiveNumber(num1)) {
System.out.println(num1 + " 是“九五数”");
} else {
System.out.println(num1 + " 不是“九五数”");
}
if (isNineFiveNumber(num2)) {
System.out.println(num2 + " 是“九五数”");
} else {
System.out.println(num2 + " 不是“九五数”");
}
}
public static boolean isNineFiveNumber(int num) {
int thousand = num / 1000;
int hundred = num % 1000 / 100;
int ten = num % 100 / 10;
int one = num % 10;
if (thousand + hundred == 9 && ten + one == 5) {
return true;
} else {
return false;
}
}
}
```
阅读全文