-1

私は正しい方向に進んでいますが、私の出力は完全に正しくありません。プログラムはあなたが持っている整数の数を尋ね、それからそれらの数を尋ねます。たとえば、整数の数を入力してください、3を入力できます。次に、3つの数値を入力します。私は初心者で、まだ配列を学んでいないため、配列を使用できません。countを使用することが、整数を入力できる唯一の方法です。プログラムに何を追加する必要がありますか?繰り返しになりますが、私は一般的なコンピュータサイエンスの学生なので、高度なものは使用できません。私が使用したのは、iostream、namespace int main、そしてあなたがそれを見ることができないすべてのものです

int data;
int num;
int count=0;
int max=0;

do
{
cout<<"Enter the number of intergers"<<endl;
cin>>num;


while (count<num) 
{ 
    cout<<"Please enter a number"<<endl;
    cin>>data;
    count++;

    if (data<min)
    { 
        min=data;
    }

    if (data>max)
    {
        max=data;
    }
}


cout<<"Smallest integer:"<<min<<endl;
cout<<"Largest integer:"<<max<<endl;


cout<<"Would you like to continue?"<<endl;
cin>>ans;


} while ((ans=='y')||(ans=='Y'));

0を返します。}

4

4 に答える 4

2

次のようなものを試してください。

int data;
int num;
int max=0, min = 1000000;

cout<<"Enter the number of intergers"<<endl;
cin>>num;

for (int count = 0; count < num; ++count)
{ 
    cout<<"Please enter number #" << count <<endl;
    cin>>data;

    if (data<min)
    { 
        min = data;
    }
    if (data>max)
    {
        max = data;
    }
}

cout<<"The smallest number:"<<min<<endl;
cout<<"The largest number:"<<max<<endl;
于 2012-10-22T20:51:30.200 に答える
0

2つの時間変数を使用して、これまでの最小数とこれまでの最大数を格納できます。ループの反復ごとに、それらを更新する必要があるかどうかを確認します。コードを入れたくない...それはあなたの割り当てです;-)

于 2012-10-22T20:39:53.310 に答える
0

上記の答えはこれを正しく行う方法ですが、より明確にするために、最小または最大の数を更新する必要がある場合があります。例えば; コンピュータに5、次に4を与えます。プログラムは最大数として4を出力します。ただし、他の一時的なintを使用して「max」を更新すると、正しい数値が得られます。

于 2012-10-22T20:52:54.440 に答える
0

まず、条件が間違っています。0while( count < num)からcount始まるので、そうする必要があります。ここで、すばやくn'ダーティな方法が必要な場合は、minとmaxの2つの変数を、int保持できる最小値と最大値に初期化します。各変数の比較を介して入力を確認し、必要に応じて更新します。

于 2012-10-22T20:55:00.540 に答える