Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用户输入10个数字时显示最小数字的困难_Java_While Loop - Fatal编程技术网

Java 用户输入10个数字时显示最小数字的困难

Java 用户输入10个数字时显示最小数字的困难,java,while-loop,Java,While Loop,该程序要求用户输入10个数字,并应显示用户输入的所有10个数字中的最小数字。这是我的密码: import java.util.Scanner; public class SmallestNumber { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); int counter=10;

该程序要求用户输入10个数字,并应显示用户输入的所有10个数字中的最小数字。这是我的密码:

import java.util.Scanner;
  public class SmallestNumber {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner input=new Scanner(System.in);

    int counter=10;
    int smallest=0; 
    int number;

    System.out.println("Enter a number");


    while(counter>0)
    {
        System.out.println("Enter a number");
        number=input.nextInt();

    if(number<smallest)
        //stores number to largest
        smallest=number;
        //decrement counter
        counter=counter-1;}

        System.out.println("Smallest number is "+smallest);




 }}
import java.util.Scanner;
公共类最小数{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
扫描仪输入=新扫描仪(System.in);
int计数器=10;
int=0;
整数;
System.out.println(“输入一个数字”);
而(计数器>0)
{
System.out.println(“输入一个数字”);
number=input.nextInt();
如果(数字)
应该改变

您应该在开始时将其设置为一个大的数字,如
int minimen=Integer.MAX_VALUE;

我假设您的“最小”数始终为0。这是因为它从0开始,并且没有输入小于该值(除非用户输入负数)

更改代码,使最小值等于第一个用户输入,对于后续的每个输入,根据该值进行测试

import java.util.Scanner;
public class SmallestNumber {

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);

int counter=10;
int smallest; 
int number;

System.out.println("Enter a number");


while(counter>0)
{
    System.out.println("Enter a number");
    number=input.nextInt();

    if (counter == 10)
    {
        smallest = number;
    }
    else
    {
        if(number<smallest)
        //stores number to largest
        smallest=number;
    }
    //decrement counter
    counter=counter-1;}

    System.out.println("Smallest number is "+smallest);
 }}
import java.util.Scanner;
公共类最小数{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
扫描仪输入=新扫描仪(System.in);
int计数器=10;
int最小;
整数;
System.out.println(“输入一个数字”);
而(计数器>0)
{
System.out.println(“输入一个数字”);
number=input.nextInt();
如果(计数器==10)
{
最小=数量;
}
其他的
{

如果(number我假设您的问题是您已经从最小值=0开始。这样,用户需要输入小于0的数字以小于初始值


您应该使用一个非常大的数字(比如int minimen=Integer.MAX_VALUE;)初始化minimen。

首先将System.out.println输出到while循环的外侧。

第二,如果您正在考虑从10个输入数字中计算最小的数字,则更改逻辑。

首先接受第一个输入并将其存储在最小值中。

将计数器设置为9。类似于:

import java.util.Scanner;
public class SmallestNumber {

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);

int counter=9;
int smallest; 
int number;

System.out.println("Enter a number");
smallest=input.nextInt();

while(counter>0)
{
    System.out.println("Enter a number");
    number=input.nextInt();

    if(number<smallest)
    //stores number to largest
    smallest=number;

    //decrement counter
    counter=counter-1;}
}
System.out.println("Smallest number is "+smallest);
}
import java.util.Scanner;
公共类最小数{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
扫描仪输入=新扫描仪(System.in);
int计数器=9;
int最小;
整数;
System.out.println(“输入一个数字”);
最小值=input.nextInt();
而(计数器>0)
{
System.out.println(“输入一个数字”);
number=input.nextInt();
如果(数字这个有效

import java.util.Scanner;
public class SmallestNumber {

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);

int counter=10;
int smallest=0; 
int number;

//System.out.println("Enter a number");


while(counter>0)
{
    System.out.println("Enter a number");
    number=input.nextInt();
    if (counter==10)
        smallest=number;


if(number<smallest)
    //stores number to largest
    smallest=number;
    //decrement counter
    counter=counter-1;}

    System.out.println("Smallest number is "+smallest);




 }}
import java.util.Scanner;
公共类最小数{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
扫描仪输入=新扫描仪(System.in);
int计数器=10;
int=0;
整数;
//System.out.println(“输入一个数字”);
而(计数器>0)
{
System.out.println(“输入一个数字”);
number=input.nextInt();
如果(计数器==10)
最小=数量;
如果(数字尝试此算法

while(counter>0)
    {
        System.out.println("Enter a number");
        number=input.nextInt();

        if(counter==10)
            smallest=number;

        else{

            if(number<smallest){ 
               smallest=number;
               counter=counter-1;
            }
        }
 }

  System.out.println("Smallest number is "+smallest);
while(计数器>0)
{
System.out.println(“输入一个数字”);
number=input.nextInt();
如果(计数器==10)
最小=数量;
否则{

if(numbersmallest从0开始-因此它将始终小于任何正输入数,您将只得到0输出。初始化最小值为整数。MAX_值将起作用。尝试将最小值指定给第一个数字。然后开始比较
while(counter>0)
    {
        System.out.println("Enter a number");
        number=input.nextInt();

        if(counter==10)
            smallest=number;

        else{

            if(number<smallest){ 
               smallest=number;
               counter=counter-1;
            }
        }
 }

  System.out.println("Smallest number is "+smallest);