试图通过使用字符串打印出与整数用户输入值相同的次数来创建直方图

本文关键字:输入 直方图 创建 用户 整数 字符串 打印 | 更新日期: 2023-09-27 18:26:03

我对编码完全陌生,我面临着创建直方图的挑战,要求用户逐行输入一定数量的数字。我已经执行了一个for循环来处理它,没有任何问题。我遇到的困难是我试图使用一个字符串,我称之为(x)并包含("")。挑战是使()符号与用户输入的值重复。。。只是想知道我怎么能用这种方式编码它,这样它就可以比较用户输入值的数字,打印出与输入的数字相同的金额(*)!

namespace Exercise_4
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] userVal = new int[8];
            string x = ("*");

        for (int count = 0; count < userVal.Length; count++)
        {
            if (userVal[count] <= 10)
            {
                Console.WriteLine("Please enter Number");
                userVal[count] = int.Parse(Console.ReadLine());
            }
            else 
            {   
                Console.WriteLine("ERROR, Number too BIG!");
            }
        }
        for (int count= 0; count < userVal.Length; count ++)
        {


        }

试图通过使用字符串打印出与整数用户输入值相同的次数来创建直方图

一个简单的方法可能是迭代响应,并使用字符串(char,cnt)构造函数https://msdn.microsoft.com/en-us/library/xsa4321w(v=vs.110).aspx.

它用特定的字符和特定的长度填充字符串。

例如

namespace Exercise_4
{
    class Program
    {
        static void Main(string[] args)
        {    
            int numberToCollect = 10;    
            int[] answers = new int[numberToCollect];
            int numberCollected = 0;
            while(numberCollected<numberToCollect) 
            {
                int parsedInt = 0;
                if (int.TryParse(intConsole.ReadLine(),out parsedInt))
                {
                   answers[numberCollected++] = parsedInt;
                }
                else 
                {
                     Console.WriteLine("Invalid number, try again!");
                }
            }
            for(var cnt in answers) 
            {
                Console.WriteLine(new String('*',cnt));
            }
        }
    }
}
namespace Exercise_4
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] userVal = new int[8];

        for (int count = 0; count < userVal.Length; count++)
        {
            if (userVal[count] <= 10)
            {
                Console.WriteLine("Please enter Number");
                userVal[count] = int.Parse(Console.ReadLine());
            }
            else
            {
                Console.WriteLine("ERROR, Number too BIG!");
            }
        }
        foreach (var cnt in userVal)
        {
            Console.WriteLine(new String('*', cnt));
        }
        Console.ReadKey();
    }
 }
 }