首页 > 解决方案 > 如何构建一个允许用户输入正数和整数并在输入 0 或负数时结束的循环

问题描述

你好好人。

所以我在 while/for/do while 循环上有点挣扎,因为我无法理解它们的结构。

这导致我的家庭作业出现一些问题,我需要做的是为以下内容编写代码:

我需要一个允许用户只输入正数和整数的程序,该程序还计算它们的总和并在控制台中显示每个输入的结果(例如,用户输入 1 和 2 和 3 和 4 程序结果将显示为 10)。

如果用户输入 0 或负数,程序将结束。

我只能使用 for / while / do while。

我的经验实际上只涉及基本的东西,如 int 、 double 、 loop 、 string 等

我真的无法理解它,我很想得到一些想法和帮助。

我试过但一开始就卡住了我不知道如何开始

编辑:我真的只是涉足这个想法,因为我不知道如何开始,我做了这个,这不好

        int number, i=1 , min;

        Console.WriteLine("Please enter only positive WHOLE numbers to calculate");
        number = int.Parse(Console.ReadLine());

        while (i <= number)
        {
            Console.WriteLine("This is the smallest number: " + number);
            i++;
        }

编辑:我这样做了,但我想知道是否有更好的方法

        int number, sum = 0;

        Console.WriteLine("Please enter only positive WHOLE numbers to calculate");
    start:
        number = int.Parse(Console.ReadLine());


        while (number > 0)
        {
            Console.WriteLine("This is your number : " + number);
            sum += number;
            Console.WriteLine("The sum is: " + sum);
            goto start;
        }

        while (number <= 0)
        {
            Console.WriteLine("Please enter a number bigger than 0");
            break;
        }

标签: c#

解决方案


1种方法:

  int number, i=0 , min=1; // min is the minimum value, i is the sum, number is the input you give



    while (i <= min)// checks if its lesser than zero
    {
    Console.WriteLine("Please enter only positive WHOLE numbers to calculate");
    number = int.Parse(Console.ReadLine());
        i += number;
        Console.WriteLine("This is the sum: " + i);
    }

其他方法:

    int number, i=0 , min=1; // min is the minimum value, i is the sum, number is the input you give

    while (true)
    {
    Console.WriteLine("Please enter only positive WHOLE numbers to calculate");
    number = int.Parse(Console.ReadLine());
        if(i<=min)
           break;
        i += number;
        Console.WriteLine("This is the sum: " + i);
    }

推荐阅读