Kamis, 15 September 2016

PUNGSI TEMPLATE

Unknown
 Saya disini akan membuat program PUNGSI TEMPLATE :)-


#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
template <class T>
T Abc(T a,T b,T c){
    return (a+b+b*c+(a+b-c)/(a+b)+4);
}
int main(int argc, char** argv) {
    cout<<Abc(2,3,4)<<endl;
    return 0;
}


HASIL PROGRAM DI ATAS AKAN MENJADI SEPERTI DI BAWAH INI :









NAH DI ATAS INI HASIL PROGRAM DI ATAS :)

SEKIAN PROGRAM DARI SAYA TERIMAKASIH :)

Rabu, 14 September 2016

Fungsi template

Unknown
Program yang saya buat kali ini tentang fungsi template silahkan kalaian lihat program di bawah ini :

#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
float Abc(float a,float b,float c){
    return (a+b+b*c+(a+b-c)/(a+b)+4);
}
int main(int argc, char** argv) {
    cout<<Abc(2,3,4)<<endl;
    return 0;
}

//nah seperti biasa kita langsung menjalankan program dengan mengklik F10.

HASIL PROGRAM DI ATAS:




//YANG DI ATAS ADALAH HASIL ADARI PROGRAM FUNGSI TEMPLATE YANG SAYA BUAT,DAN SILAHKAN ANDA COBA SENDIRI MEMBUAT PROGRAM YANG SEPERTI DI ATAS DI ATAS :) SEKIAN DARI SAYA :)

parameter nilai

Unknown

Contoh Program Parameter Nilai :

As.mualaikum wr.wb 

Saya disini akan membuat program C++ dalam mencari parameter nilai,  semoga kalian bisa memahami program yang saya buat silahkan simak :) ::::

#include <iostream>
using namespace std;
int Abc(int a,int b,int c){
    return (a+b+b*c+(a+b-c)/(a+b)+4);
}
int main() {
    cout<<Abc(2,3,4);
    cout<<endl;
    return 0;
}

//sesudah kita buat program di atas kita langsung jalankan dengan ketik F10 nanti akan muncul gambar yang seperti di bawah ini :

Hasil Program Di Atas :







SILAHKAN KALIAN COBA  DI KOMPUTER ATAU LAPTOP KALIAN PROGRAM DI ATAS INI TERIMAKASIH DAN SEKIAN DARI SAYA :)


Minggu, 15 Mei 2016

mengurutkan deret bilangan dengan selection sort

Unknown
blogs farhan
blogs indra

BUBBLE SORT

(Bubble Sort) diinspirasikan oleh gelembung sabun yang berada dipermukaan air. Karena berat jenis gelembung sabun lebih ringan daripada berat jenis air, maka gelembung sabun selalu terapung ke atas permukaan. Prinsip di atas dipakai pada pengurutan gelembung.
Bubble sort (metode gelembung) adalah metode/algoritma pengurutan dengan dengan cara melakukan penukaran data dengan tepat disebelahnya secara terus menerus sampai bisa dipastikan dalam satu iterasi tertentu tidak ada lagi perubahan. Jika tidak ada perubahan berarti data sudah terurut. Disebut pengurutan gelembung karena masing-masing kunci akan dengan lambat menggelembung ke posisinya yang tepat.
Kelebihan Bubble Sort
Metode Buble Sort merupakan metode yang paling simpelMetode Buble Sort mudah dipahami algoritmanyaKelemahan Bubble Sort
Meskipun simpel metode Bubble sort  merupakan metode pengurutanyang paling tidak efisien.  Kelemahan buble sort adalah pada saat mengurutkan data yang sangat besar akan mengalami kelambatan luar biasa, atau dengan kata lain kinerja memburuk cukup signifikan ketika data yang diolah jika  data cukup banyak. Kelemahan lain adalah jumlah pengulangan akan tetap sama jumlahnya walaupun data sesungguhnya sudah cukup terurut. Hal ini disebabkan setiap data dibandingkan dengan setiap data yang lain untuk menentukan posisinya.
Algoritma Bubble Sort
Membandingkan data ke-i dengan data ke-(i+1) (tepat bersebelahan). Jika tidak sesuai maka tukar (data ke-i = data ke-(i+1) dan data ke-(i+1) = data ke-i). Apa maksudnya tidak sesuai? Jika kita menginginkan algoritme menghasilkan data dengan urutan ascending (A-Z) kondisi tidak sesuai adalah data ke-i > data ke-i+1, dan sebaliknya untuk urutan descending (A-Z).Membandingkan data ke-(i+1) dengan data ke-(i+2). Kita melakukan pembandingan ini sampai data terakhir. Contoh: 1 dgn 2; 2 dgn 3; 3 dgn 4; 4 dgn 5 … ; n-1 dgn n.Selesai satu iterasi, adalah jika kita sudah selesai membandingkan antara (n-1) dgn n. Setelah selesai satu iterasi kita lanjutkan lagi iterasi berikutnya sesuai dengan aturan ke-1. mulai dari data ke-1 dgn data ke-2, dst.Proses akan berhenti jika tidak ada pertukaran dalam satu iterasi.
Contoh Kasus Bubble Sort
Misalkan kita punya data seperti ini: 6, 4, 3, 2 dan kita ingin mengurutkan data ini (ascending) dengan menggunakan bubble sort. Berikut ini adalah proses yang terjadi:
Iterasi ke-1: 4, 6, 3, 2 :: 4, 3, 6, 2 :: 4, 3, 2, 6 (ada 3 pertukaran)
Iterasi ke-2: 3, 4, 2, 6 :: 3, 2, 4, 6 :: 3, 2, 4, 6 (ada 2 pertukaran)
Iterasi ke-3: 2, 3, 4, 6 :: 2, 3, 4, 6 :: 2, 3, 4, 6 (ada 1 pertukaran)
Iterasi ke-4: 2, 3, 4, 6 :: 2, 3, 4, 6 :: 2, 3, 4, 6 (ada 0 pertukaran) -> proses selesai
Analisis Algoritma Bubble Sort
Tujuan dari analisis  algoritma adalah untuk  mengetahui efisiensi dari algoritma. Dalam hal ini dilakukan pembandingan antara dua atau lebih algoritma pengurutan.Tahap analisis adalah melakukan pengecekan program untuk memastikan bahwa program telah benar secara logika maupun sintak (tahap tracing atau debugging). Tahap selanjutnya yaitu menjalankan program untuk mengetahui running time atau waktu komputasi dalam hal ini
termasuk jumlah langkah. Data uji yang digunakan adalah data yang tidak terurut atau data random, terurut membesar/, dan terurut mengecil.
Salah satu cara untuk menganalisa kecepatan algoritma sorting saat running time adalah dengan menggunakan notasi Big O. Algoritma  sorting mempunyai kompleksitas waktu terbaik, terburuk, dan rata-rata.  Dengan notasi Big O, kita dapat mengoptimalkan penggunaan algoritma sorting. Sebagai contoh, untuk kasus  dimana jumlah masukan untuk suatu pengurutan banyak, lebih baik digunakan algoritma sorting seperti quick sort, merge sort, atau heap sortkarena kompleksitas waktu untuk kasuk terburuk  adalah  O(n log n). Hal ini tentu akan sangatberbeda jika kita menggunakan algoritma sorting insertion sort atau bubble sort dimana waktu yang dibutuhkan untuk melakukan pencarian akan sangat lama. Hal ini disebabkan kompleksitas waktu terburuk untuk algoritma sorting tersebut dengan jumlah masukan yang banyak adalah O(n2).
Dari grafik dibawah dapat diketahui buble sort adalah metode yang paling lambat dari yang lambat-lambat..
Berikut ini algoritma Bubble Sort

procedure bubbleSort( A : list of sortable items ) defined as: do swapped := false for each i in 0 to length(A) – 2 inclusive do: if A[i] > A[i+1] then swap( A[i], A[i+1] ) swapped := true end if end for while swappedend procedure
Contoh penerapan Algoritma Bubble Sort dalam Bahasa C++ #include “stdio.h”#include “conio.h”#define n 7void main(){ int A[n] = {15,10,7,22,17,5,12}; int X, I, K; printf(“Sebelum di-sort\n”); for (I=0; I <= n-1; I++) printf("%3i", A[I]); printf("\n");  K=0; while(K<=n-2) { I=0; while(I<=n-2 - K) { if (A[I] > A[I+1]) { X = A[I]; A[I] = A[I+1]; A[I+1] = X; } I++; } K++; } printf(“Sesudah di-sort\n”); for (I=0; I<= n-1; I++) printf("%3d", A[I]);} Algoritma sortir yang efisien yang ditulis oleh C.A.R. Hoare pada 1962. Dasar strateginya adalah “memecah dan menguasai”. Quicksort dimulai dengan menscan daftar yang disortir untuk nilai median. Nilai ini, yang disebut tumpuan (pivot), kemudian dipindahkan ke satu sisi pada daftar dan butir-butir yang nilainya lebih besar dari tumpuan di pindahkan ke sisi lain.

Memilah rangkaian data menjadi dua sub-rangkaian A[p…q-1] dan A[q+1…r]  dimana setiap elemen A[p…q-1] adalah kurang dari atau sama dengan A[q]  dan  setiap   elemen  pada A[q+1…r]   adalah  lebih  besar   atau  sama  dengan elemen  pada  A[q].  A[q]   disebut   sebagai   elemen   pivot.   Perhitungan  pada elemen q merupakan salah satu bagian dari prosedur pemisahan.
Mengurutkan elemen pada sub-rangkaian secara rekursif  Pada algoritma quick sort, langkah ”kombinasi” tidak di lakukan karena telah terjadi  pengurutan elemen – elemen pada sub array.Proses dalam Bubble sort dilakukan sebanyak N-1 langkah (pass) dengan N adalah ukuran array. Pada akhir setiap langkah ke – I , array L[0..N] akan terdiri atas dua bagian, yaitu bagian yang sudah terurut L[0..I] dan bagian yang belum terurut L[I+1..N-1]. Setelah langkah terakhir, diperoleh array L[0..N-1] yang terurut menaik.
















0

terurut
Untuk mendapatkan urutan yang menaik, algoritmanya dapat ditulis secara global sebagai berikut :
Untuk setiap pass ke – I = 0,1,………., N-2 , lakukan :
Mulai dari elemen J = N-1, N-2,….., I + 1, lakukan :
  • Bandingkan L[J-1] dengan L[J]
  • Pertukarkan L[J-1] dengan L[J] jika L[J-1] > L[J]
Rincian setiap pass adalah sebagai berikut :
Pass 1:      I = 0. Mulai dari elemen J = N-1,N–2,…,1, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J]. Pada akhir langkah 1, elemen L[0] berisi harga minimum pertama.
Pass 2:      I = 1. Mulai dari elemen J = N-1,N–2,…,2, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J]. Pada akhir langkah 2, elemen L[1] berisi harga minimum kedua dan array L[0..1] terurut, sedangkan L[2..(N-1)] belum terurut.
Pass 3:      I = 2. Mulai dari elemen J = N-1,N–2,…,3, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J]. Pada akhir langkah 3, elemen L[2] berisi harga minimum ketiga dan array L[0..2] terurut, sedangkan L[3..(N-1)] belum terurut.
………
Pass N-1:  Mulai dari elemen J = N-1, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J].
Pada akhir langkah N-2, elemen L[N-2] berisi nilai minimun ke [N-2] dan array L[0..N-2] terurut menaik (elemen yang tersisa adalah L[N-1], tidak perlu diurut karena hanya satu-satunya).
Misal array L dengan N = 5 buah elemen yang belum terurut. Array akan diurutkan secara ascending(menaik).
8
9
7
6
1
0      1     2     3      4
Pass 1 :
I = 0 ;J= N-1= 4                      8          9          7          1          6
J = 3                            8          9          1          7          6
J = 2                            8          1          9          7          6
J = 1                            1          8          9          7          6
Hasil akhir langkah 1 :
1
8
9
7
6
0      1       2      3      4
Pass 2 :
I = 1 ;J= N-1= 4                      1          8          9          6          7
J = 3                            1          8          6          9          7
J = 2                            1          6          8          9          7
Hasil akhir langkah 2 :
1
6
8
9
7
0       1      2      3      4
Pass 3 :
I = 2 ;J= N-1= 4                      1          6          8          7          9
J = 3                            1          6          7          8          9
Hasil akhir langkah 3 :
1
6
7
8
9
0       1      2      3      4
Pass 4 :
I = 3 ;J= N-1= 4                      1          6          7          8          9
Hasil akhir langkah 4 :
1
6
7
8
9
0       1      2      3      4
Selesai. Array L sudah terurut !!
Pseudocode prosedur algoritma Bubble Sort secara Ascending
1. //prosedur algoritma Bubble Sort secara Ascending2. //I.S:array sudah berisi nilai integer yang belum terurut
3. //F.S:nilai-nilai dalam array terurut secara Ascending
4. procedure v_Bubble(input/output A:array[0..4]of integer,
input N:integer)
5. KAMUS:
6.  i,j,temp:integer
7. ALGORITMA:8. for(i=0;i<=(N-2);i++)
9.   for(j=(N-1);j>=(i+1);j–)
10.     if (A[j-1]>A[j])
11.       tempรŸA[j-1]
12.       A[j-1]รŸA[j]
13.       A[j]รŸtemp
14.     endif
15.  endfor
16. endfor
17.end procedure
Program lengkap penerapan algoritma Bubble Sort dalam bahasa C
1.  #include <stdio.h>2.  #include <conio.h>
3.
4.  void v_Bubble(int A[],int N);
5.  void main()
6.  {  int L[5];
7.     int i,N;
8.    //proses untuk memasukkan data array
9.    printf(“Banyak data : “);scanf(“%i”,&N);
10.   for(i=0;i<N;i++)
11.   { printf(“Data ke-%i: “,i+1);
12.     scanf(“%i”,&L[i]);  } //end loop i
13.   //memanggil procedure bubble sort
14.   v_Bubble(L,N);
15.
16.   //proses menampilkan kembali data array
17.   printf(“\nData Array Terurut\n”);
18.   for(i=0;i<N;i++)
19.   { printf(“%3i”,L[i]); };
20.   getche();
21. } //end main program
22.
23. void v_Bubble(int A[5],int N)
24. { int a,b,temp;
25.   //proses sortir dengan bubble sort
26.   for(a=0;a<=(N-2);a++)
27.   { for(b=(N-1);b>=(a+1);b–)
28.     { if (A[b-1] > A[b])
29.       { temp = A[b-1];
30.         A[b-1]= A[b];
31.         A[b] = temp; }    //endif
32.     } //end loop j
33.   }  //end loop i
34. } //end procedure v_Bubble
Output yang dihasilkan:
untitled

   


https://thenurulazizah.wordpress.com/artikel-2/13-metode-sorting/ http://www.faqih.org/algoritma-bubble-sort-quick-sort/





  • Algoritma Subprogram
  • Flowchart




  • C++ Program
#include
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
void baca_data(int array[],int n){
    int i;
    for(i=0;i        cout<<"Data ke- "<        cin>>array[i];
    }
}

void cetak_data(const int array[], int n){
    int i;
    for(i=0;i        cout<    }
}

void tukar(int *a, int *b){
    int temp;
    temp=*a;
    *a=*b;
    *b=temp;
}

void buble(int x[],int n){
    int i,j;
    for(i=0;i        for(j=i+1;j        if (x[i]>x[j]) tukar(&x[i],&x[j]);

}

int main(){
    int data[100],n;
    cout<<"Banyak data : ";cin>>n;
    baca_data(data,n);
    cetak_data(data,n);
    buble(data,n);
    cout<    cetak_data(data,n);
}







selamat mencoba ๐Ÿ˜Š

Jumat, 06 Mei 2016

mencari nilai deviasi standar dari n buah data

Unknown

MINGGU 07 ARRAY SATU DIMENSI

CONTOH PROGRAM:

#include <iostream>
#include <math.h>
#include <conio.h>

using namespace std;

class HitungStatistik {
friend ostream& operator<<(ostream&, HitungStatistik&);
friend istream& operator>>(istream&, HitungStatistik&);
public:
float rata();
float STD();
private:
long sqrt(int n) { return(n*n); }
int n;
int A[20];
};

istream& operator>>(istream& in, HitungStatistik& a)
{
cout << "Banyaknya data : ";
cin >> a.n;
for (int i = 0; i < a.n; i++)
{
cout << "Masukkan data ke- : " << i+1 << " > ";
cin >> a.A[i];
}
return in;
}

float HitungStatistik::rata()
{
float total=0;
for (int i = 0; i<n; i++) total = total + A[i];
return(total/n);
}

float HitungStatistik::STD ()
{ float rerata = rata();
float jumlah=0.0;
for (int i = 0; i<n; i++)
jumlah = jumlah + sqrt(A[i] - rerata);
return(sqrt (jumlah/(n-1)));
}

ostream& operator<<(ostream& out, HitungStatistik& a) {
cout << "Rata-rata dari " << a.n;
cout<< " bilangan adalah : " << a.rata() << endl;
cout << "Standar deviasi= " << a.STD();
return out;
}

int main() {
HitungStatistik run;
cin >> run;
cout << run;
return 0;
}

 

SELAMAT MENCOBA YA SEMOGA BERMAN PAAT ๐Ÿ˜‰ BY MUHAMAD FIRMANSYAH

rata-rata dari n bilangan bulat dengan menggunakan array

Unknown

PPT MINGGU KE 7 ARAY SATU DIMENSI


CONTOH PROGRAMNYA :


#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;

class HitungRata{
      friend ostream& operator<<(ostream&, HitungRata&);
      friend istream& operator>>(istream&, HitungRata&);
public:
       float rata();
private:
    int n;
    int A[20];
        };
istream& operator>>(istream& in,HitungRata& a){
     cout<<"Banyaknya data : ";
     in>>a.n;
     for(int i=0;i<a.n;i++){
        cout<<"Masukkan data ke-: "<<i+1<<">";
                 in>>a.A[i];
                 }
        return in;
        }
float HitungRata::rata(){
      float total=0;
      for(int i=0;i<n;i++)total=total+A[i];
      return(total/n);
      }
     
      ostream& operator<<(ostream& out,HitungRata& a){
            cout<<out<<"Rata-rata dari "<<a.n<<" bilangan adalah : "<<a.rata()<<endl;
      return out;
      }
     

main()
{
      HitungRata rata;
      cin>>rata;
      cout<<rata;
    return 0;
}


SELAMAT MENCOBA YA SEMOGA BERMAN PAAT ๐Ÿ˜‰ BY MUHAMAD FIRMANSYAH

Sabtu, 16 April 2016

powerpoin 6.2

Unknown
mencari rata-rata yang di gunakan kembali:
programnya:
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main(int argc, char** argv) {
    int tgs1, tgs2, tgs3;
float rata, varian, deviasi;
cout<<"Masukkan nilai Tugas Pertama =";
cin>>tgs1;
cout<<"Masukkan nilai Tugas Kedua= ";
cin>>tgs2;
cout<<"Masukkan nilai Tugas Ketiga= ";
cin>>tgs3;
rata=(tgs1+tgs2+tgs3)/3;
cout<<"Nilai Varian ="<<varian+tgs2<<endl;
cout<<"Nilai Standar Deviasi = "<<deviasi+tgs3<<endl;
cout<<"Nilai Rata - Rata = "<<rata<<endl;

    return 0;
}

hasil programnya:



DIKTAT BAB 7 KASUS 6.2

Unknown

Mencari nilai rata-rata:

programnya:
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main(int argc, char** argv) {
    int tgs1, tgs2, tgs3;
float rata, varian, deviasi;
cout<<"Masukkan nilai Tugas Pertama =";
cin>>tgs1;
cout<<"Masukkan nilai Tugas Kedua= ";
cin>>tgs2;
cout<<"Masukkan nilai Tugas Ketiga= ";
cin>>tgs3;
rata=(tgs1+tgs2+tgs3)/3;
cout<<"Nilai Rata - Rata = "<<rata<<endl;

    return 0;
}

Hasil programnya:

SELAMAT MENCOBA :)

diktat bab 7 #kasus 6.1

Unknown

MENCARI NILAI RATA-RATA


Programnya:
#include<iostream>
#include<conio.h>
#define max 7
using namespace std;
main()
{
float a[max],jumlah=0,rata_rata;
int j;
//Memasukkan nilai ke dalam elemen array
// \n\n" berfungsi sama seperti endl
cout<<"masukan nilai /n/n :";
for(j=0;j<max;j++)
{
cout<<"A["<<j<<"]= ";
cin>>a[j];
jumlah=jumlah + a[j];
}
//Melakukan Proses perhitungan
rata_rata=jumlah/max;
cout<<endl;

//Menampilkan Hasil Perhitungan
cout<<"Nilai Rata-Rata= "<<rata_rata;
getch();
}

HASIL PROGRAM DI ATAS:

Powerpoin 6.1

Unknown

MENCARI NILAI RATA-RATA

 contoh programnya:
 #include<iostream>
#include<conio.h>
#define max 7
using namespace std;
main()
{
float a[max],jumlah=0,rata_rata;
int j;
//Memasukkan nilai ke dalam elemen array
// \n\n" berfungsi sama seperti endl
cout<<"masukan nilai /n/n :";
for(j=0;j<max;j++)
{
cout<<"A["<<j<<"]= ";
cin>>a[j];
jumlah=jumlah + a[j];
}
//Melakukan Proses perhitungan
rata_rata=jumlah/max;
cout<<endl;

//Menampilkan Hasil Perhitungan
cout<<"Nilai Rata-Rata= "<<rata_rata;
getch();




HASIL DARI PROGRAM DI ATAS:





SELAMAT MENCOBA YA :) 

Minggu, 10 April 2016

Function Faktorial

Unknown

 PRAKTIKUM KE 5 NO 1

#include <iostream> 
#include <conio.h> 
  using namespace std;
long int faktorial( long int a); 
main(){ 
 long int faktor; 
 long int n; 
   cout<<"Masukan Nilai Faktorial "; 
   cin>>n; 
   faktor = faktorial(n); 
   cout<<n<<"! = "<<faktor<<endl; 
   getch(); 

 
long int faktorial( long int a){ 
   if(a==1 || a==0){ 
    return(1); 
   }else if (a>1){ 
    return(a*faktorial(a-1)); 
   }else{ 
    return(0); 
   } 
}

//HASILNYA:










//SEMOGA BERMANFAAT YA KAWAN ๐Ÿ˜Š

Sabtu, 09 April 2016

Bab 5 #kasus 5.2

Unknown
kasus 5.2

PROGRAM C++:
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main(int argc, char** argv) {
    for(int i=1;i<=10;i++){
        if(i%2==0){
            cout<<i<<"  genap"<<endl;
        }
        else
        cout<<i<<"  ganjil"<<endl;
    }
    return 0;
}

//HASIL PROGRAM DI ATAS: