Anda di halaman 1dari 30

Struktur Dasar Program

Prosedural - C++

Tim Penyusun Materi Pengenalan Komputasi


Institut Teknologi Bandung © 2019
Tujuan
• Mahasiswa dapat:
• Menjelaskan struktur dasar program prosedural
• Menjelaskan abstraksi data dan jenis-jenis type data dasar
• Menjelaskan makna dan menggunakan variabel dan konstanta
• Menjelaskan dan menggunakan perintah assignment dan input/output

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 2


C++
• C++ merupakan bahasa pemrograman general purpose dan multi
paradigma (prosedural, object oriented)
• Bahasa pemrograman yang sangat populer dan banyak digunakan
• Dikembangkan oleh Bjarne Stroustrup mulai tahun 1979 di Bell Labs
• Merupakan pengembangan dari Bahasa C (prosedural murni) dengan
penambahan konsep object-orientation  tidak diajarkan di kelas ini
• Dalam kuliah ini, hanya akan menggunakan paradigma prosedural
• Merupakan bahasa yang case sensitive  perbedaan huruf besar dan
kecil berpengaruh

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 3


Struktur Dasar Algoritma
Program <JudulProgram>
{ Spesifikasi Program }
KAMUS
{ Deklarasi type, variabel, konstanta, fungsi,
prosedur }
ALGORITMA
{ Deretan langkah algoritmik untuk penyelesaian
persoalan }
{ Ditulis dengan pseudocode atau flowchart }

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 4


Struktur Dasar Program Prosedural C++
// Program <JudulProgram>
// Spesifikasi Program

#include <iostream>
using namespace std;

int main () {
// KAMUS
// Deklarasi type, variabel, konstanta, fungsi, prosedur

// ALGORITMA
// Deretan langkah algoritmik untuk penyelesaian persoalan

return 0;
}

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 5


Program Pertama
// Program HelloWorld
• Buatlah program untuk // Mencetak Hello, World! ke layar
menuliskan “Hello, World!” ke
#include <iostream>
layar. using namespace std;

int main () {
// KAMUS
// belum diperlukan

// ALGORITMA
cout << “Hello, World!” << endl;
cout adalah
perintah untuk return 0;
mencetak teks ke }
layar/monitor

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 6


Input – Proses – Output

Input Proses Output


input (A) output (A)
A ← A + B
input (B) output (B)

C++
cin >> A; cout << A;
A = A + B;
cin >> B; cout << B;

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 7


Mulai
Flow Chart
Mulai Selesai
Input

Proses

Proses
Input/output

Pilihan
Pilihan Output

Alur pilihan
Alur
Selesai

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 8


Mulai
Struktur Dasar Program
Program Test input(A)
{ Spesifikasi Program: menghitung A + B } input(B)
KAMUS
{ Deklarasi variabel }
A, B : integer AA+B
ALGORITMA - Notasi Algoritmik
input(A)
input(B)
output(A)
AA+B
output(A) output(B)
output(B) ALGORITMA -
Flowchart
Selesai

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 9


// Program Test Judul Program +
Contoh // Spesifikasi : Menghitung nilai A dan B spesifikasi, dituliskan
dalam komentar
Program C++ #include <iostream>
using namespace std;

int main () {
//KAMUS Bagian ini perlu di tambahkan
int A; sebagai standard pemrograman
int B; C++ di layar Console

//ALGORITMA KAMUS: deklarasi


cin >> A; // input variabel A dan B
cin >> B;
ALGORITMA:
A = A + B; // proses Input,
Proses,
cout << A << endl; // output Output
cout << B << endl;

return 0;
}
03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 10
Komentar
• Dalam bahasa pemrograman komentar adalah bagian program
yang tidak dieksekusi
• Bagian ini hanya digunakan untuk memberikan penjelasan suatu langkah,
rumus ataupun bisa hanya berupa keterangan
• Dalam C++, komentar dituliskan sebagai:
• Diawali dengan //
// ini komentar
• Antara /* dan */
/* ini komentar */

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 11


Data

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 12


Abstraksi Data
90 kemampuan kita untuk
menginterpretasikan
suatu data dengan
konteks masalahnya

Suhu Air?

Kecepatan
Berat Badan? Kendaraan
Bergerak

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 13


Persoalan Abstraksi Data
kemampuan kita untuk
mengerti konteks dan
Suhu Air?
Berat Badan? merepresentasikan
menjadi bentuk lain.

Kecepatan
Kendaraan
75 Bergerak

derajat Km/jam
Celcius Kilogram
03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 14
Bagian Kamus
• Bagian Kamus dipakai untuk mendeklarasikan nama-nama yang
digunakan dalam program
• Nama-nama merepresentasikan data yang digunakan dalam
program
• Deklarasi nama yang didefinisikan pemrogram
• Tipe data
• Variabel
• Konstanta
• Deklarasi BUKAN instruksi

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 15


Tipe Data (1)
• Setiap data memiliki jenis yang berbeda-beda
• Data umur seseorang berbeda dengan data nama
• Data umur dibentuk dari kumpulan angka
• Data nama dibentuk dari serangkaian huruf
• Untuk setiap jenis data juga memiliki rentang (range) yang berbeda
• Data umur rentangnya antara 1 sampai 100 (bila diasumsikan bahwa umur
seseorang tidak lebih dari 100).
• Data nama rentangnya mulai dari 1 sampai 50 (bila di anggap nama tidak ada yang
melebihi 50 huruf

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 16


Tipe Data (2)
• Nilai yang diperbolehkan untuk variabel tergantung pada tipe
data-nya
• Tipe data mendefinisikan himpunan nilai-nilai tertentu, misalnya:
• Tipe data integer : himpunan nilai yang terdiri atas bilangan bulat
(negatif, 0, positif)
• Tipe data boolean: himpunan nilai yang terdiri atas nilai true dan false

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 17


Tipe Data Dasar/Primitif
• Disediakan oleh bahasa pemrograman
C++ Domain Nilai
bool Boolean: true = 1; false = 0
int Integer/bilangan bulat: bilangan bulat negatif, 0,
bilangan bulat positif
Contoh: 1; -144; 999; 0
float Bilangan riil, contoh: 3.14; 4.01E+1
char Character: karakter/huruf, ditandai dengan kutip
tunggal;
Contoh: ‘A’; ‘#’; ‘b’
string Kumpulan karakter/huruf, ditandai dengan kutip
tunggal (dalam C++)
Contoh: “xcxcx”

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 18


Contoh Penentuan Tipe Data Variabel
• Umur  Integer contoh: 25; 44; 35
• Kota  String, contoh: “Jakarta”; “Bandung”
• Nama  String, contoh: “Budi”; “Ali”
• Suhu  Integer atau float, contoh: 37.5; 100
• Luas  Integer atau float, contoh: 400; 43.5
• BeratBadan  Integer atau float, contoh: 60.5; 75
• NIM  Integer atau string?, contoh: 15812001

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 19


Variabel (1)
• Variabel adigunakan menyimpan suatu nilai yang ber-”tipe data”
tertentu sesuai dengan deklarasi
• Merepresentasikan suatu makna di dunia nyata yang ingin diolah
dalam program, misalnya:
• Sum : jumlah beberapa angka
• Max : nilai maksimum
• Penggunaan variabel:
• deklarasi
• inisialisasi dan manipulasi nilai

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 20


Variabel (2) C++
int main () {
// KAMUS
• Contoh deklarasi dan int i;
inisialisasi variabel: float A;
// ALGORITMA
....
i = 100;
A = i * 50;
....
return 0;
}

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 21


Membuat Nama Variabel yang Benar dan
“Baik”
• Nama variabel harus dimulai dengan huruf dan dapat diikuti
dengan huruf lagi dan angka
• Tidak boleh ada karakter lain, kecuali: underscore (_)
• Dalam nama variabel tidak boleh dipisahkan oleh spasi
• Cari nama variabel yang bisa dimengerti dan tidak
membingungkan
• Contoh: sum adalah untuk jumlah, bertype integer. Tidak digunakan
untuk data bertype lain.
• C++ adalah bahasa yang case sensitive: Kesalahan penulisan huruf
besar dan kecil menyebabkan error
03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 22
Konstanta
• Berbeda dengan Variable, suatu konstanta tidak boleh diubah nilainya
• Deklarasi konstanta di C++: spt. variabel namun diberikan keyword const
• Contoh deklarasi konstanta di C++ pada bagian KAMUS:

const float PI = 3.1415;


const int Nilai = 1000;
const int NMax = 100;
• Pemakaian yang salah:
PI = 2.75;
Nilai = 10; PI dan Nilai sudah ditandai
• sad sebagai konstanta, jadi nilainya
tidak boleh diubah

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 23


Assignment dan Input/Output

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 24


Pemberian Nilai
• Suatu besaran (dengan tipe tertentu), misalnya variabel,
yang telah dikenal dapat diberi nilai/harga
• Pemberian nilai:
• Pemberian nilai langsung atau disebut sebagai assignment
• Contoh: A = 10;
• Dibaca dari piranti masukan (perintah input)
• Contoh: cin >> A;

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 25


Assignment
• Assignment: Pemberian nilai suatu variabel
• Ruas kiri harus variable
• Ruas kanan harus ekspresi/nilai/variabel yang sudah jelas
nilainya
C++
<RuasKiri> = <RuasKanan>;
Contoh:
i = 10; Nilai X di-
Nama = “Maya”; assign dengan
X = i + 10; ekspresi

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 26


Input/Output (1)
Perintah input: pemberian nilai variabel dari piranti masukan,
misal: keyboard  dibaca atas masukan dari pengguna

Perintah di C++: cin

Contoh:
cin >> A; // mengisi nilai A dengan masukan dari keyboard/pengguna

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 27


Input/Output (2)
Perintah output: penulisan nilai (variabel/konstanta/hasil ekspresi)
ke piranti keluaran, misal: monitor

Perintah di C++: cout

Contoh:
cout << A; // menulis isi variabel A ke layar, diakhiri enter
cout << “Hello”; // menulis Hello ke layar
cout << A * 4; // menulis hasil perkalian A*4
cout << PI; // menulis nilai konstanta PI
03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 28
Latihan
• Tentukan untuk setiap baris (yang diberikan nomor dalam
komentar) dari potongan program C++ berikut, manakah yang
merupakan assignment yang tepat.
• Jika tidak tepat, berikan alasannya.

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 29


// Program Latihan ...
// Latihan type data dan assignment
#include <iostream> // ALGORITMA
using namespace std IA = 10; // (1)
IB = 200.89; // (2)
int main () { FA = 3.45; // (3)
// KAMUS PI = 4.567; // (4)
const float PI = 3.145;
int IA, IB; SA = "ITBJAYA"; // (5)
float FA; SA = SB; // (6)
string SA, SB;
bool BA; CA = 'C'; // (7)
char CA; CB = '#'; // (8)
CA = "MAJUTERUS"; // (9)
// ALGORITMA
... BA = true; // (10)

return 0;
}

03/16/2021 KU1102 - Pengenalan Komputasi - Struktur Dasar Program Prosedural 30

Anda mungkin juga menyukai