Subscribe:

Ads 468x60px

'
Tampilkan postingan dengan label Array. Tampilkan semua postingan
Tampilkan postingan dengan label Array. Tampilkan semua postingan

Rabu, 08 Februari 2012

Program mencari modus dengan C++

Kemarin ada teman dari facebook yang bertanya tentang cara bagai mana untuk menetukan sebuah modulus dengan Array , dan berikut ini, saya share kembali kepada teman-teman yang sudah mampir ke blog ini untuk meihat progam selengkapnya tentang membuat modulus dengan C++.
Berikut adalah sintax program selengkapnya, yang telah saya jalankan pada Borland C++ 5.02
  1. #include<iostream.h>
  2. #include<conio.h> 
  3. int x;
  4. void findmod(float bil[]int n, float mod[])
  5. {
  6. int total[100];
  7. int k=1;
  8. x=0;
  9. //untuk mengurutkan secara ascending
  10. for(int c=0;c<n;c++)
  11. {
  12. for(int i=(n-1);i>=0;i--)
  13. {
  14. if(bil[i]<bil[i-1])
  15. {
  16. int temp;
  17. temp=bil[i];
  18. bil[i]=bil[i-1];
  19. bil[i-1]=temp;
  20. }
  21. }
  22. }
  23. //menghitung berapa kali muncul tiap angka
  24. for(int c=0;c<n;c++)
  25. {
  26. total[c]=0;
  27. for(int i=0;i<n;i++)
  28. {
  29. if(bil[c]==bil[i])
  30. {
  31. total[c]++;
  32. }
  33. }
  34. }
  35. //menentukan nilai yang paling sering muncul
  36. for(int c=0;c<n;c++)
  37. {
  38. if(total[c]>k)
  39. {
  40. k=total[c];
  41. }
  42. }
  43. //jika modus lebih dari satu
  44. for(int c=0;c<n;c++)
  45. {
  46. if(x==0)
  47. mod[x]=0;
  48. else
  49. mod[x]=mod[x-1];
  50. if(total[c]==k)
  51. {
  52. if(bil[c]!=mod[x])
  53. {
  54. mod[x]=bil[c];
  55. x++;
  56. }
  57. }
  58. }
  59. //Jika Semua angka muncul sama banyak
  60. int z=0;
  61. for(int c=0;c<n;c++)
  62. {
  63. if(total[c]==k)
  64. {
  65. z++;
  66. }
  67. }
  68. if(z==n)
  69. {
  70. x=0;
  71. }
  72. }
  73. void main()
  74. {
  75. int n;
  76. float bil[100];
  77. float mod[100];
  78. cout<<"Banyak N : ";cin>>n;
  79. for(int c=0;c<n;c++)
  80. { 
  81. cout<<"Nilai "<<(c+1)<<" : ";cin>>bil[c];
  82. }
  83. cout<<endl;
  84. findmod(bil,n,mod);
  85. if (x==0)
  86. cout<<"Tidak Ada Modus!"<<endl;
  87. else
  88. {
  89. cout<<"Modus : ";
  90. for(int c=0;c<x;c++)
  91. {
  92. cout<<mod[c]<<" ";
  93. }
  94. }
  95. getch();
  96. }
Dan, hasil Outputnya adalah sbb:




Jumat, 03 Februari 2012

Array Berdimensi Dua

Array atau larik berdimensi dua tersusun dalam bentuk baris dan kolom, dimana indeks pertama menunjukan dan indeks kedua menunjukan kolom. Array berdimensi dua sering digunakan dalam membentuk tabel.
Bentuk umumnya adalah sbb:
Type Nama_Array[indeks1] [indeks2];
Keterangan: 

  • Type : Menyatakan tipe data yang digunakan 
  • Nama_Array : Penamaan untuk nama array
  • Indeks1 : Untuk menyatakan jumlah baris
  • Indeks2 : Untuk menyatakan jumlah kolom 
Sebagai contoh kita memperoleh data sebagai berikut:
  Data Nilai Mahasiswa
No
Nama
MID
Semester
1
Afandi
98
97
2
Ryan
87
89
3
Junaidy
67
70
Dari tabel di samping, tentukan nilai akhir, yang didapat dari nilai MID dikali 40% dan
nilai Semester 60%.




Maka kita dapat membuat program data mahasiswa yang saya coba jalankan dalam Borland C++ 5.02 :

  1. #include<iostream.h>
  2. #include<conio.h>
  3. #include<iomanip.h>
  4. #include<stdio.h>
  5. int main()
  6. {
  7.         int i;
  8.    char nama[4][5];
  9.    float nilai1[5];
  10.    float nilai2[5];
  11.    float hasil[5];
  12.    clrscr();
  13.    for(i=1; i<=3; i++)
  14.    {
  15.         cout<<" DATA ke-:"<<i<<endl;    //mengurutkan nilai data mulai dari 1-2
  16.       cout<<" Nama siswa     : "; gets(nama[i]);  //menginput nama siswa
  17.       cout<<" Nilai MID      : "; cin>>nilai1[i]; //menginput nilai mid
  18.       cout<<" Nilai Semester : "; cin>>nilai2[i]; //menginput nilai final
  19.       hasil[i]=(nilai1[i]*0.40)+(nilai2[i]*0.60); //penjumlahan semua nilai
  20.       cout<<endl;
  21.    }
  22.      cout<<"--------------------------------------------------"<<endl;
  23.      cout<<"No.     Nama           Nilai      Nilai     Hasil"<<endl;
  24.      cout<<"        Siswa          MID        Semester  Akhir"<<endl;
  25.      cout<<"--------------------------------------------------"<<endl;
  26.         for(i=1; i<=3; i++)
  27.       {
  28.         cout<<setiosflags(ios::left)<<setw(8)<<i;
  29.          cout<<setiosflags(ios::left)<<setw(17)<<nama[i];
  30.          cout<<setprecision(2)<<setw(10)<<nilai1[i];
  31.          cout<<setprecision(2)<<setw(12)<<nilai2[i];
  32.          cout<<setprecision(2)<<setw(13)<<hasil[i]<<endl;
  33.       }
  34.         cout<<"--------------------------------------------------"<<endl;
  35.    getch();                            
  36. }

Dan, hasil outputnya adalah sbb:
Contoh program array dimensi dua
Dari contoh program diatas dan memperhatikan hasil ouputnya maka kita dapat melihat bahwa terdapat deklarasi array berdimensi dua yang berfungsi untuk membentuk 4 buah baris dan 5 buah kolom yaitu:
char nama[4][5]; 
dan terdapat pula array berdimensi satu yaitu:
  1.    float nilai1[5];
  2.    float nilai2[5];
  3.    float hasil[5];
Nah, sekian dulu deh, sharing dari saya tentang array berdimensi dua ini. sudah siang nih, sudah waktunya untuk berangkat ke kampus. semangat programming :D