Distinct numbers in an array

Program will enter N numbers and count the number of values in the array that occurred 1 time
Functions are used in this program
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
  
    #include<iostream>
    using namespace std;

    // Prototypes are placed before main
    void input_data(short num[], short size);
    void display_data(short num[], short size);
    short frequencyOf1(short num[], short size);

    int main()
    {    
    short num[100], size, // Declare an array of type short that has 100 elements
          number;         // Number counts the number of values that had a frequency of 1
       
    cout<<"Enter the number of values to store in the array\n";
    cin>>size;
    while (size > 0)// Loop to try different data sets w/o re-executing the program
    {
        input_data(num, size);   // Call statement to function to store data in array 
        display_data(num, size); // Call statement to function to print contents of array        
    
        cout<<"The program will count the number of values in the array that occurred 1 time\n"; 
        number = frequencyOf1(num, size);  // Call statement to function to count the number of value
                                           // That occurred 1 time; this is a value returning function          
        cout<<endl<<number<<" Values were found that occurred 1 time in the "<<size<<" element array\n";  
        
        cout<<"\nEnter the number of values to store in the array or 0 to terminate the program\n";
        cin>>size;
    }    // End of while loop
         // Pause the program to see the results
     system("pause");
     return 0;       
    }
    // Function definitions are placed after main
    void input_data(short num[], short size)
    {
    short i;
    cout<<"Enter the "<<size<<" values to be used as data for this program\n";
    for(i=0; i<size; i++)
       cin>>num[i];
    }   

    void display_data(short num[], short size)
    {
    short i;
    cout<<"\nThere are "<<size<<" values in the array\n";
    for(i=0; i<size; i++)
       cout<<num[i]<<' '; // There is one space between each number in the display
    cout<<endl;           // Cursor moved to next output line 
    }     
    short frequencyOf1(short num[], short size)
    {
    // Enter code to solve the problem
    // Must return a count using a 'return' statement
    //?
      number=0;
      for(i=0; i<size; i++)
           {
                short sv=num[i];
                short event_flag=0;
                      for(int j=0; j<number; j++)
                          {
                            if(sv==frequencyOf1[j])
                             {
                                     event_flag=1;
                                             break;
                             }
                          }

                          if(event_flag==0)
                             {
                               frequencyOf1[number]=sv;
                               number++;
                             } 
           } 
    }

this is another i dont understand it is asking the same thing do i use the for loop like this? or something else It doesnt work
Topic archived. No new replies allowed.