SlideShare une entreprise Scribd logo
1  sur  9
Télécharger pour lire hors ligne
Dian Wahyu Aditya

3 RPA



Kasus 1
Menampilkan deret angka dengan urutan genap – genap – ganjil – ganjil.
Jika user menginputkan nilai 10 maka program akan menulis deret bilangan seperti
berikut :


                              0 2 1 3 4 6 5 7 8 10


Pemecahan Masalah
Source :

            #include <iostream>
            using namespace std;

            void jalankan(int input) {
                int index = 0;

                for(int i=0;i<input;i++) {
                    index++;
                    switch (index) {
                        case 1 : printf("%d   ",   i); break;
                        case 2 : printf("%d   ",   i+1); break;
                        case 3 : printf("%d   ",   i-1); break;
                        case 4 : printf("%d   ",   i); index = 0; break;
                    }
                }
            }

            int main() {
                int input = 0;

                do {
                    cout << "Input : ";
                    scanf("%d", &input);
                    jalankan(input);
                    cout << "n";
                } while (input > 0);

                return 0;
            }
Penjelasan program :
        Pertama pada baris function main() terdapat sebuah perulangan yang akan
meminta inputan selama inputan lebih dari (>) 0 (nol). Jika inputan memenuhi syarat,
maka program akan melempar inputan ke procedure jalankan(int input). Maka sekarang
inputan yang dimasukkan oleh user telah disimpan dalam variable input yang ada dalam
procedure jalankan. Selanjutnya skema penulisan deret bilangan adalah sebagai
berikut :
    •   Terdapat variable index bertipe integer yang bernilai 1.
    •   Selanjutnya dilakukan perulangan, yang menampilkan deret bilangan sebanyak
        inputan.
    •   Selama i kurang dari (<) inputan maka nilai i akan terus ditambah 1, begitu pula
        dengan nilai index, akan tetapi yang berbeda adalah nilai maksimum index
        hanya sampai 4, jika nilai index = 4 maka nilai index akan dikembalikan ke nilai
        awal yaitu satu, sehingga skema perulanganya jika i dan index ditulis adalah
        sebagai berikut :



            i      0        1   2    3     4     5     6      7    8    9

        index      1        2   3    4     1     2     3      4    1    2



   •    Untuk menghasilkan deret bilangan genap – genap – ganjil – ganjil maka skema
        yang dijalankan disini adalah ketika i berada pada index tertentu maka yang nilai
        yang dicetak adalah sebagai berikut :
                   o   Jika index = 1 maka cetak nilai i.
                   o   Jika index = 2 maka cetak nilai i+1.
                   o   Jika index = 3 maka cetak nilai i-1.
                   o   Jika index = 4 maka cetak nilai i kemudian kembalikan nilai
                       index menjadi 1.
Dan hasil outputnya adalah sebagai berikut :



          i        0    1       2        3   4      5   6    7      8   9

                       +1       -1                 +1   -1              +1

        Hasil      0    2       1        3   4      6   5    7      8   10

       index       1    2       3        4   1      2   3    4      1   2



Screen Capture :




Kasus 2
Mengkonversi bilangan desimal mulai dari nol hingga inputan menjadi bilangan biner.
Kemudian menghitung total angka “nol” yang ada. Contoh jika user menginputkan nilai
5 maka proses program adalah sebagai berikut :



                       Desimal Biner             Jumlah angka nol
                            0        0                  1
                            1        1                  0
                            2        10                 1
                            3        11                 0
                            4        100                2
                            5        101                1
                                     Total              5
Pemecahan Masalah
Source :

               #include <iostream>
               using namespace std;

               int run(int input){
                   int hasil = 0;

                   while(input > 1) {
                       if((input % 2) == 0) hasil++;
                       input = input / 2;
                   }

                   return hasil;
               }

               int mainx(int input) {
                   int hasil = 0;

                   while(input > 0){
                       hasil += run(input);
                       cout << input << " : " << run(input) << "n";
                       input--;
                   }

                   cout << "0 : 1" << "n";

                   return hasil+1;
               }

               int main() {
                   int input = 0;

                   do {
                       cout << "Input : ";
                       scanf("%d", &input);
                       cout << "Hasil : " << mainx(input) << "n";
                   } while (input > 0);

                   return 0;
               }



Penjelasan program :
       Dalam baris kode di atas terdapat beberapa function antara lain :
   •   Function run(int input), yaitu function yang mengembalikan nilai integer berupa
       jumlah karakter ‘0’ dari inputan yang terlebih dahulu dikonversi menjadi
       bilangan biner.
   •   Function mainx(int input), merupakan procedure yang akan menghitung total
       karakter ‘0’ dari nol (0) sampai inputan yang tentunya dikonversikan oleh
       function run.
•   Function main() merupakan function utama yang akan menjalankan procedure
    mainx selama inputan lebih dari nol (0).


    Berikut cara kerja dari masing-masing function :
•   Function run
       o   Ada variable hasil bertipe integer yang akan menampung jumlah
           karakter ‘0’ sementara sebelum function mengembalikan nilai.
       o Selama inputan > 1 maka program akan terus melakukan perulangan.
       o   Jika sisa hasil bagi dari inputan = 0 maka hasil = hasil+1.
       o   Nilai inputan = inputan / 2. Tipe data integer selalu bernilai bulat,
           contoh: 5/2=2, sehingga semua bilangan jika dibagi 2 secara terus
           menerus akan berhenti pada nilai 1 yang artinya menghentikan
           perulangan.
       o   Setelah perulangan berhenti function akan mengembalikan nilai hasil
           yang berupa jumlah karakter ‘0’.
•   Function mainx
       o   Function ini juga memiliki variable hasil untuk menyimpan sementara
           total dari angka nol dari deret nilai 0 hingga n inputan.
       o   Perulangan akan dilakukan mulai dari i yang bernilai nol hingga n
           inputan.
       o   Selama perulangan, function akan memasukkan nilai i ke dalam function
           run, kemudian menambahkan variable hasil dengan nilai yang
           dikembalikan oleh function run.
       o   Setelah perulangan selesai function akan mengembalikan nilai berupa
           total karakter ‘0’ dari deret bilangan 0 hingga n inputan.
•   Function main
    Function ini bertugas meminta inputan selama user menginputkan nilai > 0.
    Kemudian inputan user tersebut di kirim ke function mainx dan hasil return dari
    mainx akan dicetak sebagai total karakter ’0’ dari deret bilangan desimal 0
    hingga n inputan yang dikonversi menjadi bilangan biner.
Screen Capture :




Kasus 3
Menentukan inputan string kata apakah merupakan Palyndrome atau bukan. Contoh
kata-kata palyndrome : “katak”, “kasur rusak”.


Pemecahan Masalah
Source :

                    #include <iostream>
                    #include <string>

                    using namespace std;

                    string check(string kata) {
                        int len = kata.length();
                        int setengah = len/2;
                        int loop = 0;
                        bool auth = true;

                         while(loop < setengah) {
                             if(kata[loop] != kata[len-1]){
                                 auth = false;
                                 break;
                             }

                             loop++;
                             len--;
                         }

                         if(auth) {
                             return "Palyndrome";
                         } else {
                             return "Bukan Palyndrome";
                         }
}


                     int main() {
                         string a = "";

                          cout << "Input : ";
                          getline(cin, a);
                          cout << check(a) << "n";

                          return 0;
                     }




Penjelasan program :
       Program dimulai dari function main(). Pada function ini program akan meminta
inputan berupa string. Setelah inputan didapatkan inputan akan dikirim ke function
check(string kata) dan kemudian program akan mencetak nilai string yang
dikembalikan yaitu “Palyndrome” atau “Bukan Palyndrome”. Sebenarnya seluruh
proses pemeriksaan kata terdapat pada function check. Berikut cara kerjanya :
   •   Dalam function ini terdapat beberapa variable antara lain :
           o   Integer len, berisi panjang karakter dari string inputan.
           o   Integer setengah, bernilai len/2.
           o   Integer loop, bernilai 0;
           o   Boolean auth, bernilai benar (true).
   •   Proses pengecekan, selama nilai loop < setengah maka lakukan proses berikut :
           o   Jika karakter inputan yang ke loop ≠ karakter yang ke len-1 (karakter
               yang terakhir) maka auth = false, hentikan perulangan secara paksa
               karena sudah dapat dipastikan bahwa kata tersebut bukan merupakan
               palyndrome.
           o   loop = loop + 1.
           o   len = len – 1.
   •   Setelah perulangan selesai sekarang pengecekan dilakukan pada boolean auth.
       Jika perulangan diatas tidak dihentikan secara paksa (menggunakan break) maka
       auth akan tetap bernilai default yaitu true yang artinya function akan
       mengembalikan kata “Palyndrome”. Begitu pula sebaliknya, jika auth bernilai
       false maka function akan mengembalikan kata “Bukan Palyndrome”.
Cara pemeriksaan di atas jika digambarkan secara sederhana adalah sebagai
berikut :




                                    Input         : “kasur rusak”
                                    Len           : 11
                                    Setenga       : 5
                                    h




loop        0       1       2           3   4      5

            k       a       s           u   r            r    u         s       a       k

                                                   5     6    7         8       9       10   len-1




                k       a       s       u     r          r   u      s       a       k
Screen Capture :

Contenu connexe

Tendances

Pengenalan Teknologi Informasi 7 - Input Output
Pengenalan Teknologi Informasi   7 - Input OutputPengenalan Teknologi Informasi   7 - Input Output
Pengenalan Teknologi Informasi 7 - Input OutputKuliahKita
 
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortLapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortAdy Achirul
 
Dasar-dasar c++
Dasar-dasar c++Dasar-dasar c++
Dasar-dasar c++aks247
 
sns_paper complement_r010110
sns_paper complement_r010110sns_paper complement_r010110
sns_paper complement_r010110S N M P Simamora
 
Dts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlinDts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlinAhmad Arif Faizin
 
Dts x dicoding #4 memulai pemrograman kotlin
Dts x dicoding #4 memulai pemrograman kotlinDts x dicoding #4 memulai pemrograman kotlin
Dts x dicoding #4 memulai pemrograman kotlinAhmad Arif Faizin
 
Lapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 SortingLapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 SortingAdy Achirul
 
Lapopran praktikum struktur data pertemuan 1 Tipe Data
Lapopran praktikum struktur data pertemuan 1  Tipe DataLapopran praktikum struktur data pertemuan 1  Tipe Data
Lapopran praktikum struktur data pertemuan 1 Tipe DataAdy Achirul
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahBraga Rezpect
 

Tendances (19)

Function c++
Function c++Function c++
Function c++
 
Pertemuan V
Pertemuan VPertemuan V
Pertemuan V
 
Pengenalan bahasa c++
Pengenalan bahasa c++Pengenalan bahasa c++
Pengenalan bahasa c++
 
Pengenalan Teknologi Informasi 7 - Input Output
Pengenalan Teknologi Informasi   7 - Input OutputPengenalan Teknologi Informasi   7 - Input Output
Pengenalan Teknologi Informasi 7 - Input Output
 
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortLapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
 
Materi operator java
Materi operator javaMateri operator java
Materi operator java
 
Dasar-dasar c++
Dasar-dasar c++Dasar-dasar c++
Dasar-dasar c++
 
sns_paper complement_r010110
sns_paper complement_r010110sns_paper complement_r010110
sns_paper complement_r010110
 
Bab ii
Bab iiBab ii
Bab ii
 
207 p05
207 p05207 p05
207 p05
 
Dts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlinDts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlin
 
Dts x dicoding #4 memulai pemrograman kotlin
Dts x dicoding #4 memulai pemrograman kotlinDts x dicoding #4 memulai pemrograman kotlin
Dts x dicoding #4 memulai pemrograman kotlin
 
Lapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 SortingLapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 Sorting
 
Procedur
ProcedurProcedur
Procedur
 
Lapopran praktikum struktur data pertemuan 1 Tipe Data
Lapopran praktikum struktur data pertemuan 1  Tipe DataLapopran praktikum struktur data pertemuan 1  Tipe Data
Lapopran praktikum struktur data pertemuan 1 Tipe Data
 
Rangkaian Logika
Rangkaian LogikaRangkaian Logika
Rangkaian Logika
 
Topik 10 Fungsi
Topik 10 FungsiTopik 10 Fungsi
Topik 10 Fungsi
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Pratikum operator
Pratikum operatorPratikum operator
Pratikum operator
 

Similaire à DERET BILANGAN (20)

modul algoritma Bab 5
modul algoritma Bab 5modul algoritma Bab 5
modul algoritma Bab 5
 
Cc++
Cc++Cc++
Cc++
 
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
 
modul algoritma Bab 4
modul algoritma Bab 4modul algoritma Bab 4
modul algoritma Bab 4
 
Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++
 
Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++
 
Pengenalan bahasa c++
Pengenalan bahasa c++Pengenalan bahasa c++
Pengenalan bahasa c++
 
Pt6 pt-loop komplek
Pt6 pt-loop komplekPt6 pt-loop komplek
Pt6 pt-loop komplek
 
ALOGARITMA 4
ALOGARITMA 4ALOGARITMA 4
ALOGARITMA 4
 
Penjelasan Program
Penjelasan ProgramPenjelasan Program
Penjelasan Program
 
Penggunaan loop sebagai kerangka dasar algoritma
Penggunaan loop sebagai kerangka dasar algoritma Penggunaan loop sebagai kerangka dasar algoritma
Penggunaan loop sebagai kerangka dasar algoritma
 
Algoritma
AlgoritmaAlgoritma
Algoritma
 
Wirman algoritma
Wirman algoritmaWirman algoritma
Wirman algoritma
 
Kelompok 2.4
Kelompok 2.4Kelompok 2.4
Kelompok 2.4
 
Kelompok 2.4
Kelompok 2.4Kelompok 2.4
Kelompok 2.4
 
Algoritma Perulangan
Algoritma PerulanganAlgoritma Perulangan
Algoritma Perulangan
 
Laporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiLaporan praktikum modul ii & iii
Laporan praktikum modul ii & iii
 
tugas presentasi materi operator pada java
tugas presentasi materi operator pada javatugas presentasi materi operator pada java
tugas presentasi materi operator pada java
 
E1 e117049 nurfadhila fahmi_tugas3
E1 e117049 nurfadhila fahmi_tugas3E1 e117049 nurfadhila fahmi_tugas3
E1 e117049 nurfadhila fahmi_tugas3
 
Sequence
SequenceSequence
Sequence
 

Plus de Dian Aditya

Tugas C++ (Matriks) - Dian Aditya - 2009/2010
Tugas C++ (Matriks) - Dian Aditya - 2009/2010Tugas C++ (Matriks) - Dian Aditya - 2009/2010
Tugas C++ (Matriks) - Dian Aditya - 2009/2010Dian Aditya
 
Laporan Prakerin - Dian Aditya - 2008/2009
Laporan Prakerin - Dian Aditya - 2008/2009Laporan Prakerin - Dian Aditya - 2008/2009
Laporan Prakerin - Dian Aditya - 2008/2009Dian Aditya
 
Implementasi AI - Google Prediction API
Implementasi AI - Google Prediction APIImplementasi AI - Google Prediction API
Implementasi AI - Google Prediction APIDian Aditya
 
Sistem Berbasis Pengetahuan dan Sistem Pakar
Sistem Berbasis Pengetahuan dan Sistem PakarSistem Berbasis Pengetahuan dan Sistem Pakar
Sistem Berbasis Pengetahuan dan Sistem PakarDian Aditya
 
Marvin Image Processing Framework
Marvin Image Processing FrameworkMarvin Image Processing Framework
Marvin Image Processing FrameworkDian Aditya
 
RESTFul WebApp Concept
RESTFul WebApp ConceptRESTFul WebApp Concept
RESTFul WebApp ConceptDian Aditya
 

Plus de Dian Aditya (6)

Tugas C++ (Matriks) - Dian Aditya - 2009/2010
Tugas C++ (Matriks) - Dian Aditya - 2009/2010Tugas C++ (Matriks) - Dian Aditya - 2009/2010
Tugas C++ (Matriks) - Dian Aditya - 2009/2010
 
Laporan Prakerin - Dian Aditya - 2008/2009
Laporan Prakerin - Dian Aditya - 2008/2009Laporan Prakerin - Dian Aditya - 2008/2009
Laporan Prakerin - Dian Aditya - 2008/2009
 
Implementasi AI - Google Prediction API
Implementasi AI - Google Prediction APIImplementasi AI - Google Prediction API
Implementasi AI - Google Prediction API
 
Sistem Berbasis Pengetahuan dan Sistem Pakar
Sistem Berbasis Pengetahuan dan Sistem PakarSistem Berbasis Pengetahuan dan Sistem Pakar
Sistem Berbasis Pengetahuan dan Sistem Pakar
 
Marvin Image Processing Framework
Marvin Image Processing FrameworkMarvin Image Processing Framework
Marvin Image Processing Framework
 
RESTFul WebApp Concept
RESTFul WebApp ConceptRESTFul WebApp Concept
RESTFul WebApp Concept
 

Dernier

Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimNodd Nittong
 
PPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptPPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptBennyKurniawan42
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdfWahyudinST
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlineMMario4
 
Program Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdfProgram Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdfwaktinisayunw93
 
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdfPerbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdfAgungNugroho932694
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfWahyudinST
 
PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024MALISAAININOORBINTIA
 
Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]
Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]
Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]Abdiera
 
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfrpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfGugunGunawan93
 
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuAdab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuKarticha
 
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptxUNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptxFranxisca Kurniawati
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKARenoMardhatillahS
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxFardanassegaf
 
(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaru(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaruSilvanaAyu
 
Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum MerdekaModul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum MerdekaAbdiera
 
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptxProduct Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptxKaista Glow
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfNURAFIFAHBINTIJAMALU
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptTaufikFadhilah
 
Gandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptxGandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptxHansTobing
 

Dernier (20)

Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
 
PPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptPPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.ppt
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
 
Program Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdfProgram Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdf
 
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdfPerbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdf
 
PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024
 
Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]
Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]
Modul Ajar Bahasa Inggris Kelas 2 Fase A [abdiera.com]
 
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfrpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
 
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuAdab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
 
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptxUNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
 
(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaru(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaru
 
Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum MerdekaModul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
 
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptxProduct Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdf
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.ppt
 
Gandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptxGandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptx
 

DERET BILANGAN

  • 1. Dian Wahyu Aditya 3 RPA Kasus 1 Menampilkan deret angka dengan urutan genap – genap – ganjil – ganjil. Jika user menginputkan nilai 10 maka program akan menulis deret bilangan seperti berikut : 0 2 1 3 4 6 5 7 8 10 Pemecahan Masalah Source : #include <iostream> using namespace std; void jalankan(int input) { int index = 0; for(int i=0;i<input;i++) { index++; switch (index) { case 1 : printf("%d ", i); break; case 2 : printf("%d ", i+1); break; case 3 : printf("%d ", i-1); break; case 4 : printf("%d ", i); index = 0; break; } } } int main() { int input = 0; do { cout << "Input : "; scanf("%d", &input); jalankan(input); cout << "n"; } while (input > 0); return 0; }
  • 2. Penjelasan program : Pertama pada baris function main() terdapat sebuah perulangan yang akan meminta inputan selama inputan lebih dari (>) 0 (nol). Jika inputan memenuhi syarat, maka program akan melempar inputan ke procedure jalankan(int input). Maka sekarang inputan yang dimasukkan oleh user telah disimpan dalam variable input yang ada dalam procedure jalankan. Selanjutnya skema penulisan deret bilangan adalah sebagai berikut : • Terdapat variable index bertipe integer yang bernilai 1. • Selanjutnya dilakukan perulangan, yang menampilkan deret bilangan sebanyak inputan. • Selama i kurang dari (<) inputan maka nilai i akan terus ditambah 1, begitu pula dengan nilai index, akan tetapi yang berbeda adalah nilai maksimum index hanya sampai 4, jika nilai index = 4 maka nilai index akan dikembalikan ke nilai awal yaitu satu, sehingga skema perulanganya jika i dan index ditulis adalah sebagai berikut : i 0 1 2 3 4 5 6 7 8 9 index 1 2 3 4 1 2 3 4 1 2 • Untuk menghasilkan deret bilangan genap – genap – ganjil – ganjil maka skema yang dijalankan disini adalah ketika i berada pada index tertentu maka yang nilai yang dicetak adalah sebagai berikut : o Jika index = 1 maka cetak nilai i. o Jika index = 2 maka cetak nilai i+1. o Jika index = 3 maka cetak nilai i-1. o Jika index = 4 maka cetak nilai i kemudian kembalikan nilai index menjadi 1.
  • 3. Dan hasil outputnya adalah sebagai berikut : i 0 1 2 3 4 5 6 7 8 9 +1 -1 +1 -1 +1 Hasil 0 2 1 3 4 6 5 7 8 10 index 1 2 3 4 1 2 3 4 1 2 Screen Capture : Kasus 2 Mengkonversi bilangan desimal mulai dari nol hingga inputan menjadi bilangan biner. Kemudian menghitung total angka “nol” yang ada. Contoh jika user menginputkan nilai 5 maka proses program adalah sebagai berikut : Desimal Biner Jumlah angka nol 0 0 1 1 1 0 2 10 1 3 11 0 4 100 2 5 101 1 Total 5
  • 4. Pemecahan Masalah Source : #include <iostream> using namespace std; int run(int input){ int hasil = 0; while(input > 1) { if((input % 2) == 0) hasil++; input = input / 2; } return hasil; } int mainx(int input) { int hasil = 0; while(input > 0){ hasil += run(input); cout << input << " : " << run(input) << "n"; input--; } cout << "0 : 1" << "n"; return hasil+1; } int main() { int input = 0; do { cout << "Input : "; scanf("%d", &input); cout << "Hasil : " << mainx(input) << "n"; } while (input > 0); return 0; } Penjelasan program : Dalam baris kode di atas terdapat beberapa function antara lain : • Function run(int input), yaitu function yang mengembalikan nilai integer berupa jumlah karakter ‘0’ dari inputan yang terlebih dahulu dikonversi menjadi bilangan biner. • Function mainx(int input), merupakan procedure yang akan menghitung total karakter ‘0’ dari nol (0) sampai inputan yang tentunya dikonversikan oleh function run.
  • 5. Function main() merupakan function utama yang akan menjalankan procedure mainx selama inputan lebih dari nol (0). Berikut cara kerja dari masing-masing function : • Function run o Ada variable hasil bertipe integer yang akan menampung jumlah karakter ‘0’ sementara sebelum function mengembalikan nilai. o Selama inputan > 1 maka program akan terus melakukan perulangan. o Jika sisa hasil bagi dari inputan = 0 maka hasil = hasil+1. o Nilai inputan = inputan / 2. Tipe data integer selalu bernilai bulat, contoh: 5/2=2, sehingga semua bilangan jika dibagi 2 secara terus menerus akan berhenti pada nilai 1 yang artinya menghentikan perulangan. o Setelah perulangan berhenti function akan mengembalikan nilai hasil yang berupa jumlah karakter ‘0’. • Function mainx o Function ini juga memiliki variable hasil untuk menyimpan sementara total dari angka nol dari deret nilai 0 hingga n inputan. o Perulangan akan dilakukan mulai dari i yang bernilai nol hingga n inputan. o Selama perulangan, function akan memasukkan nilai i ke dalam function run, kemudian menambahkan variable hasil dengan nilai yang dikembalikan oleh function run. o Setelah perulangan selesai function akan mengembalikan nilai berupa total karakter ‘0’ dari deret bilangan 0 hingga n inputan. • Function main Function ini bertugas meminta inputan selama user menginputkan nilai > 0. Kemudian inputan user tersebut di kirim ke function mainx dan hasil return dari mainx akan dicetak sebagai total karakter ’0’ dari deret bilangan desimal 0 hingga n inputan yang dikonversi menjadi bilangan biner.
  • 6. Screen Capture : Kasus 3 Menentukan inputan string kata apakah merupakan Palyndrome atau bukan. Contoh kata-kata palyndrome : “katak”, “kasur rusak”. Pemecahan Masalah Source : #include <iostream> #include <string> using namespace std; string check(string kata) { int len = kata.length(); int setengah = len/2; int loop = 0; bool auth = true; while(loop < setengah) { if(kata[loop] != kata[len-1]){ auth = false; break; } loop++; len--; } if(auth) { return "Palyndrome"; } else { return "Bukan Palyndrome"; }
  • 7. } int main() { string a = ""; cout << "Input : "; getline(cin, a); cout << check(a) << "n"; return 0; } Penjelasan program : Program dimulai dari function main(). Pada function ini program akan meminta inputan berupa string. Setelah inputan didapatkan inputan akan dikirim ke function check(string kata) dan kemudian program akan mencetak nilai string yang dikembalikan yaitu “Palyndrome” atau “Bukan Palyndrome”. Sebenarnya seluruh proses pemeriksaan kata terdapat pada function check. Berikut cara kerjanya : • Dalam function ini terdapat beberapa variable antara lain : o Integer len, berisi panjang karakter dari string inputan. o Integer setengah, bernilai len/2. o Integer loop, bernilai 0; o Boolean auth, bernilai benar (true). • Proses pengecekan, selama nilai loop < setengah maka lakukan proses berikut : o Jika karakter inputan yang ke loop ≠ karakter yang ke len-1 (karakter yang terakhir) maka auth = false, hentikan perulangan secara paksa karena sudah dapat dipastikan bahwa kata tersebut bukan merupakan palyndrome. o loop = loop + 1. o len = len – 1. • Setelah perulangan selesai sekarang pengecekan dilakukan pada boolean auth. Jika perulangan diatas tidak dihentikan secara paksa (menggunakan break) maka auth akan tetap bernilai default yaitu true yang artinya function akan mengembalikan kata “Palyndrome”. Begitu pula sebaliknya, jika auth bernilai false maka function akan mengembalikan kata “Bukan Palyndrome”.
  • 8. Cara pemeriksaan di atas jika digambarkan secara sederhana adalah sebagai berikut : Input : “kasur rusak” Len : 11 Setenga : 5 h loop 0 1 2 3 4 5 k a s u r r u s a k 5 6 7 8 9 10 len-1 k a s u r r u s a k