D4 Teknik Komputer
Politeknik Elektronika Negeri Surabaya
Capaian Pembelajaran
Pokok Bahasan
Referensi
Pendahuluan
Bentuk-Bentuk Flowchart
Pengantar Pemrograman
Langkah-langkah Pemrograman
Konversi Bilangan
Mahasiswa mampu memahami dan menjelaskan
mengenai pengertian, tujuan, kegunaan atau
manfaat dari pemrograman dasar,
Mahasiswa memiliki kemampuan dan konsep
pemrograman termasuk pemrograman prosedural
(metode , parameter, nilai balik) , struktur kontrol
dasar (urutan, if/ else, perulangan for, perulangan
while) , pemrosesan file , array, string , fungi string
dan pointer serta variabvel struktur.
Mahasiswa terampil mengerjakan permasalahan
secara mandiri atau berkelompok untuk
mengerjakan tugas/proyek pemrograman yang
diberikan.
1. Konsep dasar dari struktur komputer dan
menjalankan program.
2. Variabel-variabel, tipe-tipe variabel.
3. ekspresi/ ungkapan, pemberian nilai
(assignment), fungsi cadangan.
4. Relasi Logika dan Kondisi.
5. Input/output: console, file, graphical.
6. Pernyataan Kondisi/ Penentu Keputusan
(Conditional execution) (if/else).
7. Iterasi/ perulangan/ looping (for, while, do
while).
8. Diagram Alir/ Flowchart.
9. Mengembangkan Fungi Sendiri.
10. Variabel Larik/ Array satu, dua dan tiga
dimensi.
11. Variable String dan Fungsi String.
12. Variabel Pointer dan penggunaannya
dalam fungsi.
13. Variable Struktur.
14. Presentasi judul tugas kelompok
15. Demo 1: tugas kelompok
16. Demo 2: tugas kelompok
Pemrograman Microsoft Visual C++, Wahana Komputer, Andi
Publisher, November - 2009
Algoritma Pemrograman C++ Dalam Ilustrasi, YM Kusuma
Ardhana, S.T. & Gregoris Airlangga, Jasakom, Desember -
2011
Programming With Visual C++ 2010, Ivor Horton, Wiley
Publishing, Inc., All Rights Reserved. , April, 2010
Panduan Pemrograman Visual C++, Abdul Kadir, Andi Offset,
2008
Dasar pemrograman C++ disertai dengan pengenalan
pemrograman berorientasi objek, Hanif Al Fatta, S.Kom.,
September - 2006
Pemrograman dasar merupakan bahasa yang
sangat umum digunakan untuk membuat
suatu program
Namun bagaimana cara membuat program
dengan suatu bahasa pemrograman ?
Disini akan dibahas secara mendasar
mengenai pemrograman dasar yaitu
Algoritma
Algoritma ialah logika, metode dan tahapan “urutan” sistematis yang
digunakan untuk memecahkan suatu permasalahan.
Algoritma dapat juga diartikan sebagai urutan langkah secara
sistematis dan logis.
Dalam perkembangannya, algoritma banyak dipakai di bidang
komputer.
Lepaskan roda
Turunkan dongkrak
STOP
Setelah flowchart digambarkan harus diperiksa apakah masih
dapat disempurnakan
Setiap kotak flowchart merupakan satu langkah elementer
Seperti pada “Pasang ban cadangan”, perlu diperiksa dulu
apakah ban cadangan bocor/ tidak? Bila bocor maka tambal
dulu, lihat gambar dibawah
Urutan yang benar merupakan pilihan, sehingga
permasalahan dapat diselesaikan dengan cepat, misalkan
apakah melepaskan baut-baut dulu atau memasang dan
menaikkan dongkrak?
Ban cadangan Yes
bocor?
No
Process Data
Decision
1 2
START START
READ N READ N
PRINT I Y
I<10
N
STOP
STOP
Algoritma
Start
◦ Baca harga a, b, c
◦ Hitung siku dengan Baca a, b, c
formula phytagoras
◦ Apakah siku lebih kecil S = |c2-(a2+b2)|
dari 0.1
Bila “ya” cetak “siku- Y
siku” S<=0.1
Stop
Permasalahan
Penyelesaian Algoritma
Pemrogram
Pengujian
Dokumentasi
Perawatan
Menentukan apa yang akan dikerjakan/
diselesaikan, yaitu menentukan input dan
output dari program yang akan dibuat.
Hukum Murphy dari Henry Ledgrad:
◦ Semakin cepat program ditulis maka akan semakin
lama menyelesaikannya.
Pemilihan algoritma yang tepat
Misal
◦ Memilih metode penyelesaian
◦ Pemilihah pengerjaan berulang
◦ Penggunaan rekursif
Pemilihan program yang digunakan, sesuai
dengan keperluan.
Misal
◦ Untuk memproses dengan kecepatan tinggi
digunakan Bahasa C++,
◦ Untuk memproses basis data digunakan Bahasa
Database seperti Cobol, dBase, FoxPro, Visual Basic,
◦ Untuk membuat animasi digunakan bahasa Flash.
Pengujian dilakukan dengan melihat hasilnya,
apakah sudah sesuai dengan yang diinginkan,
baik input dan outputnya.
Dituliskan pada script program berupa
catatan pendek,
Dibuat dalam bentuk teks tersendiri yang
terpisah dari program,
Mencetak diatas kertas untuk disimpan
sebagai dokumen tertulis.
Setelah program digunakan, bisanya terdapat
bug yang tidak disangka, untuk itu perlu
adanya penambahan atau perbaikan.
Revisi dapat dilakukan, misalkan
penambahan fungsi baru atau karena
perubahan kebijaksanaan.
Untuk memulai pembuatan suatu program maka harus
dikenal dulu tanda-tanda bahasa komputer, yaitu
dinyatakan dalam bentuk ABJAD dan ANGKA
(ALFANUMERIS) serta tanda-tanda khusus.
Tanda-tanda tersebut digunakan sebagai tempat
penyimpan/ wadah (variabel), angka-angka (konstanta),
operator-operator (tambah, kurang, kali, bagi, modulus/
sisa) dan lain sebagainya.
Tanda ABJAD ada 26 huruf yaitu: A-Z
Tanda NUMERIK ada 10 angka yaitu: 0-9
Tanda-tanda khusus ada 32 yaitu: ~ ` ! @ # $ % ^ & * ( ) _
-+=\|{}[]:;“‘<>,.?/
! Exclamation mark ; Semicolon
“ Quotation mark < Less then
# Number sign = Equal
$ Dollar sign > Greater than
% Percent sign ? Question mark
& Ampersand @ Commercial at
‘ Apostrophe [ Opening bracket
( Opening parenthesis \ Back slash
) Closing parenthesis ] Closing bracket
* Asterisk ^ Circumflex
+ Plus _ Underscore
, Comma ` Grave accent
- Hypen (minus) { Left brace
. Decimal point } Right brace
/ Slash ~ Tidle
: Colon | Vertical Line (Or)
Adalah suatu angka/ bilangan yang nilainya tidak berubah
selama pelaksanaan jalannya program,
Konstanta dinyatakan dalam bentuk numerik dan tipenya
dinyatakan sebagai bulat (integer) atau pecahan (real/float),
Konstanta bulat adalah suatu konstanta yang tidak mempunyai
tanda titik desimal, contohnya 5, 28, 46, 255, 8165 dan
sebagainya,
Konstanta pecahan adalah suatu konstanta yang mempunyai titik
desimal, contohnya seperti 8255.373, 8080.741, 10.252, dan
sebagainya
Untuk menghindari penggunaan jumlah angka yang terlalu
banyak, maka digunakan notasi e/ E, yang diikuti satu atau dua
digit konstanta integer bertanda atau tidak bertanda, contohnya
259.12E06, 347.1E-05, dan sebagainya.
Adalah simbol yang menyatakan suatu besaran tertentu. Nilai
suatu variabel dapat berubah-ubah selama pelaksanaan
program,
Panjang dari variabel ditentukan oleh paket program dari bahasa
yang bersangkutan, misalnya FORTRAN membatasi panjang
varibelnya hanya 6 karakter saja, PASCAL dan C panjang
variabelnya hingga 32 karakter,
Variabel tidak boleh menggunakan tanda spasi, dan tanda-tanda
khusus seperti { } ( ) ^ * / + - , < > ? ; ‘ “ : [ ] = \ | ^ @
(tergantung aplikasi program)
Penggunaan huruf besar dan kecil adalah sama, tetapi pada
Bahasa C berbeda, A dengan a adalah dua nama variabel yang
berbeda (case sensitive)
Variabel harus dimulai dari Huruf kemudian dapat diikuti dengan
huruf atau angka dan tanda khusus _ (underscore).
Oleh karena komputer adalah berbasis listrik, maka
komputer hanya akan mengenal kata “on/off” (nyala-
hidup, sambil tangan digerakkan buka tutup ), sehingga
komputer hanya mengenal angka 0 dan 1 saja (bilangan
dasar 2),
Sedangkan manusia sudah terbiasa mengenal sampai 10
digit angka (bilangan dasar 10), agar komputer dapat
berkomunikasi dengan manusia maka diperlukan konversi
bilangan,
Ada 3 Konversi bilangan yang sering digunakan, yaitu
Desimal↔Biner, Desimal↔Hexadesimal, dan
Biner↔Hexadesimal
Desimal(10) → Biner(2)
◦ Konversi dilakukan dengan membagi bilangan
desimal dengan dasar bilangan yang menjadi tujuan
konversi yaitu 2, secara terus menerus sampai
bilangan desimal menjadi nol, contoh: 25/2 = 12
sisa 1, 12/2 = 6 sisa 0, 6/2 = 3 sisa 0, 3/2 = 1 sisa
1, 1/2 = 0 sisa 1, kemudian sisa dibaca dari
belakang sehingga terbaca 11001
Biner(2) → Desimal(10)
◦ Konversi dilakukan dengan menjumlahkan (sigma)
perkalian bilangan biner satu persatu dari kanan
dengan dasar bilangan (dengan 2) yang
dipangkatkan dengan angka mulai dari nol
kemudian dinaikkan satu sampai digit bilangan
terakhir, contoh 11001 = 1x24 + 1x23 + 0x22 +
0x21 + 1x20 = 25
Desimal(10) → Hexadesimal(16)
◦ Bilangan Hexadesimal adalah terdiri dari dua dasar
bilangan yaitu Hexa dan Desimal sehingga
mempunyai 16 digit angka, yaitu 0-9 dan A-F
◦ Seperti hanyak konversi dari desimal ke biner, maka
dilakukan dengan membagi bilangan desimal dengan
dasar bilangan tujuannya yaitu 16, contoh 168/16 =
10 sisa 8, 10/16 = 0 sisa 10, sehingga dibaca dari
belakang menjadi 10 8 yaitu A8
Hexadesimal(16) → Desimal(10)
◦ Untuk mengkonversi balik maka dilakukan dengan
mengalikan dengan 16 yang dipangkatkan dengan
n, mulai dari 0 dan seterusnya.
◦ Misal A3E516
=10*163 + 3*162 + 14*161 + 5*160
=40960 + 768 + 224 + 5
= 41957
Biner (2) → Hexadesimal(16)
◦ Konversi dilakukan dengan mudah dengan
mengelompokan 4 digit Biner sebagai 1 digit Hexa,
◦ Contoh:
◦ 1110 0000 0011 0000 2 = E03016
Hexadesimal(16) → Biner (2)
◦ Konversi dilakukan sama, yaitu empat digit Biner
menjadi satu digit Hexa.
◦ Contoh:
◦ ABAB16 = 1010 1011 1010 10112
128 64 32 16 8 4 2 1
0 1 0 1 0 1 0 1
87
Telah dipelajari tentang
◦ Pengertian Algoritma
◦ Bentuk-Bentuk Flowchart
◦ Pengantar Pemrograman
Variabel, konstanta dan tanda-2 khusus
◦ Langkah-2 Pemrograman
◦ Konversi Bilangan
Bilangan Bulat
Bilangan Pecahan
Karakter dan String
Boolean
Array
Pointer
- int → integer (-32768 s/d 32767)
- short → sama dengan int
- unsigned int → (0 s/d 65535)
- unsigned short → (0 s/d 65535)
- long → (-2.147.483.648 s/d +2.147.483.647)
- char → (-128 s/d +128)
- unsigned char → (0 s/d 255)
int a; int a, b;
int b; a = 6789;
a = 1234; b = -9876;
b = -4321
short c, d;
char e, f; c = 32767;
e = 127; d = -32768;
f = -128;
- float → (1.5E-45 s/d 3.4E+38)
- double → (5.0E-324 s/d 1.7E+308)
float e, f; float x = 2.9e+38;
e = f = 1.7E+5;
Float y = 1.9e+308
double b,d;
b = d = 2.7E-38;
- char → (’a’ … ’z’, ’A’ … ’Z’, ’0’ … ’9’)
- char [n] → (”PENS ITS SURABAYA”)
- char [m][n] → {(”PENS”), (”ITS”), (”SBY”)}
char ch;
ch =’a’;
char cj = ’j’;
char cs[9];
strcpy(cs,”PENS ITS”);
f=(5>8); false
int *
long int *
float *
double *
char *
int *p, *q;
*p = 1234;
*q = -4321;
Assignment/ sama dengan
Aritmatika
Boolean
Comparation/ Perbandingan
Bit
a = 3;
b = 2;
c = 3;
d = 0;
x = y = z = 0;
m = -n; → invers, membalik dari + ke -
k = +j; → tidak digunakan karena artinya sama
yaitu k = j;
a = a + 1; → a++;
b = b + 5; → b+=5;
y = y – 1; → y--;
y = y – 5; → y-=5;
a = a * 5;
a = a * b;
x = x / 5;
y = y / x;
a = a && 2;
b = b && 3; a = 5 && 2;
→ a = true && true
→ a = 1 (true)
&& 0 1
a = 7 && 0;
0 0 0 → a = 0 (false)
1 0 1
a = a || 2;
a = b || 3; a = 5 || 2;
→ a = true || true
→ a = 1 (true)
|| 0 1
a = 7 || 0;
0 0 1 → a = 1 (true)
1 1 1
m = 2 && 5; m → true
n = 7 && 0; n → false
p = 8 || 5; p → true
q = 9 || 1; q → true
r = (2 > 3) && (4 < 5) r → true
s = (1 < 8) && (2 > 7) s → false
t = (7 > 3) || (9 < 5) t → true
u = (5 < 4) || (2 > 7) u → false
a = (3 == 8); a → false
b = (5 == 5); b → true
c = (6 > 7); c → false
d = (2 < 9); d → true
e = (8 != 3); e → true
f = (9 != 9); f → false
g = (5 <= 9); g → true
h = (6 >= 3); h → true
a = a & 2; → a &= 2;
b = b & 3; → b &= 3;
a = 5 & 2;
& 0 1 → a = 101 & 010
→a=0
0 0 0
a = 7 & 3;
1 0 1 →a=3
a = a | 2; → a |= 2;
b = b | 3; → b |= 3;
a = 5 | 2;
| 0 1 → a = 101 | 010
→a=7
0 0 1
a = 7 || 0;
1 1 1 →a=7
a = a ^ 7; → a ^ = 7;
a = b ^ 8; → b ^ = 8;
A = 7 ^ 3;
^ 0 1 → a = 111 ^ 011
→a=4
0 0 1
A = 7 | 5;
1 1 0 →A=2
a = 11001100
a = a >> 1; → a >> = 1;
◦ a → 01100110
b = 11001100
b = b << 1; → b << =1;
◦ b = 10011000