在过去的5个小时中,我花了很多时间尝试编写此程序,但半途而废,意识到我不能使用数组或函数,字符串等。

问题是我也需要创建一个程序来读取以前哨值结尾的整数值,并显示一位数字(0-9)的条形图。该图显示了序列中每个数字的出现总数。
这是我到目前为止所拥有的

编辑:这是我的修订代码

#include <iostream>
using namespace std;

int main()
{
   //initilise variables
    int num = 0, count0 = 0, count1 = 0,count2 = 0,count3 = 0,count4 = 0,
count5 =0, count6 = 0,count7 = 0,count8 = 0,count9 = 0, value;
int SENTINEL = -1;

//get numbers till a -1 values has been entered
cout << "Please enter a number: ";
while(num != SENTINEL)
{
    cin >> num;

    //adds each occurrence of number entered
    switch(num)
{
    case 0:
        count0+= 1;
        break;
    case 1:
        count1+= 1;
        break;
    case 2:
        count2+=1;
        break;
    case 3:
        count3+= 1;
        break;
    case 4:
        count4+= 1;
        break;
    case 5:
        count5+= 1;
        break;
    case 6:
        count6+= 1;
        break;
    case 7:
        count7+= 1;
        break;
    case 8:
        count8+= 1;
        break;
    case 9:
        count9+= 1;
        break;
    default:;
}
}

for(int rows = 0; rows < 10; rows++)
{
    cout << endl << rows << " | ";
    for(int c = 0; c < count0; c++)
    {
        {
            cout << "*" ;

        }
    }

}


编辑:

我在获取for循环时遇到麻烦,我也只能在单行上输出*。任何想法我应该改变也允许吗?到目前为止,如果我输入3个零(count0 = 3),它将显示3个“ *”,但在所有9行中。

最佳答案

如果您只需要计算一位数字,那么一种方法是使用10个变量=)
int count0,count1 ...等...那么您几乎拥有数组,因此,您可以对输入进行计数,然后输出计数值。

关于c++ - 如何在没有函数或数组的C++中创建条形图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16099407/

10-11 23:03
查看更多