Dengan mengucap puji syukur kepada Tuhan Yang Maha Esa atas petunjuk
dan bimbingan, serta hidayahnya sehingga penulis dapat menyelesai kan buku
Pemrograman Dasar Kelas X SMK.
Buku ini sebagai salah satu upaya yang dilakukan penulis untuk
memberikan pengalaman praktek pemrograman dasar kepada para siswanya
terutama jurusan Teknik Komputer dan Informatika.
Akhirnya, buku ini masihlah jauh dari kesempurnaan, untuk itu saran dan
kritik dari pengguna amatlah dinantikan. Semoga buku ini bermanfaat untuk
menambah keilmuan kita.
Pacitan,
Penulis
BAB VI PERCABANGAN
A. Tujuan .................................................. 45
B. Materi .................................................. 46
C. Rangkuman ......................................... 46
D. Latihan Praktikum 3 ............................ 47
E. Tugas Praktikum ................................. 49
F. Tes Formatif ........................................ 51
ALGORITMA PEMROGRAMAN
1. Tujuan
Setelah mempelajari modul ini, peserta didik dapat memahami algoritma
pemrograman dan mampu Menerapkan algoritma pemrograman dalam
menyelesaikan masalah dengan tepat
2. Materi
Algoritma
Pengertian :
Algoritma adalah urut-urutan langkah logis penyelesaian masalah yang
disusun secara logis dan sistematis.
A B
2. Dengan Pseudocode
Deskripsi dari algoritma pemrograman yang menggunakan konvensi
struktural dari suatu bahasa pemrograman, dan ditunjukkan agar
dapat dibaca oleh manusia dan bukan mesin
Struktur pseudocode
Judul { Berisi judul algoritma }
Deskripsi { Berisi Deklarasi variabel atau konstanta }
Implementasi { Berisi inti algoritma }
Contoh penulisan :
Program Menghitung_penjumlahan
{Menjumlahkan dua bilangan bulat}
Deklarasi :
a,b,c : integer
Algoritma :
input a,b
c=a+b
output “c”
3. Dengan Flowchart
Suatu standart untuk menggambarkan urutan langkah dalam suatu
proses. Setiap langkah dalam algoritma dinyatakan dalam sebuah
simbol dan aliran setiap langkah dinyatakan dalam sebuah garis yang
bertanda panah. (untuk lebih lengkapnya akan dibahas pada bab
selanjutnya )
3. Rangkuman
a. Algoritma adalah urut-urutan langkah logis penyelesaian masalah
yang disusun secara logis dan sistematis.
b. Cara penulisan algoritma : kalimat, pseudocode dan flowchart
1. Tujuan
Peserta didik dapat memahami algoritma pemrograman dan mampu
Menerapkan algoritma pemrograman dalam menyelesaikan masalah
dengan tepat
2. Materi
Algoritma
3. Soal Praktikum
10 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
4. Soal Formatif 1
1. Dalam menyusun suatu program,langkah pertama yang harus di lakkukan
adalah :
a. Membuat program
b. Membuat Algoritma
c. Membeli komputer
d. Proses
e. Mempelajari program
a. Proses
b. Program
c. Algoritma
d. Step
e. Diagram
a. Bahassa Inggris
b. Bahasa Puitis
c. Bahasa pemograman
d. Sembarang bahasa asal terstruktur
e. Bahasa Mesin
a. Masalah-Pseudocode-Flowchart-Program-Eksekusi-Hasil
b. Masalah-Algoritma-Flowchart-Program-Eksekusi-Hasil
c. Masalah-Model-Algoritma-Eksekusi-Hasil
d. Masalah-Model-Algoritma-Program-Eksekusi-hasil
e. Algoritma-Program-Model-Eksekusi-Hasil
11 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
a. 10
b. 15
c. 10 atau 15
d. 10 dan 15
e. Kosong
7. Diberikan algoritma : Apabila warna merah maka jadi hijau. Apabila warna
hijau maka jadi putih, selain warna merah dan hijau maka jadi ungu. Jika
kondisi input warna adalah hitam, maka warna jadi :
a. Merah
b. Ungu
c. Hijau
d. Putih
e. Abu-abu
9. Apabila a=5, b=10, maka jika di berikan instruksi a=b; b=a akan
mengakibatkan :
a. a=0 , b=5
b. a=10 , b=5
c. a=10 , b=0
d. a=b
e. a=10 , b=10
10. Di berikan algoritma P=10; P=P+5; Q=P. Nilai P dan Q masing-masing adalah
a. 15 dan 0
b. 0 dan 15
c. 15 dan 15
d. 0 dan 10
e. 10 dan 15
12 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB II
FLOWCHART
1. Tujuan
Setelah mempelajari modul ini, peserta didik dapat memahami algoritma
pemrograman menggunakan flowchart dan mampu Menerapkan flowchart
dalam menyelesaikan masalah dengan tepat
2. Materi
1. Pengertian Flowchart/Diagram alir :
Suatu standart untuk menggambarkan urutan langkah dalam suatu
proses. Setiap langkah dalam algoritma dinyatakan dalam sebuah
simbol dan aliran setiap langkah dinyatakan dalam sebuah garis yang
bertanda panah.
Untuk menggambarkan flowchart bisa menggunakan software VISIO
2. Simbol Flowchart/Diagram alir :
2 Digunakan untuk
Proses mewakili suatu proses
Digunakan untuk
4 seleksi suatu kondisi di
Keputusan dalam program
13 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
8 Simbol kartu Menunjukkan i/o yang
punch menggunkan katu
punch
Start
Input panjang
Input lebar
Hasil
end
14 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
3 A. MACAM –MACAM DIAGRAM ALIR
Start
Input panjang
Input lebar
Keliling
end
15 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Start
Input nilai
LULUS
end
Contoh :
Flowchart untuk mencetak perulangan sebanyak 100 kali
16 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
3. Rangkuman
1. Flowchart merupakan Suatu standart untuk menggambarkan
urutan langkah dalam suatu proses. Setiap langkah dalam
algoritma dinyatakan dalam sebuah simbol dan aliran setiap
langkah dinyatakan dalam sebuah garis yang bertanda panah.
2. Flowchart terdiri dari flowchart sikuen, kondisional dan iterasi.
17 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LEMBAR KERJA 2
1. Tujuan
Peserta didik dapat memahami algoritma pemrograman menggunakan
flowchart dan mampu Menerapkan flowchart dalam menyelesaikan
masalah dengan tepat
2. Materi
Flowchart
3. Soal Praktikum
4. Soal Formatif 2
18 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
b. Input/output
c. Proses
d. Pemilihan
e. Preparasi
20 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB III
1. Tujuan
Setelah mempelajari modul ini, peserta didik dapat memahami,
menginstalasi, dan menggunakan perangkat lunak bahasa pemrograman
komputer
2. Materi
21 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Gambar 3.1 Halaman New From Template
7. Masukkan nama program dan pilih folder untuk menyimpan file – file
project kita
22 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Gambar 3.2 Halaman Console Aplication
23 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
8. Lalu pilih menu Build -> Build & Run (F9), akan tampil sbb:
3. Rangkuman
Pemrograman
Kumpulan intruksi yang digunakan untuk mengatur komputer agar
melakukan tindakan tertentu.
Bahasa Pemrograman
Bahasa yang digunakan untuk menulis suatu program
Jenis Bahasa Pemrograman
24 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LEMBAR KERJA 3
1. Tujuan
Peserta didik dapat memahami, menginstalasi, dan menggunakan
perangkat lunak bahasa pemrograman komputer dengan tepat
2. Materi
Perangkat Lunak Bahasa Pemrograman
3. Soal Praktikum
25 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
4. Proses menerjemahkan sebuah bahasa tingkat tinggi kedalam bahasa
mesin agar dapat dipahami oleh komputer dan menghasilkan file
exeutable disebut dengan...
a. Pemrograman d. Kompilasi
b. Interpreter e. Interpretasi
c. Kompiler
5. Proses menerjemahkan sebuah bahasa tingkat tinggi ke dalam bahasa
mesin agar dapat dipahami oleh komputer tanpa menghasilkan sebuah
file executable disebut dengan ...
a. Pemrograman d. Kompilasi
b. Interpreter e. Interpretasi
c. Kompiler
26 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB IV
1. Tujuan
Setelah mempelajari modul ini, peserta didik dapat Mengenal struktur
program c++
2. Materi
Struktur program c++
#include <iostream>
using namespace std;
int main()
{
cout << "Welcome to C++"<<endl;
cout << "Welcome to C++"<<endl;
return 0;
}
Penjelasan :
Jika kita lihat program diatas kita akan memasukkan (include) library
iostream ke dalam program.
27 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Selanjuntya kode main() adalah blok program yang berfungsi sebagai badan
sebuah alur kondingan atau disebut sebagai program utama yang ditulis
antara kode { hingga }.
cout <<
cin>>
; (semicolon)
endl
pindah baris
return 0
Catatan
28 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LEMBAR KERJA 4
1. Tujuan
Peserta didik dapat Mengenal struktur program c++
2. Materi
Struktur program c++
3. Tes Praktikum
1. Buatlah Program biodata dengan c++ yang menampilan tampilan :
======================================
PROGRAM BIODATA
======================================
KELAS : X MM 1
HOBI : MEMASAK
HP : 08766565789
======================================
======================================
PROGRAM BIODATA
======================================
======================================
Nama : Indah Uly Wardati (Tampil otomatis sesuai dengan yang diinputkan)
=======================================
29 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
4. Tes Formatif
1. Bahasa C++ adalah....
a. Bahasa pemrograman tingkat tinggi
b. Bahasa pemrograman tingkat rendah
c. Bahasa pemrograman tingkat atas
d. Bahasa pemrograman tingkat bawah
e. Bahasa pemrograman tingkat menengah
2. Siapakah yang pertama kali menemukan C++ ....
a. Denis ritchie
b. Nikleus Wirt
c. Bjane stroustrup
d. Bill Gate
e. Linus
3. Pada tahun berapakah C++ diperkenalkan ...
a. 1983 d. 1984
b. 1982 e. 1986
c. 1985
4. Apakah fungsi tanda // pada c++ ....
a. Memberikan syarat pada program
b. Memberikan kritik pada program
c. Memberikan komentar pada program
d. Memberikan nilai pada program
e. Menampilkan tulisan di layar
5. Apakah fungsi tanda { } pada c++....
a. Menkompile d. Memblok program
b. Mengeksekusi e. Menampilkan tulisan dilayar
c. Memberikan komentar
6. Apakah fungsi retun 0 pada c++ ....
a. Menkompile
b. Mengeksekusi
c. Menyatakan bahwa program berakhir dengan normal
d. Memblok program
e. Menampilkan tulisan di layar
7. Untuk menampilkan tulisan dilayar pada c++ menggunakan perintah ...
a. cout d. Return
b. cin e. read
c. include
8. Tanda # pada c++ disebut....
a. preprocessor directive. d. processor
b. Pagar e. semicolon
c. directive
9. Untuk memperoleh input dari keybord menggunakan perintah ...
a. cout d. Return
b. cin e. read
c. include
10. Struktur penulisan c++ di bawah ini yang benar adalah ...
30 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
a. #include <iostream>
using namespace std;
int main()
{
cout << "Halo Selamat Datang
return 0;
}
b. #include <iostream>
using namespace std;
int main()
{
cout >> "Halo Selamat Datang
return 0;
}
c.
#include <iostream>;
using namespace std;
int main()
{
cout >> "Halo Selamat Datang
return 0;
}
31 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
#include <iostream>
d. using namespace std
int main()
{
cout >> "Halo Selamat Datang
return 0;
e.
#include <iostream>
using namespace std;
int main ;
{
cout >> "Halo Selamat Datang
return 0;
32 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB V
2. Materi
1. Tipe Data
Tipe data adalah himpunan nilai yang dapat dimiliki oleh sebuah
data.Tipe data dasar adalah tipe data yang dapat langsung digunakan.
Secara umum terdapat 2 tipe data dasar, yaitu numerik dan kategorik.
Tipe data numerik terdiri atas angka/ kumpulan angka serta dapat
mengalami operasi perhitungan, sedangkan tipe data
Contoh integer:
2
5
-10
135
2008
Secara teoritis, tipe data integer tidak memiliki batasan, yaitu dari
minus tak hingga hingga plus tak hingga. Namun dalam
pemrograman yang menggunakan bahasa pemprograman C++,
secara umum dikenal beberap macam tipe data integer, yaitu:
33 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Real (bilangan riil)
Real adalah tipe data dasar berupa bilangan yang memiliki pecahan
desimal. Dalam pemrograman, nilai dengan tipe data ini harus ditulis
dengan sebuah titik sebagai pemisah bilangan utuh dan bilangan
pecahannya.
Contoh real:
0.5
0.17
-3.465
92.0
4.3000+E9
Secara teoritis, tipe data real juga tidak memiliki batasan, yaitu dari minus
tak hingga hingga plus tak hingga. Namun dalam pemrograman, secara
umum dikenal beberapa macam tipe data real, yaitu:
Nilai pada tabel diatas berbeda dengan nilai yang ada pada tabel tipe data
integer, pada tabel diatas nilai untuk tipe data merupakan tingkat
ketelitian untuk masing-masing tipe data, bukan berdasarkan rentang
nilai.
Char (karakter)
Char adalah tipe data dasar yang terdiri atas satu buah angka, huruf,
tanda baca atau karakter khusus. Untuk menyimpan sebuah karakter,
diperlukan 1 byte atau 8 bit tempat didalam memori.
Dalam sebuah program, penulisan tipe data char diawali dan diakhiri
dengan tanda kutip ganda. Selain itu, terdapat sebuah karakter kosong
yang disebut dengan null atau nil dan dituliskan sebagai "".
34 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Contoh char:
"5"
"A"
"?"
"+"
"$"
String
String adalah tipe data dasar yang berupa kumpulan karakter dengan
panjang tertentu. Meskipun berupa kumpulan karakter, karena tipe data
string sering digunakan dalam pemrograman, string dianggap sebagai tipe
data dasar.
Contoh string:
"BANDUNG"
"Politeknik Telkom Bandung"
"ABC3456"
"Lucu"
"30202001"
"z"
Tipe data ini paling sering digunakan untuk range yang memili dua
buah nilai: lulus - tidak lulus, member - bukan member.
35 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
2. Variabel
Variabel atau peubah adalah obyek yang nilainya dapat berubah-ubah
dalam sebuah program.
int a;
int a,b;
int a=4;
int sapu_tangan;
int saputangan;
3. Operator
Simbol yang digunakan untuk melakukan suatu operasi.
1. Operator Aritmatika
Operator Nama Contoh Keterangan
* perkalian a*b Mengalikan a dengan b
/ pembagian a/b Membagikan a dengan b
+ penjumlahan a+b Menjumlahkankan a
dengan b
- pengurangan a-b Mengurangkan a
dengan b
% modulus a%b Menghitung sisa bagi
pembagian a dengan b
Tabel 5.3 Operator Aritmatika
36 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
2. Operator Unary
Operator Nama Keterangan
- minus Unary minus
++ decrement Peningkatan dengan nilai penmbahan 1
-- increment Peningkatan dengan nilai pengurangan 1
! not Unary not
~ Bitwise not Unary komplemen 1
Tabel 5.4 Operator unary
3. Operator Logika
4. Operator relasi
Operator Contoh Keterangan
> a>b a lebih besar dari b
< a<b a lebih kecil dari b
>= a>=b a lebih besar dari atau sama dengan b
<= a<=b a lebih kecil dari atau sama dengan b
== a==b a sama dengan b
!= a!=b a tidak sama dengan b
Tabel 5.6 Operator relasi
5. Operator pengerjaan
Operator Contoh Keterangan
= a= b+c Mengerjakan b+c disimpan di a
+= a+=b a=a+b
-= a-=b a=a-b
*= a*=b a=a*b
/= a/=b a=a/b
%= a%=b a=a%b
Tabel 5.7 Operator pengerjaan
3. Rangkuman
a. Tipe data adalah himpunan nilai yang dapat dimiliki oleh sebuah
data
37 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Tipe Data Ukuran
Bilangan Bulat
char 1 byte
short 2 byte1 byte
int 4 byte
long 4 byte
Bilangan Real
float 4 byte
double 8 byte
Tabel 5.8 Tipe data
38 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LATIHAN PRAKTIKUM 1
#include <iostream>
int main()
{
int a= 4;
int b= 5;
39 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LATIHAN PRAKTIKUM 2
#include <iostream>
int main()
{
int a;
int b;
40 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TUGAS PRAKTIKUM
BAB V
======================================
PROGRAM LUAS LINGKARAN
======================================
r = 10
luas lngkaran = 314
2. Kalkulator Sederhana
======================================
KALKULATOR SEDERHANA
======================================
BILANGAN 1 : (Data diinput dari keybord)
======================================
BILANGAN 1 : (Tampil otomatis sesuai dengan yang diinputkan)
=======================================
BILANGAN 1+BILANGAN 2 = (Tampil otomatis)
41 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
3. Program Kasir 1
======================================
TOKO BERSAUDARA
======================================
NAMA BARANG : (Data diinput dari keybord)
42 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
4. Program kasir 2
------------------
RESTO INDAH
------------------
Bakso = 10000
mie = 10000
teh = 2000
jeruk =3000
--------------------
Daftar pembelian
--------------------
1.Bakso :3 (inputan dari keybord)
2.Mie Ayam :2 (inputan dari keybord)
3.Es Teh :2 (inputan dari keybord)
4.Es Jeruk :2 (inputan dari keybord)
-------------------------------
Total Pembayaran :60000 (otomatis)
-------------------------------
43 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TES FORMATIF
BAB V
44 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB VI
PERCABANGAN
1. Tujuan
Setelah mempelajari modul ini, peserta didik dapat :
1. Memahami struktur percabangan sederhana, bertingkat dan
bersarang
2. Membuat kode program dengan struktur percabangan
2. Materi
1. Struktur percabangan
Intruksi yang dipakai untuk memilih satu aksi dari beberapa
kemungkinan aksi berdasarkan suatu syarat, dengan mengijinkan user
untuk memilih dan mengeksekusi blok kode spesifik dan mengabaikan
blok kode yang lain
2. Percabangan menggunakan if
Pernyataan if akan menentukan sebuah pernyataan yang akan
dieksekusi jika dan hanya jika persyaratan bernilai benar
Penulisan :
if (syarat){ if (nilai>60){
pernnyataan; cout<<”LULUS”;
} }
if (syarat){
pernnyataan 1;
}
else {
pernnyataan 1;
}
}
4. Percabangan bersarang
Jika pernyataan 1 benar, maka program akan mengeksekusi pernyataan 1
dan melewati pernyataan yang lain, Jika pernyataan 2 benar, maka program
akan mengeksekusi pernyataan 2 dan melewati pernyataan 3
45 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Penulisan :
if (syarat 1){
pernnyataan 1;
}
else
pernnyataan 2;
3. Rangkuman
1. Percabangan :Intruksi yang dipakai untuk memilih satu aksi dari
beberapa kemungkinan aksi berdasarkan suatu syarat, dengan
mengijinkan user untuk memilih dan mengeksekusi blok kode
spesifik dan mengabaikan blok kode yang lain
2. Struktur kontrol percabangan meliputi : if, if else, switch case
46 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LATIHAN PRAKTIKUM 3
1. Percabangan menggunakan if
#include <iostream>
int main()
{
int nilai;
cout << "masukkan nilai ";cin>>nilai;
if (nilai>=60){
cout << "lulus";
}
return 0;
}
#include <iostream>
int main()
{
int nilai;
cout << "Masukkan nilai = ";cin>>nilai;
if (nilai>=60){
cout << "lulus";
}
else
cout << "anda tidak lulus";
return 0;
}
47 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
3. Percabangan bersarang
#include <iostream>
int main()
{
int nilai;
cout << "Masukkan nilai = ";cin>>nilai;
if (nilai>90){
cout << "Sangat Bagus";
}
else if (nilai>60){
cout << "Baik";
}
else
cout << "anda tidak lulus";
return 0;
}
#include <iostream>
int main()
{
int nilai;
cout << "Masukkan nilai = ";cin>>nilai;
switch (nilai){
case 100:
cout << "Sangat Bagus"<<endl;
break;
case 80:
cout << "Baik"<<endl;
break;
case 60:
cout << "Cukup"<<endl;
break;
default :
cout << "anda tidak lulus";
}
return 0;
}
48 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TUGAS PRAKTIKUM
BAB VI
------------------
RESTO INDAH
------------------
Bakso = 10000
mie = 10000
teh = 2000
jeruk =3000
--------------------
Daftar pembelian
--------------------
1.Bakso :3 (inputan dari keybord)
2.Mie Ayam :2 (inputan dari keybord)
3.Es Teh :2 (inputan dari keybord)
4.Es Jeruk :2 (inputan dari keybord)
-------------------------------
Total Pembelian :60000 (otomatis)
-------------------------------
Diskon : 6000 (otomatis)
-------------------------------
Total Pembayaran :54000(otomatis)
49 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
2. Program Perhitungan Gaji
Jika jumlah anak lebih dari 3 maka tunjangan yang diperoleh 20 % dari
gaji pokok, jika jumlah anak kurang dari 3 maka tunjangan yang diperoleh
10% dari gaji pokok
Total gaji diperoleh dari gaji pokok + tunjangan
1. Buat algoritma dengan pseudocode dari permasalahan di atas
2. Buat program dengan c++
------------------------------
PROGRAM PENGGAJIAN
-------------------------------
Jumlah anak = 4 (inputan dari keybord)
Gaji pokok = 3000000 (inputan dari keybord)
--------------------------------
Tunjangan = 600000 (otomatis)
Perolehan gaji = 3600000 (otomatis)
-----------------------------------
50 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TES FORMATIF
BAB VI
51 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
5. Seorang karyawan akan memperoleh penghasilan tambahan gaji sesuai
dengan jam lembur yang dilakukan. Jika jam lembur lebih dari atau sama
dengan 3 jam maka tambahan gaji yang diterima adalah 2 % dari gaji poko
selain itu 1% dari gaji pokok. Maka algoritma yang tepat untuk kasus di
atas adalah.....
A.
Read jam_lembur
If jam_lembur >=3 then
Output tambahan_gaji = 0.2 * gaji_pokok
else
Output tambahan_gaji = 0.1 * gaji_pokok
B. Read jam_lembur
If jam_lembur <=3 then
Output tambahan_gaji = 0.2 * gaji_pokok
else
Output tambahan_gaji = 0.1 * gaji_pokok
C. Read jam_lembur
If jam_lembur > 3 then
Output tambahan_gaji = 0.2 * gaji_pokok
else
Output tambahan_gaji = 0.1 * gaji_pokok
D.
Read jam lembur
If jam lembur < 3 then
Output tambahan gaji = 0.2 * gaji pokok
else
Output tambahan gaji = 0.1 * gaji pokok
E.
Read jam lembur
If jam lembur < 3 then
Output tambahan gaji = 2%* gaji pokok
else
Output tambahan gaji = 1%* gaji pokok
52 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB VII
PERULANGAN
1. Tujuan
Setelah mempelajari modul ini diharapkan peserta didik bisa memahami
perulangan dan membuat program dengan struktur perulangan.
2. Materi
1. Struktur perulangan
Merupakan suatu kondisi yang dilaksanakan secara berulang-ulang.
Perulangan digunakan untuk mengulang suatu perintah sebanyak yang
diinginkan tanpa harus menulis ulang
2. Perluangan dengan menggunakan for
Digunakan untuk mengulangi perintah dengan jumlah perulangan yang
sudah diketahui.
Penulisan :
Penulisan :
Nilai awal;
While (batas berhenti)
{
Pernyataan;
Rumus;
}
53 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Penulisan :
Nilai awal;
do {
Pernyataan;
Rumus;
}
while (batas berhenti);
4. Rangkuman
1. Perulanagan Merupakan suatu kondisi yang dilaksanakan secara
berulang-ulang. Perulangan digunakan untuk mengulang suatu
perintah sebanyak yang diinginkan tanpa harus menulis ulang
2. Jenis Perulangan for, while, do while
54 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LATIHAN PRAKTIKUM 4
#include <iostream>
int main()
{
for (int i=1;i>=20;i++)
{
cout<<i<<endl;
}
return 0;
}
#include <iostream>
int main()
{
int x, y;
int pilih=1;
while(pilih<2)
{
cout<<"Masukan nilai x = ";cin>>x;
cout<<"Masukan nilai y = ";cin>>y;
cout<<"=========================”<<endl;
cout<<"x + y = "<<(x + y)<<endl;
cout<<"x - y = "<<(x - y)<<endl;
cout<<"x * y = "<<(x * y)<<endl;
cout<<"x / y = "<<(x / y)<<endl;
cout<<"x % y = "<<(x % y)<<endl;
cout<<"Apakah anda ingin mengulangi lagi : (1.Ya 2.Tidak)";cin>>pilih;
}
return 0;
}
55 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TUGAS PRAKTIKUM
BAB VII
Dengan menggunakan struktur perulangan bahasa pemrograman c++ buatlah program
yang menampilkan tampilan berikut :
=======================================
1 3 5 7 9
=======================================
2
6
8
===========================================
Masukkan nilai panjang = 5 (inputan dari keybord)
====================================================
====================================================
56 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TES FORMATIF
BAB VII
2. Struktur kontrol perulangan yang tepat digunakan menyatakan kondisi yang cocok adalah
......
A. for
B. if
C. while
D. switch
E. switch case
3.
Masukkan nilai x= ..................(di inputkan user dari keybord)
Masukkan nilai y=..................(di inputkan user dari keybord)
============================
x+y=..................... (hasil muncul otomatis)
Apakah anda ingin mengulangi lagi?(1.Ya 2. Tidak) .......... (di inputkan user dari keybord)
57 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Dari tampilan di atas maka penulisan program dengan c++ yang benar adalah ......
A.
#include<iostream>
using namespace std;
int main ()
{
int a,b;
int pilih=1;
while(pilih<2)
{
cout<<”Masukkan nilai x=”; cin>>a;
cout<<endl;
cout<<”Masukkan nilai y=”; cin>>b;
cout<<endl;
cout<<”=========================”<< endl;
cout<<”x+y=”;
cout<<a+b<<endl;
cout<<”Apakah anda ingin mengulangi lagi (1. Ya 2. Tidak)”; cin>>pilih;
}
return 0;
}
B.
#include<iostream>
using namespace std;
int main ()
{
int a,b;
int pilih=1;
while(pilih<2)
{
cout<<”Masukkan nilai x=”; cin>>x;
cout<<endl;
cout<<”Masukkan nilai y=”; cin>>y;
cout<<endl;
cout<<”=========================”<< endl;
cout<<”x+y=”;
cout<<x+y<<endl;
cout<<”Apakah anda ingin mengulangi lagi (1. Ya 2. Tidak)”; cin>>pilih;
}
return 0;
}
C.
58 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
#include<iostream>
using namespace std;
int main ()
{
int a,b;
int pilih;
for(pilih=1;pilih>=2;pilih++)
{
cout<<”Masukkan nilai x=”; cin>>x;
cout<<endl;
cout<<”Masukkan nilai y=”; cin>>y;
cout<<endl;
cout<<”=========================”<< endl;
cout<<”x+y=”;
cout<<x+y<<endl;
cout<<”Apakah anda ingin mengulangi lagi (1. Ya 2. Tidak)”; cin>>pilih;
}
return 0;
}
D.
#include<iostream>
using namespace std;
int main ()
{
int a,b;
int pilih;
if(pilih==1)
{
cout<<”Masukkan nilai x=”; cin>>x;
cout<<endl;
cout<<”Masukkan nilai y=”; cin>>y;
cout<<endl;
cout<<”=========================”<< endl;
cout<<”x+y=”;
cout<<x+y<<endl;
cout<<”Apakah anda ingin mengulangi lagi (1. Ya 2. Tidak)”; cin>>pilih;
}
retun 0;
}
59 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
E.
#include<iostream>
using namespace std;
int main ()
{
int a,b;
int pilih=1;
while(pilih<2)
{
{
cout<<”Masukkan nilai x=”; cin>>x;
cout<<endl;
cout<<”Masukkan nilai y=”; cin>>y;
cout<<endl;
cout<<”=========================”<< endl;
cout<<”x+y=”;
cout<<x+y<<endl;
cout<<”Apakah anda ingin mengulangi lagi (1. Ya 2. Tidak)”; cin>>pilih;
}
return 0;
}
4. #include<iostream>
using namespace std;
int main ()
{
int i=4;
do{
cout<<i;
i--;
while(i>0);
}
return 0;
}
5. Perintah perulangan yang tepat untuk perulangan dengan perintah increment adalah ......
A. for(int a=1;a<10;a++)
B. for(int a=1;a<10;a--)
C. for(int a=4;a>10;a--)
60 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
D. for(int a=3;a>10;a--)
E. for(int a=10;a>0;a--)
6. Struktur kontrol perulangan yang paling tepat digunakan untuk mengulangi perintah dengan
jumlah perulangan yang sudah diketahui adalah ......
A. while
B. if
C. do while
D. for
E. if else
61 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
BAB VIII
ARRAY
1. Tujuan
Setelah mempelajari modul ini diharapkan peserta didik bisa memahami
array dan membuat program dengan array.
2. Materi
1. Konsep Array
Suatu tipe data terstruktur yang dapat menyimpan banyak data dengan
suatu nama yang sama dan menempati tempat di memori yang
berurutan (kontigu) serta bertipe data sama pula.
62 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
penulisan
tipe nama_array[elemen1][elemen2];
0 1 2
Dari tabel diatas dilihat bahwa, jumlah elemen dari arrayMulti adalah 6, yang
didapat dari perkalian indeks pertama dan kedua 2*3 = 6. Untuk memberikan
nilai pada array multidimensi dimensi dapat menggunakan sintaks sebagai
berikut:
3. Rangkuman
Array : tipe data terstruktur yang dapat menyimpan banyak data dengan
suatu nama yang sama dan menempati tempat di memori yang
berurutan (kontigu) serta bertipe data sama pula.
63 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
LATIHAN PRAKTIKUM 5
#include <iostream>
int main()
{
int data[5]={4,5,6,7,8};
for(int a=0;a<=4;a++)
{
cout<<"Nilai array pada index ke ["<<a<<"]="<<data[a]<<endl;
}
return 0;
}
int main()
{
int data[3];
for(int a=0;a<=2;a++)
{
cout << "Masukkan data array pada index ke ["<<a<<"]=";
cin>>data[a] ;
cout<< endl;
}
cout<<"==================================="<<endl;
for(int a=0;a<=2;a++)
{
cout<<"Data array pada index ke ["<<a<<"] ="<<data[a];
cout<<endl;
}
return 0;
}
64 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
3. Program Matrik
#include <iostream>
int main()
{
int matrik[2][3]={{1,2,3},{4,5,6}};
for(int a=0;a<2;a++){
for(int b=0;b<3;b++){
cout<<endl;
}
return 0;
}
65 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TUGAS PRAKTIKUM
BAB VIII
KELAS :
NILAI :
Paraf guru :
1. Starndar Kompetensi
Membuat kode program untuk menampilkan kumpulan data array
2. Materi Pokok
Array dua dimensi
3. Tempat dan waktu pelaksanaan
.............................................................................................................................................................
4. Soal Praktik
Dengan perulangan dan array buat program untuk menampilkan
Input Matrik A
===============================
Data [0][0]=........................ (input keyboard)
Data [0][1]=........................ (input keyboard)
Data [1][0]=........................ (input keyboard)
Data [1][1]=........................ (input keyboard)
Input Matrik B
===============================
Data [0][0]=........................ (input keyboard)
Data [0][1]=........................ (input keyboard)
Data [1][0]=........................ (input keyboard)
Data [1][1]=........................ (input keyboard)
Matrik A
==================================
..... ...... otomatis
..... ...... otomatis
66 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
Matrik B
==================================
..... ...... otomatis
..... ...... otomatis
==================================
Matrik A - B adalah :
..... ...... otomatis
..... ...... otomatis
5. Listing Program :
6. Analisis program :
a. Program di atas menggunakan array berapa dimensi ?
.............................................................................................................................................
..............................................................................................................................................
b. Sebutkan variabel array yang ada pada program tersebut, jelaskan!
.............................................................................................................................................
..............................................................................................................................................
7. Kesimpulan
................................................................................................................................................
................................................................................................................................................
Pacitan, ................................
Ketua Kelompok
___________________________
67 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TES FORMATIF
BAB VIII
int matrik[3][4]={{4321},{5214},{3324}}
2. Dari inisialisasi matrik tersebut di atas maka pernyataan yang benar adalah.....
A. Matrik terdiri dari 3 baris 4 kolom
B. Matrik terdiri dari 4 baris 3 kolom
C. Matrik terdiri dari 3 baris 3kolom
D. Matrik terdiri dari 4 baris 4 kolom
E. Matrik terdiri dari 3 baris saja
4. Program yang tepat dan benar untuk tampilan di atas adalah ......
68 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
A.
#include <iostream>
using namespace std;
int main()
{
int data[3];
int cari;
for(int a=0;a<3;a++)
{
cout<<"isi index ke["<<a<<"]=";cin>>data[a];
cout<<endl;
}
cout<<"data yang ingin dicari";cin>>cari;
for(int a=0;a<3;a++)
{
if(data[a]==cari)
cout<<"data ditemukan pada index ke"<<a;
}
return 0;
}
B.
#include <iostream>
using namespace std;
int main()
{
int data[4];
int cari;
for(int a=0;a<3;a++);
{
cout<<"isi index ke["<<a<<"]=";cin>>data[a];
cout<<endl;
}
cout<<"data yang ingin dicari";cin>>cari;
for(int a=0;a<3;a++)
{
if(data[a]==cari)
cout<<"data ditemukan pada index ke"<<a;
}
return 0;
}
69 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
C.
#include <iostream>
using namespace std;
int main()
{
int data[3]
int cari;
for(int a=0;a<3;a++);
{
cout<<"isi index ke["<<a<<"]=";cin>>data[a];
cout<<endl;
}
cout<<"data yang ingin dicari";cin>>cari;
for(int a=0;a<3;a++)
{
if(data[a]==cari)
cout<<"data ditemukan pada index ke"<<a;
}
return 0;
}
D.
#include <iostream>
using namespace std;
int main()
{
int data[3];
int cari;
for(int a=0;a<3;a++)
{
cout<<"isi index ke["<<a<<"]=";cin>>data[a];
cout<<endl;
}
cout<<"data yang ingin dicari";cin>>cari;
for(int a=0;a<3;a++)
{
if(data==cari);
cout<<"data ditemukan pada index ke"<<a;
}
return 0;
}
70 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
E.
#include <iostream>
using namespace std;
int main()
{
int data[3];
int cari;
for(int a=0;a<3;a++)
{
cout<<"isi index ke["<<a<<"]=";cin>>data[a];
cout<<endl;
}
cout<<"data yang ingin dicari";cin>>cari;
for(int a=0;a<3;a++)
{
if(data[a]==cari)
cout<<"data ditemukan pada index ke"<<i;
}
return 0;
}
71 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
DAFTAR PUSTAKA
72 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)
TENTANG PENULIS
73 | P e m r o g r a m a n D a s a r k e l a s X S M K
(Indah Uly Wardati, S.Kom)