Advertisement
lamaulfarid

matdis_5.4_nomor 14

Dec 12th, 2020
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. // Nama : Ahmad Lamaul Farid
  2. // NRP : 05111940000134
  3. // Kelas : Matematika Diskrit A
  4.  
  5. #include <iostream>
  6. #include <algorithm>
  7. using namespace std;
  8.  
  9. // fungsi untuk mencari modus pada suatu list bilangan acak
  10. int getmode(int listnum[], int mode[], int currNow, int size, int k, int *n){
  11.     int getA = 0, getB = 0;
  12.     while (currNow == listnum[k])
  13.     {
  14.         getA++;
  15.         k++;
  16.         if (k == size)
  17.         {
  18.             mode[*n] = listnum[k-1];
  19.             return getA;
  20.         }
  21.     }
  22.     getB = getmode(listnum, mode, listnum[k], size, k, n);
  23.     if (getA > getB)
  24.     {
  25.         if(*n!=0 && mode[*n-1]!=listnum[k-1])
  26.             mode[*n-1] = listnum[k-1];
  27.         mode[*n] = listnum[k-1];
  28.     }
  29.     else if (getA < getB)
  30.         return getB;
  31.     else if (getA == getB)
  32.     {
  33.         if(*n==0 && mode[*n]==0)
  34.             mode[*n] = listnum[k-1];
  35.         else
  36.             mode[++*n] = listnum[k-1];
  37.     }
  38.     return getA;
  39. }
  40.  
  41. // fungsi utama untuk menampilkan modus yang dipanggil pada fungsi getmode
  42. int main(){
  43.     int list[] = {2, 2, 2, 2, 3, 5, 3, 3};
  44.     int sizeList = sizeof(list) / sizeof(list[0]);
  45.     sort(list,list+sizeList);
  46.     if (sizeList == 1)
  47.         cout<< list[0];
  48.     else
  49.     {
  50.         int n=0;
  51.         int modus[5] ={0};
  52.         getmode(list, modus,list[0], sizeList, 0, &n);
  53.         n=0;
  54.         while (modus[n] != 0)
  55.         {
  56.             cout << "mode = "<< modus[n]<< "\n";
  57.             n += 1;
  58.         }  
  59.     }
  60.     return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement