4.4 How To Solving

Menghilangkan Indeks yang sama

Menggunakan 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) {
    int a[20],n;
    cout<<"Batas : ";
    cin>>n;
   
    for (int i=0;i<n;i++){
    cout<<"Data : ";
    cin>>a[i];
}
    for (int i=0;i<n;i++){
    if(a[i]==a[i+1])
    cout<<a[i];
    else if(a[i-1]==a[i])
    cout<<"";
    else if(a[i]==a[i+2])
    cout<<a[i];
    else if(a[i-2]==a[i])
    cout<<"";
    else if(a[i]==a[i+3])
    cout<<a[i];
    else if(a[i-3]==a[i])
    cout<<"";
    else if(a[i]==a[i+4])
    cout<<a[i];
    else if(a[i-4]==a[i])
    cout<<"";
    else if(a[i]==a[i+5])
    cout<<a[i];
    else if(a[i-5]==a[i])
    cout<<"";
   
    else
    cout<<a[i];
}

/*    for (int i=0;i<n;i++){
        cout<<a[i]<<" ";       
   
   
    }*/
   
    return 0;
}

Tampilan


Untuk 4.1 dan 4.2 bisa dipelajari di:
keronskl.blogspot.com
Untuk 4.5 dan 4.6 bisa dipelajari di:
pengantarprogram.blogspot.com

4.3 How To Solves

Mencari Laba Usaha

Menggunakan Program C++

#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;


int main(int argc, char *argv[])
{
    int a,b,c,d,bersih,pokok,pajak;
    int pendapatan,beban;
    int laba_usaha,laba_kotor,laba_sebelum_pajak,laba_bersih;
    cout<<"|====================================================|\n";
    cout<<"|                                                    |\n";
    cout<<"|          Program Untuk Mencari Laba Usaha          |\n";
    cout<<"|                                                    |\n";
    cout<<"|====================================================|\n";
    cout<<"| Mencari Pendapatan                                 |\n";
    cout<<"|----------------------------------------------------|\n";
    cout<<"| Masukkan pendapatan usaha         : ";cin>>a;
    cout<<"| Masukkan pendapatan di luar usaha : ";cin>>b;
    pendapatan=a+b;
    cout<<"| Jumlah pendapatan usaha           : "<<pendapatan<<"\n";
    cout<<"|----------------------------------------------------|\n";
    cout<<"| Mencari Beban                                      |\n";
    cout<<"|----------------------------------------------------|\n";
    cout<<"| Masukkan beban usaha \t\t: ";cin>>c;
    cout<<"| Masukkan beban di luar usaha  : ";cin>>d;
    beban=c+d;
    cout<<"| Jumlah beban \t\t\t: "<<beban<<"\n";
    cout<<"|----------------------------------------------------|\n";
    cout<<"| Mencari Laba                                       |\n";
    cout<<"|----------------------------------------------------|\n";
    cout<<"| Masukkan penjualan bersih     : ";cin>>bersih;
    cout<<"| Masukkan harga pokok    \t: ";cin>>pokok;
    cout<<"| Masukkan pajak     \t\t: ";cin>>pajak;
    cout<<"|----------------------------------------------------|\n";
    cout<<"| Hasil Laba                                         |\n";
    cout<<"|----------------------------------------------------|\n";
    laba_kotor=bersih-pokok;
    cout<<"| Laba Kotor \t\t: "<<laba_kotor<<"\n";
    laba_usaha=laba_kotor-c;
    cout<<"| Laba Usaha \t\t: "<<laba_usaha<<"\n";
    laba_sebelum_pajak=laba_usaha+(b-d);
    cout<<"| Laba Sebelum Usaha    : "<<laba_sebelum_pajak<<"\n";
    laba_bersih=laba_sebelum_pajak-(pajak*15/100);
    cout<<"| Laba Bersih \t\t: "<<laba_bersih<<"\n";
    cout<<"|====================================================|\n";
   
    system("pause");
    return 0;
}

Tampilan




2. Problem

538 Mengkonverensi Angka Menjadi Hari

Menggunakan Program C++

#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
  using namespace std;
 
   class day{
    public:
    void alih();
    private:
    int angka;
    };
      
void day::alih(){
    cout << "Anda akan mengkonversikan dari inputan Angka ke nama-nama Hari!" << endl;
    cout << "\nMasukkan angka antara 1 sampai dengan 7 : ";
    cin>>angka;
     
    if (angka==1)
   {
    cout << "\n\nHari ke "<<angka<<" adalah Hari Senin" << endl;}
   else
   {if (angka==2){
 cout << "\n\nHari ke "<<angka<<" adalah Hari Selasa" << endl;}
    else{
    if (angka==3){
    cout << "\n\nHari ke "<<angka<<" adalah Hari Rabu" << endl;}
    else
    {
    if (angka==4){
    cout << "\n\nHari ke "<<angka<<" adalah Hari Kamis" << endl;}
    else{
    if (angka==5){
    cout << "\n\nHari ke "<<angka<<" adalah Hari Jum'at" << endl;}
    else
    {
    if (angka==6)
    {
    cout << "\n\nHari ke "<<angka<<" adalah Hari Sabtu" << endl;}
    else if (angka==7){
    cout << "\n\nHari ke "<<angka<<" adalah Hari Ahad" << endl;}
    else{
    cout << "\n\nInputan yang anda masukkan salah!!" << endl;}
    }
    }
 }
    }
    }
    }
   
int main()
{ day satu;
  satu.alih();
 return 0;
}

Tampilan


untuk halaman 419 di:
Pengantar Program
untuk halaman 541 di:
keronskl 

3. Menghitung Jumlah Karakter

Ini adalah cara untuk menghitung jumlah karakter dalam kalimat

Menggunakan Program C++
#include <iostream>
#include <string.h>
#include <conio.h>

using namespace std;

class huruf{
friend istream& operator>>(istream&, huruf&);
friend ostream& operator<<(ostream&, huruf&);
public:
void ubah();
private:
char karakter[100000];
};

void huruf::ubah(){
cout<<strlen(karakter);
};

istream& operator>>(istream& in, huruf& input){
cout<<"Masukkan kalimat : ";
in.getline(input.karakter, sizeof(input.karakter));
};

ostream& operator<<(ostream& out, huruf& output){
cout<<"\n\nJumlah karakter = ";
output.ubah();
};
int main()
{
huruf x;
cin>>x;
cout<<x;
getch();
}

Tampilan

untuk latihan 1 dan 2 dipelajari:
http://pengantarprogram.blogspot.co.id/

untuk latihan 4 bisa dipelajari:
http://keronskl.blogspot.co.id/


KASUS 6.4

6.4 Buatlah algoritma untuk menentukan nilai maksimum dan minimum dari n bilangan.

Menggunakan Program C++

#include <iostream>
#include <conio.h>
using namespace std;
main()
{
   //deklarasi
    int nilai[3],n,a,min,maks;

   //input-output array
   cout<<"Masukkan batas";
   cin>>n;
    for(a=1;a<=n;a++){
   cout<<"Masukkan nilai ke-"<<a<<":";
   cin>>nilai[a];
    }

   //proses looping array
   min = nilai[1];
   maks = nilai[1];
   for(a=1;a<=n;a++){
   if(nilai[a] < min){
   min = nilai[a];
   } else if(nilai[a] > maks){
   maks = nilai[a];
   }
   }

   //output minimum dan maksimum
   cout<<"nilai minimum adalah : "<<min<<endl;
   cout<<"nilai maksimum adalah : "<<maks<<endl;

getch();
return 0;
}

Tampilan

untuk kasus 6.1 dan 6.2 bisa dipelajari di:
disini

untuk kasus 6.5 dan 6.6 bisa dipelajari di:
http://pengantarprogram.blogspot.co.id/

KASUS 6.3

6.3 Buatlah algoritma untuk menentukan nilai maksimum dari n bilangan.

Menggunakan program C++

#include <iostream>
#include <conio.h>
using namespace std;
main()
{
   //deklarasi
    int nilai[3],n,a,maks;

   //input-output array
   cout<<"Masukkan batas";
   cin>>n;
    for(a=1;a<=n;a++){
   cout<<"Masukkan nilai ke-"<<a<<":";
   cin>>nilai[a];
    }

   //proses looping array
   maks = nilai[1];
   for(a=1;a<=n;a++){
   if(nilai[a] > maks){
   maks = nilai[a];
   }
   }

   //output minimum dan maksimum
   cout<<"nilai maksimum adalah : "<<maks<<endl;

getch();
return 0;
}

Tampilaln

REFLEKSI MINGGU #7

Pertemuan minggu ke 7 sebelum menjalani Ulangan Tengah Semester
Membahas tentang ARRAY yaitu:
struktur data yang mengandung type data yang mempunyai type sama.
Berupa sekelompok memori yang berhubungan (contiguous).
Array mempunyai nama dan type yang sama.
Untuk merujuk lokasi tertentu atau elemen dalam array ànama array + indeks
ditentukan dengan tipe dari setiap elemen dan banyaknya elemen yang diperlukan oleh setiap array
sehingga komputer mempersiapkan sejumlah memori.
array tipe char dapat digunakan untuk menyimpan string karakter.
untuk lebih memahami tentang array bisa lihat latihan-latihan yang ada di blog ini ^_^


BAB 5

Penyelesaian untuk BAB 5 bisa di buka dan di pelajari di link berikut ini:
https://drive.google.com/file/d/0B0OKvNaOD24tQzF6Z3NlQkY3TDQ/view?usp=sharing

DIKTAT

Untuk materi dan soal-soal diktat bisa cek di link berikut:
https://drive.google.com/file/d/0B0OKvNaOD24tMGlOREduMS16Q00/view?usp=sharing

BAB 6

untuk hasil kerja diktat BAB 6 silakan kunnjungi halaman berikut:
https://drive.google.com/file/d/0B0OKvNaOD24tWDMydFJFQUlEMm8/view?usp=sharing

BAB 4

untuk penyelesaian kasus BAB 4 bisa di lihat di link di bawah ini:
https://drive.google.com/file/d/0B0OKvNaOD24tV3B4Ml9yWmk2OW8/view?usp=sharing


KASUS 5.8

Buatlah algoritma iteratif dan rekursif untuk menghitung gcd dari dua bilangan bulat positif.
Analisis :

Jika n ¹ 0 dan m integer non negatif, kita dapat menulis m = q.n + r untuk suatu integer non negatif q dan r dengan 0 £ r < n.

1. Rekursif
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int gcd(int c, int d){
int r;
while (d>0){
r=c%d;
c=d;
d=r;
}
}

int main(int argc, char** argv) {
int a, b;
cout<<"masukan angka : ";cin>>a;
cout<<"masukan angka lagi : ";cin>>b;
cout<<"hasil gcd = "<<gcd(a,b)<<endl;
return 0;
}



2. iteratif
#include <iostream>

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

int gcd(int c, int d)
{
if (d==0) return (c);
if (c<d) return (gcd(d,c));
return (gcd(c-d,d));
}

int main(int argc, char** argv) {
int a, b;
cout<<"masukan angka : ";cin>>a;
cout<<"masukan angka lagi : ";cin>>b;
cout<<"hasil gcd : "<<gcd(a,b)<<endl;

return 0;

}


Tampilan
keeduanya memiliki tampian output yang sama



KASUS 5.6

Diberikan deret Fibonacci sebagai berikut :
1, 1, 2, 3, 5, 8, …
Buatlah fungsi yang menghitung suku ke-n dari deret Fibonacci dengan menggunakan cara rekursif.
Analisis :
Suku ke-n dari deret Fibonacci diperoleh dengan rumus :
fibonacci(n) = fibonacci(n-1) + fibonacci(n-2)

   dengan nilai awal untuk n=1 dan n=2 berharga 1.

Menggunakan C++

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int fibonacci(int n){
if (n==1 || n==2)return(1);
else return(fibonacci(n-1)+fibonacci(n-2));
}
int main(int argc, char** argv) {
int i,n;
cout<<"Masukan Batas Suku =";cin>>n;
for(i=1;i<=n;i++)
cout<<fibonacci(i)<<",";
return 0;
}
Tampilan
Menggunakan Raptor
nah untuk kasus 5.8 bisa kunjungi blog partner di:
http://keronskl.blogspot.co.id/2016/04/kasus-58.html
juga untuk referensi teman-teman bisa juga kunjungi partner yang satu ini juga:
http://pengantarprogram.blogspot.co.id/search/label/KASUS%205.1-5.8?=6

selamat bekerja dan berkaryaa ^^

KASUS 5.5

Pertanyaan :
Fungsi faktorial rekursif untuk mencari nilai n!
Menggunakan C++#include <iostream>#include <string>
using namespace std;void factorial(int n,int x,int hasil){ if(x>n){ cout<<"Factorial "<<n<<" adalah "<<hasil<<endl; }else{ hasil=hasil*x; x=x+1; factorial(n,x,hasil);}}
int main() { int hasil; int n; int x; cout<<"Masukan nilai factorial : "; cin>>n; x=1; hasil=1; factorial(n,x,hasil); return 0;}

Tampilan
Raptor

KASUS 5.4

Pertanyaan:
Buatlah fungsi perkalian 2 bilangan bulat dengan menggunakan operator penjumlahan.
Analisis :
Misalkan a dikalikan b (input)
Proses :
a x b = a + a + a + … + a (sebanyak b kali)
#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int kali(int m, int n){
int i,hasil=0;
for(i=1;i<=abs(n);i++)
hasil+=m;
if (n<0)return(-hasil); else return (hasil);
}
int main(int argc, char** argv) {
int a,b;
cout<<"Masukan Nilai 1 =";cin>>a;
cout<<"Masukan Nilai 2 =";cin>>b;
cout<<"Hasil Perkalian ="<<kali(a,b);
return 0;
}
 Tampilan
Menggunakan Raptor

REFLEKSI MINGGU #6

pertemuan ke enam di kelas algoritma pemrograman, pada pertemuan kali ini dosen menjelaskan tentang REKURSIF dan ITERATIF,



Fungsi Rekursif:

adalah fungsi yang melakukan proses perulangan dengan cara memanggil dirinya sendiri.
berbeda dengan versi iteratif yang menggunakan perulangan for, while maupun do while. 
Fungsi rekursif dapat dipandang sebagai sebuah “operator”.  
  Ciri Rekursif:
Kasus penyetop. Dalam kasus ini terdapat nilai konstan (return value) 
Kasus pemanggilan rekursif. Dalam kasus ini terdapat pemanggilan fungsi itu sendiri, tetapi harus mengarah kepada kasus
penyetop.   
 
Macam-macam metode rekursif:
Going Down Recursion (rekursi menurun), yaitu parameter menurun nilainya sampai dicapai kasus
berhenti 
Going Up Recursion (rekursi menaik), yaitu parameter menaik nilainya sampai dicapai kasus
berhenti 
Two Half (rekursi separuh-separuh), rekursi dibagi menjadi 2 bagian, di mana setiap bagian juga
merupakan subprogram rekursi.  
 
rekursif sendiri menggunakan fungsi untuk memanggil dirinya sendiri sedangkan
untuk iteratif menggunakan perulangan pada umumnya seperti while, do while dan for.  
untuk contoh iteratif dan rekursif sendiri sudah ada penjelsaanya dalam blog ini, selamat belajar ^_^

BAB 3

PENYELESAIAN BAB 3

1. Menggunakan Program C++
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int A, B, X1, X2,Y1, Y2;
    cout<<"Masukan Nilai X1,X2,Y1,dan Y2 : "<<endl;
    cin>>X1>>X2>>Y1>>Y2;
    A=((X1+Y1)/2);
    B=((X2+Y2)/2);
    cout<<"Titik Tengah Garisnya"<<X1<<"dan"<<Y1<<endl;
    cout<<"Adalah ="<<A<<endl<<endl;
    cout<<"Titik Tengah Garisnya"<<X2<<"dan"<<Y2<<endl;
    cout<<"Adalah ="<<B<<endl;
    system("pause");
    return 0;
}
Tampilan
 Menggunakan Raptop
2. Menggunakan Program C++
#include <iostream>
using namespace std;

int main(int argc, char** argv){
     int jari;
     long int luas,volume;
     double phi=3.14;
     cout<<"Mengitung luas dan volume bola"<<endl;
     cout<<endl;
     cout<<"masukan jari jari:";
     cin>>jari;
     volume=(4*phi*jari*jari*jari)/3;
     luas=4*phi*jari*jari;
     cout<<endl;
     cout<<"Volume bola adalah:"<<volume;
     cout<<endl;
     cout<<"Luas bola adalah:"<<luas;
    
    
    return 0;
   
}
Tampilan
Menggunakan C++
4.Menggunakan Program C++
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    long int s,jam,menit,detik;
    char ulang;
    ulang:
        cout<<"Program menghitung konversi waktu"<<endl<<endl;
       
        cout<<"Inputkan detik=";
        cin>>s;
        jam=s/3600;
        menit=(s-(jam*3600))/60;
        detik=(s-(jam*3600)-(menit*60));
        cout<<s<<"detik = "<<jam<<"jam"<<menit<<"menit"<<detik<<"detik"<<endl;
       
        return 0;
}
Tampilan
Menggunakan Raptor
5. Menggunakan Program C++
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    long int a,s,b,jam,menit,detik,total;
    char ulang;
    ulang:
        cout<<"Program menghitung konversi waktu"<<endl<<endl;
       
        cout<<"Inputkan jam=";
        cin>>s;
        jam=s*3600;
        cout<<"Inputkan Menit=";
        cin>>a;
        menit=a*60;
        cout<<"Inputkan Detik=";
        cin>>b;
        detik=b+detik;
        total=jam+menit+detik;
        cout<<"Total detik:"<<total;
        return 0;
}
Tampilan
Menggunakan Raptor

7.Menggunakan Program C++

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

using namespace std;
int main(int argc, char *argv[])
{
int jumlah,ratusanribu,limapuluhribu,duapuluhribu,sepuluhribu,limaribu,seribu,limaratus,seratus,limapuluh,sisa;
cout<<"jumlah uang dalam rupiah =";
cin>>jumlah;
ratusanribu=jumlah/100000;
sisa=jumlah-(ratusanribu*100000);
limapuluhribu=sisa/50000;
sisa=sisa-(limapuluhribu*50000);
duapuluhribu=sisa/20000;
sisa=sisa-(duapuluhribu*20000);
sepuluhribu=sisa/10000;
sisa=sisa-(sepuluhribu*10000);
limaribu=sisa/5000;
sisa=sisa-(limaribu*5000);
seribu=sisa/1000;
sisa=sisa-(seribu*1000);
limaratus=sisa/500;
sisa=sisa-(limaratus*500);
seratus=sisa/100;
sisa=sisa-(seratus*100);
limapuluh=sisa/50;
sisa=-(limapuluh*50);
if(jumlah>=100000)
cout<<"pecahan 100000 ada="<<ratusanribu<<endl;
if(jumlah>=50000)
cout<<"pecahan 50000 ada="<<limapuluhribu<<endl;
if(jumlah>=20000)
cout<<"pecahan 20000 ada="<<limapuluhribu<<endl;
if(jumlah>=10000)
cout<<"pecahan sepulu ribu ada="<<sepuluhribu<<endl;
if(jumlah>=5000)
cout<<"pecahan lima rabu ada="<<limaribu<<endl;
if(jumlah>=1000)
cout<<"pecahan seribu ada="<<seribu<<endl;
if(jumlah>=500)
cout<<"lima ratus ada="<<limaratus<<endl;
if(jumlah>=100)
cout<<"seratus ada="<<seratus<<endl;
if(jumlah>=50)
cout<<"lima puluh ada="<<limapuluh<<endl;
if(jumlah>=0)
cout<<"sisa ada="<<sisa<<endl;
   

    system("pause");
    return 0;
}

Tampilan
8. Menggunakan Program C++
#include <iostream>
#include <string>

using namespace std;
int main()
{
   float hasil,phi,a,b,l2,l1;

   cout<<"masukan diameter lingkaran LUAR :"<<endl;
   cin >> a;
   cout<<"masukan diameter lingkaran Dalam  :"<<endl;
   cin >> b;
   phi=3,14;
   l1 =(a/2)*(a/2)*phi;
   l2 =(b/2)*(b/a)*phi;
   hasil =l1-l2;
   cout << "luas CD tersebut adalah  "<<hasil << endl;
   return 0;
}
Tampilan
 Mengguunakan Raptor
 10. Menggunakan Program C++
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
   
    int biner,desi=0,dua=1;
    cout<<"Masukan Bilangan BINER : ";cin>>biner;
    do { desi+=(biner%2)*dua;dua*=2;biner/=10;}
    while(biner);
    cout<<"bilangan DESIMAL nya adalah  "<<desi;
   
   
   
    return 0;
}

Just for study

Just for Study

1. Cetaklah bilangan 1 sampai 4 menggunakan downto.
Menggunakan Program C++
#include <iostream>

using namespace std;

int main(){
    cout <<"\n \t\t\tPROGRAM MENCETAK BILANGAN 1-4  \n";//Algoritma menceteak bilanagn 1 sampai 4
    cout <<" \n\t\t\t     DENGAN PERULANGAN \n";        //{langsung mencetak bilanagn 1 sampai 4}

int b; //Deklarasi b=integer
    for (b=1;b<=4;b++){    //read
    cout<<b<<endl;
    }
   
    return 0;
}

Tampilan
Menggunakan program Raptor

2. Buatlah translasi dalam bahasa C untuk algoritma 4.5 Apakah diperlukan modifikasi algoritma?


Menggunakan Program C++
#include <stdio.h>
#include <stdlib.h>
//  Tidak perlu modifikasi algoritma

int main(int argc, char *argv[]) {
printf("\t\t\tPROGRAM MENENTUKKAN HARI.\n\n\n");//Algoritam menentukan hari
                                                 //{masukkan integer 1 sampai 7, akan ditentukan hari apa yang sesuai}
int hari; //Deklarasi hari= integer;
printf("masukan hari ke- "); //Deskripsi
scanf("%d", &hari); //read(hari);

switch (hari) //case(hari) of
{
case 1:puts("hari senin"); break; //1:hari<-'senin';
case 2:puts("hari selasa"); break; //2:hari<-'selasa';
case 3:puts("hari rabu"); break;   //3:hari<-'rabu';
case 4:puts("hari kamis"); break;  //4:hari<-'kamis';
case 5:puts("hari jumat"); break;  //5:hari<-'jumat';
case 6:puts("hari sabtu"); break;  //6:hari<-'sabtu';
case 7:puts("hari minggu"); break; //else hari<-'minggu';

default:puts("kode salah"); //endcase
}                             //write(hari)
return 0;
}
Menggunakan Program Raptor
3. Buatlah algoritma dan program untuk mencetak bilangan yang habis dibagi 3 dan 5 antara 1 sampai dengan 100. 
Menggunakan Program C++
 #include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int a;
   
    for(a=1;a<=100;a++){
    if(a%3==0 && a%5==0){
        cout<<"Bilangan habis dibagi 3 dan 5= "<<a;
        cout<<endl;
    }else{
    }
    }
    return 0;
}
 Tampilan
 Menggunakan Program Raptor
 
4.Hitunglah nilai dari :

                                                                                               1    12   13        14  1n
Menggunakan Program C++
  #include <iostream>
#include<conio.h>
#include<math.h>
using namespace std;

    class hitung
    {
    public:
           void input();
           int proses();
    private:
            int a;
            float bil,hasil,total;
            };
 
    void hitung::input(){
    cin>>a;
    cout<<endl;}
  
    int hitung::proses(){
    hasil=0;
    total=0;
    bil=-1;
    for(int j=1; j<=a; j++){
    bil=(bil*(-1));
    total=bil/j;
    hasil+=total;
    if(j==1)
    cout<<"("<<bil<<"/"<<j<<")";
    if(j>1)
    cout<<" +("<<bil<<"/"<<j<<")";
    }
  
    cout<<endl<<endl<<"hasil penjumlahan deret = "<<hasil;
    return hasil;
    }
  
    int main()
    {
    cout<<"menghitung jumlah Hasil Deret 1-(1/2)+(1/3)-(1/4)+...+(1/n)"<<endl<<endl;
    cout<<"masukan nilai n : ";
    hitung deret;
    deret.input();
    deret.proses();
  
    getch();
    return 0;
    } 
Tampilan

5.     Buatlah algoritma dan program untuk menghitung nilai dari permutasi dan kombinasi n buah bola yang diambil r bola.
Petunjuk :
Rumus permutasi dan kombinasi adalah sebagai berikut :
                                                               P n r( , ) n! dan C n r( , )   n!           
                                                                                                                     r!(n r)!

Menggunakan Program C++
int faktorial(int N);

int main(void)

{
int hasil; 
int n,k, Y=1;
char proses[2];
char yesno[2];

while(Y) {

cout<<"\tMasukkan nilai n : "; 
cin>>n;
cout<<"\tMasukkan nilai k : ";
cin>>k; 

if(n<k){
cout<<"\tNilai n tidak boleh lebih kecil dari k\n";
}
else 
{
cout<<"\tPilih P (permutasi) atau C (kombinasi) : "; 
cin>>proses[0];
if (proses[0]=='p' || proses[0]=='P') 
{
hasil = faktorial(n)/faktorial(n-k);
cout<<"\n \n";
cout<<n<<"P"<<k<<" : "<<hasil;
}
else if (proses[0]=='c' || proses[0]=='C')
{
hasil = faktorial(n)/(faktorial(k) * faktorial(n-k));
cout<<"\n \n";
cout<<n<<"C"<<k<<" : "<<hasil;
}
else
cout<<"\n\tAnda tidak memilih P atau C"; 

cout<<"\n\tIngin mengulang? <y/n> "; 
cin>>yesno[0];
if (yesno[0]=='Y'||yesno[0]=='y')
Y=1;
else if (yesno[0]=='N'||yesno[0]=='n'||yesno[0]!='Y'||yesno[0]!='y')
Y=0;
}
}
}

int faktorial(int N)
{
int F;
if (N<=1)
{
return(1);
}
else
{
F = N * faktorial(N-1);
return(F);
}
}

Tampilan
6.       Buatlah algoritma dan program untuk mengkonversi bilangan desimal menjadi bilangan biner. Petunjuk : Gunakan operator mod dan div !
 Menggunakan Program C++
int main(int argc, char** argv) {
long desimal, pembagi, bit;
pembagi=1073741824;
cout<<"\t\t Program Konversi Bilangan Desimal ke Biner"<<endl<<endl;
cout<<" Masukan bilangan  desimal : ";
cin>>desimal;
while(pembagi>desimal)pembagi/=2;
do{
bit=desimal/pembagi;
cout<<bit;
desimal=desimal%pembagi;
pembagi/=2;
}
while(pembagi>=1);
cout<<"\n";
return 0;
Tampilan
7.  Buatlah algoritma, flowchart dan program untuk menampilkan permutasi dari 3 huruf. Misalnya diberikan : abc output :
abc bca
bac, dan seterusnya
 Menggunakan Program C++
#include <iostream>
#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main(void) {
int n;
int faktorial (int k);
printf("Masukkan sembarang bilangan positif : ");
scanf("%d",&n);
printf("\nMelalui perhitungan rekursif, %d! = %d\n",n,faktorial(n));
system("pause");
return 0;
}
int faktorial (int k){
if (k==0)
return 1;
else
return k*faktorial(k-1);
}
Tampilan
8.