Java输入一串正整数,以0或者﹣1为结束,求它们中奇数的个数。 4、输入一个数n,判断它是不是素数,并输出结果.
时间: 2024-09-25 12:09:32 浏览: 34
丢失的最小正整数leetcode-Java_DataStructure:Java的数据结构和算法的学习
在Java中,你可以通过循环遍历用户输入的一串数字,然后检查每个数字是否为奇数来计算奇数的个数。当遇到0或-1时,可以认为已经找到了所有奇数并停止计数。下面是一个简单的程序示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int oddCount = 0;
System.out.println("请输入正整数,以0或-1结束:");
while (scanner.hasNextInt()) {
int number = scanner.nextInt();
// 判断数字是否为奇数
if (number % 2 != 0) {
oddCount++;
}
// 如果输入的是0或-1,则结束循环
if (number == 0 || number == -1) {
break;
}
}
System.out.println("奇数的个数为:" + oddCount);
}
}
对于判断一个数n是否为素数,你可以采用试除法。如果n大于1,那么它可以表示为两个自然数相乘的形式,即存在a和b(a≤b),使得n = a * b。若不存在这样的因子a和b,除了1和n自身外,n就是素数。下面是相应的代码片段:
```java
public boolean isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
```
你可以将这个`isPrime`函数应用到之前提到的主程序中,对用户输入的每一个数进行判断。例如:
```java
if (isPrime(n)) {
System.out.println(n + "是素数。");
} else {
System.out.println(n + "不是素数。");
}
```
阅读全文