どうすればいいのかわかりません。コードで私を助けてください。または、どの教科書を調べればよいか教えてください。このプログラムを完了するにはコードが必要です。私が見ているものの説明が欲しい..
#include<iostream>
using namespace std;
int main()
{
short num[100], size, //declare an array of type short that has 100 elements
unique[100], number, // declare a second array to help solve the problem; number counts the number of unique values
k; // loop control variable; may need other variables
cout<<"enter the number of values to store in the array\n";
cin>>size;
cout<<”enter the “<<size<<” values to be used as data for this program\n”;
for(k=0; k<size; k++)
cin>>num[k];
// print the contents of the array
cout<<"\nthere are "<<size<<" values in the array\n";
for(k=0; k<size; k++)
cout<<num[k]<<’ ‘; // there is one space between each number in the display
cout<<endl; // cursor moved to next output line
cout<<"the program will count the number of different (distinct) values found in the array\n";
//************************************************************
//Put the code here that counts the number of unique values stored in the
//array num. The variable number will contain the count.
//************************************************************
cout<<endl<<number<<" unique values were found in the "<<size<<" element array\n";
// pause the program to see the results
system("pause");
//return 0;
}
私はこれら2つのことのいずれかをしなければなりませんが、それらが何を意味するのかわかりませんか?
アルゴリズム – 一意の配列を使用して解を見つけやすくし、値を複数回カウントしないようにします
数値を 0 に設定します - これは、データ セット内の個別の値の数を表します。一意の配列の添え字としても使用される
0 から 1 ずつサイズまでループし、データ (num) 配列の連続する要素を処理する
現在の配列要素の値を非配列変数 (SV)
に格納する event_flag を 0 に設定する 0
から次の値までループする一意の配列の連続する要素を 1 つずつ進めます
SV が一意の配列の現在の要素と等しい場合、
event_flag を 1 に設定します 内部ループを
ブレーク (停止) 内部ループ
の終了
event_flag が 0 の場合 (一意の配列に見つからず、以前にカウントされていない値)
一意の配列の要素番号に SV を格納する number
の値をインクリメントする
外側のループの終わり
解決策- 変数 number には、データ配列内の個別の値のカウントが含まれます
代替アルゴリズム
event_flag を使用しないアルゴリズム (イベントが発生したかどうかを判断するためにループ制御変数を使用できます)
アルゴリズム – 一意の配列を使用して解を見つけやすくし、値を複数回カウントしないようにします
数値を 0 に設定します - これは、データ セット内の個別の値の数を表します。一意の配列の添え字としても使用される
0 から 1 ずつサイズまでループし、データ (num) 配列の連続する要素を処理する
現在の配列要素の値を非配列変数 (SV) に格納する
0 から 1 ずつ数値までループし、一意の配列の連続する要素を処理する
SV が一意の配列の現在の要素と等しい場合内部ループを
ブレーク (停止) 内部ループ
の終わり 内部ループの
ループ制御変数が数値の値と等しい場合カウント)
一意の配列の要素番号に SV を格納する number
の値をインクリメントする
外側のループの終わり
解決策- 変数 number には、データ配列内の異なる値のカウントが含まれます
私はこれを私の中に入れました:
//************************************************************
//Put the code here that counts the number of unique values stored in the array num. The variable number will contain the count.
for(k=0; k<size; k++)
num=SV;
event_flag=0;
for(k=1; k<number; k++)
if(SV=unique)
return true;
return false;
//************************************************************
明らかに機能していません。