Anda di halaman 1dari 100

Dasar-dasar

Pemrograman
C++
HOBI ELEKTRONIKA HIMA EINSTEN.COM 2015
BY HARYATNA
Pengenalan C++
Struktur Program C++
Tipe Data Dasar, Variabel,
Materi Konstanta
Dasar Pemrograman C++ Operator Aritmatika dan
Penggunaannya
Statement Kondisional
Pengulangan (Looping)
Arrays
Fungsi (function)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
2/100
Pointer
Object Oriented Programming
Class
Materi Standard Template Library
Lanjutan
Peningkatan Skill Memory Calling and Management
Pemrograman C++
(Hardware Resource)
Belajar Sendiri Yaa
API

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
3/100
Refrensi Belajar
http://www.cplusplus.com/doc/tutorial/ - artikel tutorial bahasa inggris
http://ilmukomputer.org/ - tutorial ilmu dibidang komputer
https://www.youtube.com/user/thenewboston - video tutorial
http://www.lynda.com/ - video tutorial berbayar
Buku Algoritma Pemrograman C - Jogiyanto
Teman

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
4/100
Pengenalan C++

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
5/100
Klasifikasi Bahasa Pemrograman
Berdasarkan level kedekatan Bahasa yang dimengerti oleh Hardware

Level Programming Language

Scripting Php, JavaScript, VisualBasicScript, Macro, ASP, JSP

Top Level MS VisualC++, C#, Delphi, Pascal, C, C++, Visual Basic,


Java
Mid Level C, C++

Assembly Level Assembler

Machine Code Mnemonic Code

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
6/100
Pengembangan Bahasa C
Akar dari bahasa C adalah bahasa BCPL yang dikembangkan
oleh Martin Richards (1967).
Bahasa C pertama kali digunakan pada komputer Digital
Equipment Corporation (DEC) PDP-11 yang menggunakan
sistem operasi UNIX.
Standar bahasa C yang asli adalah standar dari UNIX.
ANSI (American National Standards Institute) membentuk
suatu komite (ANSI committee X3J11) pada tahun 1983 yang
kemudian menetapkan standar ANSI untuk bahasa C.

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
7/100
Pengembangan Bahasa C++
Pada awalnya C++ adalah pengembangan dari bahasa C
yang disebut C with Classes
C++ dikembangkan oleh Bjarne Stroustrup pada tahun
1970an
C++ lahir karena keperluan bahasa pemrograman yang
mendukung pemrograman berorientasi objek (Object
Oriented Programming)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
8/100
So... What the hell is C++ ????
Generic Programming
Procedural Programming
Functional Programming
Object Oriented Programming (Modern
Programming)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
9/100
Penggunaan C++
Aplikasi
Firmware (Device & Embeded System)
Sistem Operasi (MacOS, Windows, Unix, Linux)
Bahasa Pemrograman Lain (php, phyton, java)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
10/100
Trus apa hubungannya sama
Elins ??
Firmware (Device & Embeded System)
Elektronika modern kebanyakan menggunakan mikrokontroller dan
mikroprosesor
Peralatan instrumentasi penelitian dan eksperimen
Aplikasi interface hardware
Contoh Microcontroller:
AtmelAVR
Arduino
Intel AVR

Ekperimen membuat sistem operasi untuk AVR

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
11/100
Langkah dan Tahapan
Pengembangan Aplikasi
Analisis (Analisys)
Perancangan (Planing)
Pemrograman (Proggraming)
Penelusuran Kesalahan (Debugging)
Pengujian (Testing)
Pemutakhiran (Improving)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
12/100
Enough Talks Lets
Start Some
Proggraming
WHICH IS THE HARDEST PART

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
13/100
Struktur Program
C++

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
14/100
Penulisan (coding) C++
Program C tersusun atas sejumlah fungsi.
Minimal dalam satu program bahasa C ada satu fungsi fungsi
main().
Setiap fungsi terdiri dari satu atau beberapa pernyataan
(statement).
Setiap Statement diakhiri dengan ;
Setiap fungsi harus mengembalikan suatu nilai.
Penulisan suatu fungsi diawali dengan { dan diakhiri dengan }.
C++ disebut bahasa terstruktur, strukturnya menggunakan fungsi-
fungsi sebagai program-program bagian (subroutine).

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
15/100
Etika Pemrograman (Ethical
Coding)
Etika penulisan program agar kode program
Mempermudah membaca alur program
Memudahkan dalam proses debugging (pengecekan kesalahan
program)
Penggunaan comment atau komentar untuk memberikan catatan
(note)
Penulisan hirarki alur proses dari pencabangan program (misal setiap
fungsi dan pencabangan menjorok kedalam)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
16/100
Good and Bad Coding

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
17/100
Preprocessor directive (#include)
#include merupakan salah satu jenis pengarah praprosesor
(preprocessor directive).
Dipakai untuk membaca file yang di antaranya berisi
deklarasi fungsi dan definisi konstanta.
Beberapa file judul disediakan dalam C nama filenya diakhiri
dengan ekstensi .h.
#include <stdio.h> menyatakan pada kompiler agar
membaca file bernama stdio.h saat pelaksanaan kompilasi.
Bentuk umum #include: #include namafile

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
18/100
Fungsi Utama main()
Merupakan fungsi istimewa.
Harus ada pada program C++.
Fungsi ini menjadi titik awal dan titik akhir eksekusi
program.
Biasa ditempatkan pada posisi paling atas dari
program agar memudahkan untuk mencari
program utama.

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
19/100
Komentar Dalam Program
Bagian kode program yang tidak akan dieksekusi oleh
kompiler
Digunakan untuk keperluan dokumentasi atau catatan
kepada programmer
Dimulai dengan tanda /* dan diakhiri dengan tanda */
Untuk komentar yang hanya satu baris ditulis dengan
diawali tanda //

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
20/100
Fungsi Output printf()
Digunakan untuk menampilkan suatu keluaran pada
layar/monitor.
Bentuk umum:
printf(string kontrol, daftar argumen);

String kontrol dapat berupa:


%d / %i untuk menampilkan bilangan bulat (integer)
%f untuk menampilkan bilangan pecahan (float)
%c untuk menampilkan sebuah karakter
%s untuk menampilkan sebuah string

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
21/100
Fungsi Output cout <<
Digunakan untuk menampilkan suatu keluaran pada
layar/monitor.
Bentuk umum:
cout << string << varabel;

cout dapat berupa gabungan string dan variabel


Dipisahkan dengan tanda <<

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
22/100
Fungsi Input scanf()
Digunakan untuk meminta masukkan (input) dari user.
Bentuk umum:
scanf(string kontrol, daftar argumen);

String kontrol dapat berupa:


%d untuk menampilkan bilangan bulat (integer)
%f untuk menampilkan bilangan pecahan (float)
%c untuk menampilkan sebuah karakter
%s untuk menampilkan sebuah string

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
23/100
Fungsi Input cin <<
Digunakan untuk meminta masukkan (input) dari user.
Bentuk umum:
cin >> varabel >> variabel;

cout dapat berupa beberapa variabel


Dipisahkan dengan tanda >>

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
24/100
LATIHAN
BUKA APLIKASI CODEBLOCK

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
25/100
Tipe Data,
Variabel dan
Konstanta

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
26/100
Tipe Data Dasar
Bilangan bulat (integer) int
Bilangan real presisi-tunggal (float) float
Bilangan real presisi-ganda (double) double
Karakter (char) char
Tak-bertipe (void) void
Variabel Kosong (null) null
Boolean(bool) true, false

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
27/100
Tipe Data Fundamental di C++
Group Type names* Notes on size / precision Range
char Exactly one byte in size. At least 8 bits. 256
char16_t Not smaller than char. At least 16 bits. 0-65535
Character types Not smaller than char16_t. At least 32
char32_t
bits.
Can represent the largest supported
wchar_t
character set.
signed char Same size as char. At least 8 bits. -127 - 127
signed short int Not smaller than char. At least 8 bits.
Integer types (signed) signed int Not smaller than short. At least 16 bits.
signed long int Not smaller than int. At least 32 bits.
signed long long int Not smaller than long. At least 64 bits.
unsigned char 0 - 256
unsigned short int 0 - 256
Integer types (unsigned) unsigned int (same size as their signed counterparts) 0 65.535
unsigned long int 0 4.294.967.295
unsigned long long int 0 18.446.744.073.709 551.616
float
Floating-point types double Precision not less than float
long double Precision not less than double
Boolean type bool
Void type void no storage
Null pointer decltype(nullptr)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
28/100
Aturan penulisan nama
Variabel
Nama harus diawali dengan huruf (A..Z, a..z) atau karakter
garis bawah ( _ )
Selanjutnya dapat berupa huruf, digit (0..9) atau karakter
garis bawah
Panjang nama variabel boleh lebih dari 31 karakter hanya
31 karakter pertama yang akan dianggap
Nama variabel tidak boleh menggunakan nama yang
tergolong sebagai kata-kata cadangan (reserved words)
seperti printf, int, if, while dan sebagainya

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
29/100
Deklarasi Variabel
Variabel yang akan digunakan dalam program haruslah
dideklarasikan terlebih dahulu pengertian deklarasi di sini
berarti memesan memori dan menentukan jenis data yang
bisa disimpan di dalamnya.
Bentuk umum deklarasi variabel:
tipe_data nama_variabel;

Contoh:
int angka1;
float pecahan1, pecahan2;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
30/100
Inisialisasi Variabel
Inisialisasi nilai variabel
int nilai;
nilai = 10;
Sama dengan:
int nilai = 10;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
31/100
Konstanta
Konstanta menyatakan nilai tetap.
Tidak perlu dideklarasikan tetapi didefinisikan.
Juga mempunyai tipe data.
Nama konstanta ditulis dengan huruf kapital.
Aturan penulisan konstanta:
Menggunakan keyword #define
#define <nama_konstanta> <nilai>
Menggunakan keyword const
const <tipe_konstanta> <nama_konstanta> = <nilai>;

Contoh:
#define PI 3.14159
const float PI = 3.14159;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
32/100
Penulisan Variabel dan
Konstanta
Variabel dan Konstanta karakter (char) diawali dan diakhiri dengan
tanda petik tunggal, Contoh : A dan @.
Variabel dan Konstanta integer ditulis dengan angka (tanpa tanda
petik) tanpa mengandung pemisah ribuan dan tak mengandung bagian
pecahan. Contoh : 1 dan 32767.
Variabel dan Konstanta real (float dan double) bisa mengandung
pecahan (dengan tanda berupa titik) dan nilainya bisa ditulis dalam
bentuk eksponensial (menggunakan tanda e)
Variabel dan Konstanta string merupakan deretan karakter yang diawali
dan diakhiri dengan tanda petik-ganda (). Contoh: Program Dasar.

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
33/100
LATIHAN
MENGGUNAKAN VARIABEL DAN KONSTANTA

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
34/100
Operator
Aritmatika dan
Penggunaannya

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
35/100
Operator
Simbol atau karakter yang digunakan untuk melakukan
sesuatu operasi atau manipulasi data.
Misal: menjumlahkan, mengurangi, membandingkan,
memberikan nilai, dll.
Jenis operator:
Operator Penugasan (assignment)
Operator Aritmatika
Operator Increment dan Decrement
Operator Kombinasi
Operator Perbandingan
Operator Logika

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
36/100
Operator Penugasan
(assignment)
Digunakan untuk memindahkan nilai dari suatu ungkapan (expression)
ke suatu variabel.
Operator pengerjaan yang umum digunakan dalam bahasa
pemrograman, termasuk bahasa C adalah operator sama dengan (=).
pengenal1 = pengenal2 = = ungkapan ;

Contoh :
a=b+5;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
37/100
Operator Aritmatika
Operator Penjelasan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
% Modulo (Sisa dari
pembagian)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
38/100
Operator Increment dan
Decrement
Operator increment: ++
Operator decrement: --

Operasi Ekivalen
a++ a = a+1;
b-- b = b-1;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
39/100
Operator Kombinasi
Digunakan untuk memendekkan penulisan operasi penugasan
(assignment) dengan penggabungan operasi aritmatika.

Operasi Ekivalen
a += b; a = a + b;
a -= 20; a = a 20;
c *= b; c = c * b;
d /= h; d = d / h;
hasil *= harga rugi; hasil = hasil * (harga rugi);

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
40/100
Operator Perbandingan
Digunakan untuk membandingkan dua nilai / variabel
Biasanya digunakan untuk pencabangan program (pengambilan
keputusan)
Menghasilkan tipe data boolean (true, false)

Operator Penjelasan
== sama dengan
!= tidak sama dengan
< lebih kecil dari
> lebih besar dari
<= lebih kecil dari sama dengan
>= lebih besar dari sama dengan

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
41/100
Operator Logika
Digunakan untuk membandingkan dua nilai / variabel
Biasanya digunakan untuk pencabangan program (pengambilan keputusan)
Menghasilkan tipe data boolean (true, false)
Operator NOT ! untuk membalikkan logika
Operator AND && untuk membandingkan dengan logika AND
Operator OR || untuk membandingkan dengan logika OR
var a var b a && b a||b !a !b
true true true true false false
true false false true false true
false true false true true false
false false false false true true

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
42/100
LATIHAN
MENGGUNAKAN OPERATOR

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
43/100
Statement
Kondisional

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
44/100
Statement Kondisional
Statement yang dapat digunakan dalam pengambilan keputusan
berdasarkan kondisi:
Statement if
Statement if-else
Statement switch-case

Pernyataan-pernyataan diatas memerlukan suatu kondisi dibentuk


dengan operator relasi dan/atau operator logika

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
45/100
Contoh Kondisi
Kondisi Perbandingan Hasil
2<5 true
2 == 7 false
var_a <= 3 true : jika variabel var_a bernilai lebih
kecil atau sama dengan 3
false : jika variabel var_a bernilai
lebih besar dari a
A < B true : karena kompiler akan
mengganggap A dan B sebagai char
dan membandingkan kode ASCII nya
( 3 < 8 ) && ( 2 > 3 ) false
( 3 < 8 ) || ( 2 > 3 ) true

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
46/100
Statement if
Sintak:
if (kondisi) {pernyataan};

Jika kondisi benar maka pernyataan


dilakukan.
pernyataan bisa satu statement atau
beberapa statement

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
47/100
Contoh if
//Program discount - discount.c
#include <iostream>
using namespace std;
int main()
{
float total_pembelian, discount = 0;
cout << "Total pembelian = Rp ";
cin >> total_pembelian;
if(total_pembelian >= 100000)
{discount = 0.05 * total_pembelian;}
cout << "Besarnya discount = Rp << discount;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
48/100
Statement if-else
Sintak:
if (kondisi)
{pernyataan1;}
else
{pernyataan2;}

Jika kondisi benar maka pernyataan1


dilakukan.
Jika kondisi salah maka pernyataan2
dilakukan.

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
49/100
Contoh if-else
// Program perbandingan 2 buah nilai
#include <iostream>
using namespace std;
int main()
{
int minim, nilai1, nilai2;
cout << "Masukkan 2 buah nilai \n";
cin >> nilai1 >> nilai2;
if (nilai1 < nilai2){
minim = nilai1;
}
else {
minim = nilai2;
}
cout << "Nilai minimalnya adalah :" << minim;
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
50/100
Statement if-else bertingkat
(Nested)
Di dalam pernyataan if (atau if-else) bisa terdapat pernyataan if(atau if-else) yang lain.

Contoh :
if (kondisi-1){
if (kondisi-2){
if(kondisi-n){
pernyataan;
}
else
{
pernyataan;
}
}
else
{
pernyataan;
}
}
else
{
pernyataan;
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
51/100
Ternary Operator
Mempersingkat statement if-else (jika hanya satu kondisi dan satu pernyataan)
menjadi satu baris statement untuk penugasan variabel.
Bentuk :
kondisi1 ? statement_true : statement_false;
Jika kondisi bernilai benar, maka nilai ungkapan kondisi berupa statement_true
Jika kondisi bernilai salah, maka nilai ungkapan kondisi berupa statement_false

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
52/100
Contoh Ternary Operator
// Program perbandingan 2 buah nilai
#include <iostream>
using namespace std;
int main()
{
int minim, nilai1, nilai2;
cout << "Masukkan 2 buah nilai \n";
cin >> nilai1 >> nilai2;
minim = (nilai1 < nilai2) ? nilai1 : nilai2;
cout << "Nilai minimalnya adalah :" << minim;
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
53/100
Statement Switch-Case
Sebagai pengganti pernyataan if bertingkat (else-if)
Mengevaluasi nilai dari sebuah variabel dengan beberapa kemungkinan
switch (ekspresi)
{
case nilai1 :
pernyataan-11;
break;
case nilai2 :
pernyataan-n3;
break;
case nilai3 :
pernyataan-n3;
break;
default:
pernyataan-default;
break;
}
DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM
PREPARED BY: HARYATNA
54/100
Contoh switch-case
#include <iostream>
using namespace std;

int main()
{
int valid_operator = 1;
char oper;
float number1, number2, result;
cout << "Masukkan Bilangan 1, Operator dan Bilangan 2\n";
cin >> number1 >> oper >> number2;
switch(oper){
case '*' :
result = number1 * number2;
break;
case '/' :
result = number1 / number2;
break;
case '+' :
result = number1 + number2;
break;
case '-' :
result = number1 - number2;
break;
default :
valid_operator = 0;
}
if(valid_operator){
cout << number1 << oper << number2 << "=" << result;
}
else {
cout << "Invalid operator!\n";
}
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
55/100
LATIHAN
MEMBUAT PROGRAM DENGAN STATEMENT
KONDISIONAL (PROGRAM NILAI MAHASISWA)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
56/100
Program Nilai Mahasiswa
Masukkan nilai matakuliah
Nilai adalah kriteria kelulusan
Nilai lulus diatas B

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
57/100
Program Kalkulator Sederhana
Buat program kalkulator sederhana dengan memakai fungsi.
Bilangan diinput dari keyboard.
Operasi yang tersedia hanya
Penjumlahan
Pengurangan
Pembagian
Perkalian

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
58/100
Pengulangan
(Looping)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
59 /100
Statement Pengulangan
Digunakan untuk mengulang suatu bagian program
Bagian program tersebut akan dieksekusi terus menerus sampai
mencapai suatu kondisi
Statement Pengulangan :
for
while
do-while
Untuk memaksa program keluar dari Pengulangan digunakan perintah
break
continue
exit
Didalam Pengulangan bisa terdapat perulangan lagi (nested)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
60/100
Statement for
Digunakan untuk membuat looping dengan jumlah Pengulangan yang
ditentukan di awal.
Sintak:
for(kondisi_awal; kondisi_akhir; kontrol)
{statement;}

kondisi_awal: digunakan untuk memberikan inisialisasi terhadap


variabel pengendali loop.
kondisi_akhir: dipakai sebagai kondisi untuk keluar dari loop.
kontrol: dipakai sebagai pengatur kenaikan nilai variabel pengendali
loop

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
61/100
Contoh Statement for
for (bil = 1; bil <= 15; bil += 3){
cout << bil << \n;

Hasil :
1
4
7
10
13

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
62/100
Statement while
Pengecekan terhadap loop dilakukan di bagian awal.
Pernyataan didalamnya bisa tidak dikerjakan sama sekali jika kondisi
tidak terpenuhi.
Sintak
while(kondisi){
statement;
}
Selama kondisi benar maka pernyataan dikerjakan
Jika kondisi salah keluar dari loop

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
63/100
Contoh Statement while
bil = 1;
while (bil <= 15)
{
cout << bil << "\n";
bil = bil + 3;
}
Hasil :
1
4
7
10
13
DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM
PREPARED BY: HARYATNA
64/100
Statement do-while
Pengecekan terhadap loop dilakukan di bagian akhir.
Pernyataan didalamnya pasti dijalankan (minimal 1 kali).
Sintak
do {
statement;
}
while(kondisi);

Mula-mula pernyataan dijalankan, selanjutnya kondisi diuji jika benar


dilakukan perulangan, jika salah maka keluar dari loop

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
65/100
Contoh Statement do-while
bil = 1;
do {
cout << bil << "\n";
bil = bil + 3;
} while (bil <= 15);

Hasil :
1
4
7
10
13
DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM
PREPARED BY: HARYATNA
66/100
Perbedaan Alur Perulangan
for loop while loop do-while loop

bil = 1; bil = 1; bil = 1;

cout << bil


<< \n;
bil <= 15 bil <= 15

bil += 3
cout << bil cout << bil
<< \n; << \n;

bil += 3 bil += 3 bil <= 15

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
67/100
Statement break dan continue
Berfungsi untuk keluar dari loop untuk looping dengan for, while, dan
do-while.
Berfungsi untuk keluar dari struktur switch.
Sintak:
break;
continue;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
68/100
Break vs Continue
while(kondisi) while(kondisi)
{ {
break; continue;
statement-x; statement-x;
} }
statement-y; statement-y;

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
69/100
Statement exit
Berfungsi untuk keluar dari program untuk looping dengan for, while,
dan do-while.
Didefinisikan di stdlib.h
Sintak:
exit();

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
70/100
LATIHAN
MEMBUAT PROGRAM DENGAN STATEMENT
PERULANGAN

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
71/100
Program mencetak angka
pangkat
Memasukkan angka dasar
Memasukkan nilai pangkat maksimum
Mencetak nilai pangkat dari pangkat 2 sampai maksimum

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
72/100
Program piramida huruf
Mencetak karakter menggunakan Loop

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
73/100
Program Nilai Mahasiswa
Masukkan beberapa nilai matakuliah (lebih dari satu matakuliah)
dengan loop
Nilai rata-rata adalah kriteria kelulusan
Rumus nilai rata-rata : jumlah angka/jumlah matakuliah
mininmal kelulusan adalah rata-rata 2,5

Angka
4
3
2
1
0

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
74/100
Array

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
75/100
Pengertian
Array merupakan kumpulan dari nilai-nilai data yang bertipe
sama dalam urutan tertentu
Letak atau posisi dari elemen array ditunjukkan oleh suatu
index
Dilihat dari dimensinya array dapat dibagi menjadi Array
dimensi satu, array dimensi dua dan array multi-dimensi

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
76/100
Array Satu Dimensi
Setiap elemen array dapat diakses melalui indeks.
Indeks array secara default dimulai dari 0.
Deklarasi Array
tipe nama_var[ukuran];

Dimana :
tipe = menyatakan tipe data elemen array (ex. char, int)
ukuran = menyatakan jumlah maksimal elemen array

Contoh :
int nilai [5]; nilai[0] nilai[1] nilai[2] nilai[3] nilai[4]

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
77/100
Inisialisasi Array Satu Dimensi
Inisialisasi array yaitu
nama_var[indeks] = nilai;

Contoh :
nilai[0] = 4;
nilai[1] = 6;

Inisialisasi langsung
int nilai[5] = {4,6,3,7,8};

nilai[0] nilai[1] nilai[2] nilai[3] nilai[4]

4 6 3 7 8

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
78/100
Pengaksesan Array Satu
Dimensi
Pengaksesan elemen dalam array yaitu dengan indeks array
nama_var[indeks];

Contoh :
cout >> nilai[0];
cout >> nilai[1];

nilai[0] nilai[1] nilai[2] nilai[3] nilai[4]


4
6 4 6 3 7 8

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
79/100
Contoh Array
#include<iostream.h>
#include<conio.h>
void main()
{
int i, nilai[5];
//Pengisian elemen array
nilai[0] = 34;
nilai[1] = 56;
nilai[2] = 63;
nilai[3] = 77;
nilai[4] = 98;
//Menampilkan data ke layar
cout << nilai[0];
}

Bagaimana cara menampilakan semua nilai array ?

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
80/100
Contoh Array Lagi ....
#include<iostream.h>
#include<conio.h>
void main()
{
int i, nilai[5];
//Pengisian elemen array
cin >> nilai[0]
//Menampilkan data ke layar
for (i=0;i<5;i++){
cout << nilai[i];
}
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
81/100
Array Dua Dimensi
Setiap elemen array dapat diakses melalui indeks.
Indeks array secara default dimulai dari 0.
Deklarasi Array
tipe nama_var[baris][kolom];

Dimana :
tipe = menyatakan tipe data elemen array (ex. char, int)
baris= menyatakan jumlah maksimal baris elemen array
kolom= menyatakan jumlah maksimal kolom elemen array

Contoh : nilai[*][0] nilai[*][1] nilai[*][2] nilai[8][3] nilai[*][4]

int nilai [3][5]; nilai[0][*]

nilai[1][*]

nilai[2][*]

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
82/100
Inisialisasi Array Dua Dimensi
Inisialisasi array yaitu
nama_var[indeks_baris][indeks_kolom] = nilai;

Contoh :
nilai[0][0] = 4;
nilai[0][1] = 6;

Inisialisasi langsung
int nilai[3][5] = {{4,6,3,7,8},{7,8,9,6,5},{2,4,7,3,5}};

nilai[*][0] nilai[*][1] nilai[*][2] nilai[8][3] nilai[*][4]

nilai[0][*]
4 6 3 7 8
nilai[1][*]
7 8 9 6 5
nilai[2][*]
2 4 7 3 5

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
83/100
Pengaksesan Array Dua
Dimensi
Pengaksesan elemen dalam array yaitu dengan indeks array
nama_var[indeks_baris][indeks_kolom];

Contoh :
cout >> nilai[0][0];
cout >> nilai[0][1];

nilai[*][0] nilai[*][1] nilai[*][2] nilai[8][3] nilai[*][4]

4 nilai[0][*]
4 6 3 7 8
6
nilai[1][*]
7 8 9 6 5
nilai[2][*]
2 4 7 3 5

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
84/100
Pengaksesan Array Multi
Dimensi
Bentuk umum deklarasi array dimensi banyak :
tipe_data nama_var[ukuran_1][ukuran_2]..[ukuran_n];

Contoh deklarasi:
int nilai[4][2][3];
nilai[0][*][0] nilai[0] [*][1] nilai[0] [*][2] nilai[1][*][0] nilai[1] [*][1] nilai[1] [*][2]

nilai[0] [0][*] nilai[1] [0][*]

nilai[0] [1][*] nilai[1] [1][*]

nilai[2][*][0] nilai[2] [*][1] nilai[2] [*][2] nilai[3][*][0] nilai[3] [*][1] nilai[3] [*][2]

nilai[2] [0][*] nilai[3] [0][*]

nilai[2] [1][*] nilai[3] [1][*]

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
85/100
Deklarasi Array Tak Berukuran
Array dapat dideklarasikan tanpa memberi ukuran (jumlah data dalam
array). Dengan syarat:
Harus langsung diinisialisasi.
Hanya elemen pertama yang boleh tidak berukuran.

Contoh:
int nilai[] = {32, 45, 67,21};
int nilai[][2]={{9,7},{4,2},{8,3}};
int nilai[][] = {32, 45, 67,21};
int nilai[];

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
86/100
LATIHAN
MEMBUAT PROGRAM DENGAN MEMANFAATKAN
ARRAY

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
87/100
Program Menghitung Matriks
Buat Program yang menginput data 2 matriks lalu matriks tersebut
dijumlahkan
Menggunakan array dua dimensi

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
88/100
Fungsi (function)

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
89 /100
Fungsi (function)
Adalah suatu bagian dari program yang dirancang untuk
melaksanakan tugas tertentu
Fungsi dapat dipanggil/ digunakan berkali-kali
Elemen utama dari program bahasa C berupa fungsi-fungsi
dari kumpulan fungsi pustaka (C standard library function)
dan fungsi yang dibuat sendiri oleh pemrogram
Contoh fungsi standart:
printf
scanf

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
90/100
Tujuan Pembuatan Fungsi
Program menjadi terstruktur sehingga lebih mudah
dipahami.
Mengurangi pengulangan (duplikasi) penulisan kode
program :
langkah-langkah program yang sama dan dipakai berulang-ulang
dapat dituliskan sekali saja sebagai fungsi.

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
91/100
Definisi Fungsi
Sebelum digunakan fungsi harus di definisikan diawal program
Deklarasi Fungsi :
tipe_keluaran nama_fungsi (deklarasi_argumen)
{
tubuh fungsi
}

Parameter Tubuh Fungsi Nilai Hasil

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
92/100
Penjelasan Definisi Fungsi
Tipe-keluaran dapat berupa salah satu tipe data C, misalnya
char atau int
Tubuh fungsi berisi statemen-statemen yang akan
melakukan tugas yang akan diberikan kepada fungsi yang
bersangkutan
Nama_fungsi digunakan untuk memanggil fungsi
Argument berisi variabel parameter-parameter fungsi

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
93/100
Contoh Fungsi
// function example
#include <iostream> Deklarasi Fungsi
using namespace std;
int subtraction (int a, int b);
int main ()
{
int x=5, y=3, z; Pemanggilan Fungsi
z = subtraction (7,2);
cout << "The first result is " << z << '\n';
cout << "The second result is " << subtraction (7,2) << '\n';
cout << "The third result is " << subtraction (x,y) << '\n';
z= 4 + subtraction (x,y);
cout << "The fourth result is " << z << '\n';
}
int subtraction (int a, int b)
{
int r; Definisi Fungsi
r=a-b;
return r;
}
Pengembalian Nilai Fungsi

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
94/100
Fungsi Tanpa Tipe (void)
Fungsi bisa tanpa tipe variabel dan tidak mengembalikan
nilai
Digunakan tipe data kosong (void)
// void function example
#include <iostream>
using namespace std;

void printmessage ()
{
cout << "I'm a function!";
}

int main ()
{
printmessage ();
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
95/100
Fungsi Rekursif (Recursive
Function)
Fungsi yang didalamnya memanggil fungsi itu sendiri
Digunakan Sebagai Bentuk Lain Pengulangan
// factorial calculator
#include <iostream>
using namespace std;

long factorial (long a)


{
if (a > 1)
return (a * factorial (a-1));
else
return 1;
}

int main ()
{
long number = 9;
cout << number << "! = " << factorial (number);
return 0;
}

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
96/100
LATIHAN
MEMBUAT PROGRAM DENGAN MEMANFAATKAN
FUNGSI

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
97/100
Program Menampilkan
Bilangan prima
Buat program Menampilkan Bilangan prima dengan memakai fungsi.
Bilangan minimal dan maksimal yang akan ditampilkan diinput dari
keyboard.
Program menampilkan bilangan prima dalam jarak minimal dan
maksimal tersebut.
Hint :
Menggunakan fungsi rekursif
Ingat operator aritmatika

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
98/100
Program Kalkulator Sederhana
Buat program kalkulator sederhana dengan memakai fungsi.
Bilangan diinput dari keyboard.
Operasi yang tersedia hanya
Penjumlahan
Pengurangan
Pembagian
Perkalian

Hampir sama dengan latihan sebelumnya, namun menggunakan fungsi


untuk menyingkat pemanggilaan operasi aritmatika

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
99/100
Terimakasih Atas Waktu dan Perhatian
Selama Tutorial ini
Tetap Semangat dan selalu mencari ilmu yang ingin anda kuasai

DASAR-DASAR PEMROGRAMAN C | HOBI ELEKTRONIKA - EINSTEN.COM


PREPARED BY: HARYATNA
100/100

Anda mungkin juga menyukai