NIM : 2005551015
Kelompok : 09
MODUL I
“DASAR PEMROGRAMAN, FUNGSI, DAN PROSEDUR”
Tujuan
1. Peserta didik dapat mengenal berbagai macam tipe data dasar yang
digunakan dalam bahasa pemrograman C/C++.
2. Peserta didik dapat memahami kegunaan dari flowchart beserta simbol-
simbol yang terdapat di dalamnya.
3. Peserta didik memahami konsep antara variabel lokal dengan global
beserta perbedaannya.
4. Peserta didik dapat mengetahui konsep fungsi dan prosedur beserta
perbedaannya.
5. Peserta didik dapat memahami konsep passing by value dan passing by
reference beserta perbedaannya.
6. Peserta didik dapat mengetahui tentang seni penulisan program beserta
contohnya.
7. Peserta didik dapat mengetahui proses pembuatan flowchart, pseudocode
beserta tracing table.
Tugas Pendahuluan
1. Sebutkan dan jelaskan secara rinci tipe data dasar yang digunakan dalam
bahasa C/C++ dan keperluan memori untuk masing-masing tipe data serta
berikan contoh pendeklarasian tipe data tersebut!
2. Jelaskan pengertian dan kegunaan dari flowchart! Lalu gambarkan dan
jelaskan fungsi masing-masing symbol yang terdapat dalam flowchart!
3. Jelaskan tentang konsep variabel lokal dan variabel global serta
perbedaannya!
4. Jelaskan tentang konsep fungsi dan prosedur, perbedaan keduanya serta
aplikasinya dalam pemrograman dengan C/C++!
5. Jelaskan tentang konsep passing by value, passing by reference dan
perbedaannya, serta buatlah contoh program dengan bahasa C/C++!
6. Jelaskan yang dimaksud dengan seni penulisan program beserta
contohnya!
7. Buatlah flowchart dan pseudocode (notasi algoritma) dari program pada
soal di bawah ini, lalu lakukan trace terhadap flowchart yang Anda buat
sehingga yakin bahwa flowchart tersebut sudah benar
Jawaban
1. Tipe Data Dasar dalam Bahasa C/C++
Mempelajari aneka jenis tipe data adalah sesuatu hal yang wajib dilakukan
oleh pemogram lebih-lebih yang baru terjun ke dalam dunia pemrograman.
Beberapa tipe data dasar yang sering digunakan dalam bahasa pemrograman C/C+
+ di antaranya ada int (integer), float (floating-point), char
(character) dan double.
1.1 Tipe Data Int
Tipe data int atau integer adalah tipe data yang digunakan untuk
membaca bilangan bulat baik itu positif maupun negatif selama tidak mengandung
nilai pecahan (fractional). Keperluan memory untuk tipe data int adalah 4 bytes
untuk setiap bilangan.
#include <stdio.h>
int main()
{
int soalNo1 = 2005551015;
printf(soalNo1);
return(0);
}
Kode Program 1. 1 Source Code Deklarasi Tipe Data Integer
#include <stdio.h>
int main()
{
float soalNo1 = 2005551.015;
printf(soalNo1);
return(0);
}
#include <stdio.h>
int main()
{
char soalNo1[] = “A”;
printf(soalNo1);
return(0);
}
#include <stdio.h>
int main()
{
double soalNo1 = 2005551.015;
printf(soalNo1);
return(0);
}
2. Flowchart
Flowchart adalah suatu jenis diagram yang berisi serangkaian aliran
proses untuk menyelesaikan suatu goal atau tujuan tertentu. Flowchart atau bagan
alir dibangun atas beberapa bagan atau shape dengan fungsi yang berbeda-beda
dan saling melengkapi. Fungsi dari flowchart adalah untuk memaparkan suatu
proses yang digambarkan dengan bagan tertentu agar sekiranya dapat lebih mudah
dipahami oleh orang lain. Ada beberapa jenis flowchart, di antaranya document
flowchart, system flowchart, data flowchart, dan program flowchart.
#include <stdio.h>
#include <stdio.h>
Algoritma KALKULATOR_SEDERHANA
{dengan memasukan dua bilangan dan memilih jenis operasi yang
diinginkan}
deklarasi
pilihanOperasiPerhitungan, angkaPertama, angkaKedua, hasil
: integer
deskripsi
begin
write(“1. pertambahan”)
write(“2. pengurangan”)
write(“3. perkalian”)
write(“4. pembagian”)
write(“5. modulus”)
read(pilihanOperasiPerhitungan)
if(pilihanOperasiPerhitungan 1) then
read(angkaPertama, angkaKedua)
hasil angkaPertama + angkaKedua
write(hasil)
end if
else if (pilihanOperasiPerhitungan 2) then
read(angkaPertama, angkaKedua)
hasil angkaPertama - angkaKedua
write(hasil)
end if
else if(pilihanOperasiPerhitungan 3) then
read(angkaPertama, angkaKedua)
hasil angkaPertama * angkaKedua
write(hasil)
end if
else if(pilihanOperasiPerhitungan 4) then
read(angkaPertama, angkaKedua)
hasil angkaPertama / angkaKedua
write(hasil)
end if
else if(pilihanOperasiPerhitungan 5) then
read(angkaPertama, angkaKedua)
hasil angkaPertama + angkaKedua
write(hasil)
end if
else
write(“Input yang anda masukan salah!”)
end if
end
Kode Program 7.1.2 Pseudocode Program Kalkulator Sederhana
Kode program di atas adalah pseudocode atau kode semu dari program
kalkulator sederhana seperti program pada umumnya akan diawali dengan start.
Kemudian akan terdapat beberapa deklarasi tipe data (data type) seperti
pilihanOperasi, bilanganPertama, bilanganKedua, dan hasil.
Program akan diawali dengan menu pilihanOperasiPerhitungan.
User dapat memasukan pilihan angka antara 1, 2, 3, 4 dan 5 yang nanti akan
disesuaikan dengan jenis pilihan operasi yang diinginkan. Setelah memilih jenis
operasi yang diinginkan, nanti user akan diminta untuk memasukan
bilanganPertama dan bilanganKedua. Setelah itu, maka akan muncul
hasil dari kalkulasi tadi yang akan ditampilkan ke dalam variabel hasil.
Program tersebut akan diakhiri dengan end.
Algoritma PERHITUNGAN_LUAS_DAN_KELILING_BANGUN_DATAR
{dengan menggunakan prosedur}
deklarasi
pilihanBangunDatar, sisi, sisiA, sisiB, sisiC, sisiD, d1,
d2, tinggi, jariJari: integer
s, luas, keliling : float
deskripsi
begin
pilihanBangunDatar
read(pilihanBangunDatar)
if(pilihanBangunDatar 1)then
read(sisiA, sisiB, sisiC)
s (sisiA + sisiB + sisiC) / 3
luas sqrt s (s-sisiA) (s-sisiB) (s-sisiC)
keliling sisiA + sisiB + sisiC
write(luas, keliling
end if
else
write(“Input yang Anda masukan salah!”)
end if
end
Kode program di atas adalah kode program dari program kalkulasi bangun
datar dengan menggunakan prosedur. Seperti program pada umumnya, program
ini akan diawali dengan start. Kemudian akan terdapat beberapa deklarasi tipe
data (datatype) seperti pilihanBangunDatar, luas, keliling, sisiA,
sisiB, sisiC, dan lain sebagainya.
Program akan diawali dengan menu pilihanBangunDatar, user dapat
memasukan pilihan bangun datar antara 1, 2, 3, 4 dan 5 yang nanti akan
disesuaikan dengan jenis pilihan bangun datar yang diinginkan. Setelah memilih
jenis bangun datar yang diinginkan, nanti user akan diminta untuk memasukan
input yang nantinya akan disesuaikan dengan pilihan bangun datar yang kita
pilih. Setelah itu, maka akan muncul hasil dari kalkulasi tadi yang akan
ditampilkan ke dalam variabel luas dan keliling.
Tabel 7. 2. 3 Tracing Table Program Kalkulasi Luas dan Keliling Bangun Datar
Input menu = 5
menu2 = 1
r = 15
Proses Call luasLingkaran() - > hasil = PHI * r * r
Tracing table di atas adalah tracing table dari program kalkulasi bangun
datar dengan menggunakan prosedur. Tracing table ini terdiri atas input, proses,
dan juga output.
Gambar 7. 3. 1. Flowchart Program Kalkulasi Volume dan Luas Permukaan Bangun Ruang
Gambar di atas adalah flowchart dari program kalkulasi bangun ruang
dengan menggunakan fungsi. Seperti program pada umumnya, program ini akan
diawali dengan start. Kemudian akan terdapat beberapa deklarasi tipe data
(datatype) seperti pilihanBangunRuang, volume, luasPermukaan,
sisiA, sisiB, sisiC, dan lain sebagainya.
Program akan diawali dengan menu pilihanBangunDatar, user dapat
memasukan pilihan bangun datar antara 1, 2, 3, 4 dan 5 yang nanti akan
disesuaikan dengan jenis pilihan bangun datar yang diinginkan. Setelah memilih
jenis bangun datar yang diinginkan, nanti user akan diminta untuk memasukan
input yang nantinya akan disesuaikan dengan pilihan bangun datar yang kita
pilih. Setelah itu, maka akan muncul hasil dari kalkulasi tadi yang akan
ditampilkan ke dalam variabel volume dan luasPermukaan.
BEGIN
DEFINE
PHI <- 3.14
DEKLARASI
FLOAT hasil,r,t,a,b,l,ta,tp,m,s
FUNCTION main
DEKLARASI
INT menu, menu2
CHAR ulang
Begin
do {
CALL intro ()
CALL menu ()
CALL rangeVldInt (menu)
switch(menu)
case 1:
WRITE(1. Menghitung Volume)
WRITE(2. Menghitung Luas
Permukaan)
CALL rangeVldInt (menu2)
IF (menu2 == 1) THEN
CALL volumeTabung()
ELSE IF (menu2 == 2) THEN
CALL luasPermukaanTabung()
ELSE THEN
WRITE(Pilihan Anda Salah)
END IF
BREAK
case 2:
WRITE(1. Menghitung Volume)
WRITE(2. Menghitung Luas
Permukaan)
CALL rangeVldInt (menu2)
IF (menu2 == 1) THEN
CALL volumeBola()
ELSE IF (menu2 == 2) THEN
CALL luasPermukaanBola()
ELSE THEN
WRITE(Pilihan Anda Salah)
END IF
BREAK
case 3:
WRITE(1. Menghitung Volume)
WRITE(2. Menghitung Luas
Permukaan)
CALL rangeVldInt (menu2)
IF (menu2 == 1) THEN
CALL volumeLimasSegiEmpat()
ELSE IF (menu2 == 2) THEN
CALL
luasPermukaanLimasSegiEmpat()
ELSE THEN
WRITE(Pilihan Anda Salah)
END IF
BREAK
case 4:
WRITE(1. Menghitung Volume)
WRITE(2. Menghitung Luas
Permukaan)
CALL rangeVldInt (menu2)
IF (menu2 == 1) THEN
CALL volumePrismaSegiTiga()
ELSE IF (menu2 == 2) THEN
CALL
LuasPermukaanPrismaSegiTiga()
ELSE THEN
WRITE(Pilihan Anda Salah)
END IF
BREAK
case 5:
WRITE(1. Menghitung Volume)
WRITE(2. Menghitung Luas
Permukaan)
CALL rangeVldInt (menu2)
IF (menu2 == 1) THEN
CALL volumeKerucut()
ELSE THEN
WRITE(Pilihan Anda Salah)
END IF
BREAK
END CASE
WRITE (Kembali ke menu utama? (Y/T) : )
READ (ulang)
CALL system("cls")
} while (ulang == 'y' or ulang == 'Y')
WRITE(Semoga Hari Anda Menyenangkan.)
RETURN 0
END FUNCTION
PROCEDURE menu()
WRITE (MENU :)
WRITE (“1. Tabung”)
WRITE (“2. Bola”)
WRITE (“3. Limas Segiempat”)
WRITE (“4. Prisma Segitiiga”)
WRITE (“5. Kerucut”)
END PROCEDURE
Kode Program 7.3.2. Pseudocode Program Kalkulasi Volume dan Luas Permukaan Bangun
Ruang
Kode program di atas adalah kode program dari kalkulasi bangun ruang
dengan menggunakan fungsi. Seperti program pada umumnya, program ini akan
diawali dengan start. Kemudian akan terdapat beberapa deklarasi tipe data
(datatype) seperti pilihanBangunRuang, volume, luasPermukaan,
sisiA, sisiB, sisiC, dan lain sebagainya.
Program akan diawali dengan menu pilihanBangunDatar, user dapat
memasukan pilihan bangun datar antara 1, 2, 3, 4 dan 5 yang nanti akan
disesuaikan dengan jenis pilihan bangun datar yang diinginkan. Setelah memilih
jenis bangun datar yang diinginkan, nanti user akan diminta untuk memasukan
input yang nantinya akan disesuaikan dengan pilihan bangun datar yang kita
pilih. Setelah itu, maka akan muncul hasil dari kalkulasi tadi yang akan
ditampilkan ke dalam variabel volume dan luasPermukaan.
Tabel 7.3.3 Tracing Table Program Kalkulasi Volume dan Luas Permukaan Bangun Ruang
Input menu = 1
menu2 = 2
r = 7
t = 18
Proses Call luasPermukaanTabung()- > hasil = 2*PHI*r*(r+t)
Output Print luas permukaan tabung = 1099.00
Tracing table di atas adalah tracing table dari program kalkulasi bangun
ruang dengan menggunakan fungsi. Tracing table ini terdiri dari beberapa kolom
di antaranya ada input, proses, dan output.