Anda di halaman 1dari 58

LAPORAN PRAKTIKUM

ALGORITMA DAN PEMROGRAMAN-2

Dosen Pengampu Mata Kuliah


Yusuf Ramadhan Nasution, M.Kom

Nama : MHD Akbar Ramadhan Tanjung


0701163110

PROGRAM STUDI ILMU KOMPUTER


FAKULTAS SAINS DAN TEKNOLOGI
UIN SUMATERA UTARA MEDAN
2019

1
KATA PENGANTAR

Syukur Alhamdulillah saya ucapkan kehadirat Allah SWT yang telah


melimpahkan rahmat dan hidayah-Nya, sehingga saya dapat menyelesaikan
Laporan Praktikum Algoritma dan Pemrograman 2.
Shalawat dan salam kepada junjungan Nabi besar Muhammad SAW beserta
keluarga dan sahabat-sahabatnya yang telah memperjuangkan Agama Islam.
Kemudian dari pada itu, saya sadar bahwa dalam penyusunan laporan ini
banyak yang membantu terhadap usaha saya, mengingat hal itu dengan segala
hormat saya sampaikan rasa terima kasih yang sedalam-dalamnya kepada :
1. Orang tua saya yang telah memberi do’a dan dukungan baik moril maupun
materil yang tak terhingga kepada saya sehingga laporan ini dapat
diselesaikan dengan sebaik-baiknya.
2. Dosen pengampu mata kuliah Algoritma dan Pemrograman 2 yang telah
memberikan bimbingan dalam penyusunan laporan ini.
3. Teman – teman dan seluruh pihak yang ikut berpartisipasi dalam
penyelesaian laporan ini.
Atas bimbingan, petunjuk dan dorongan tersebut saya hanya dapat berdo' a
dan memohon kepada Allah SWT semoga amal dan jerih payah mereka menjadi
amal soleh di mata Allah SWT. Amin.
Dan dalam penyusunan laporan ini saya sadar bahwa masih banyak
kekurangan dan kekeliruan, maka dari itu saya mengharapkan kritikan positif,
sehingga bisa diperbaiki seperlunya.
Akhirnya saya tetap berharap semoga laporan ini menjadi butir-butir amalan
saya dan bermanfaat khususnya bagi saya dan umumnya bagi seluruh pembaca.
Amin Yaa Robbal 'Alamin.

Mhd Akbar Ramadhan T

2
DAFTAR ISI

KATA PENGANTAR .......................................................................................... 2


DAFTAR ISI ......................................................................................................... 3
DAFTAR GAMBAR ............................................................................................ 6
DAFTAR TABEL ................................................................................................ 8

MODUL 1 MENGENAL PEMROGRAMAN BAHASA C ...............................9


Percobaan 1. Bentuk Struktur Dasar Bahasa C ................................ 9
LEMBAR PENGESAHAN ................................................................................ 12

MODUL 2 TIPE DATA BAHASA C .................................................................13


Percobaan 1. Program Tipe Data ...................................................... 13
LEMBAR PENGESAHAN ................................................................................ 15

MODUL 3 VARIABEL PADA BAHASA C ......................................................16


Percobaan 1. Program Menampilkan Variabel ................................ 17
LEMBAR PENGESAHAN ................................................................................ 18

MODUL 4 KONSTANTA DAN KOMENTAR ................................................19


Percobaan 1. Program Konstanta Dan Komentar ............................ 22
LEMBAR PENGESAHAN ................................................................................ 22

MODUL 5 OPERATOR ......................................................................................23


Percobaan 1. Menampilkan Citra .................................................... 24
LEMBAR PENGESAHAN ................................................................................ 26

3
MODUL 6 INPUT DAN OUTPUT .....................................................................27
Percobaan 1. Penggunaan Fungsi Scanf .......................................... 28
Percobaan 2. Penggunaan Fungsi gets ............................................. 29
LEMBAR PENGESAHAN ................................................................................ 30

MODUL 7 STRUKTUR KONDISI IF ...............................................................31


Percobaan 1. Perulangan if .............................................................. 31
LEMBAR PENGESAHAN .................................................................................33

MODUL 8 STRUKTUR KONDISI IF…ELSE.................................................34


Percobaan 1. Program Kondisi if…else ........................................... 34
LEMBAR PENGESAHAN ................................................................................ 36

MODUL 9 STRUKTUR KONDISI ELSE…IF.................................................37


Percobaan 1. Kondisi else…if .......................................................... 37
LEMBAR PENGESAHAN ................................................................................ 39

MODUL 10 STRUKTUR KONDISI SWITCH..CASE..DEFAULT ...............40


Percobaan 1. Switch…Case…Default ............................................. 40
LEMBAR PENGESAHAN ................................................................................ 42

MODUL 11 STRUKTUR PERULANGAN FOR .............................................43


Percobaan 1. Perulangan For ........................................................... 43
LEMBAR PENGESAHAN ................................................................................ 44

MODUL 12 STRUKTUR PERULANGAN WHILE ........................................45


Percobaan 1. Perulangan While ....................................................... 45
LEMBAR PENGESAHAN ................................................................................ 47

4
MODUL 13 STRUKTUR PERULANGAN DO…WHILE ..............................48
Percobaan 1. Perulangan Do…While .............................................. 48
LEMBAR PENGESAHAN ................................................................................ 50

MODUL 14 PERNYATAAN GOTO DAN LABEL .........................................51


Percobaan 1. Program Goto Dan Label ........................................... 51
Percobaan 1. Program Kasir ............................................................ 53
LEMBAR PENGESAHAN ................................................................................ 56

DAFTAR PUSTAKA .......................................................................................... 57

5
DAFTAR GAMBAR

Gambar 1.1. Bentuk Struktur Dasar C ................................................................ 10

Gambar 2.1. Program Tipe Data 1 ........................................................................14


Gambar 2.2. Program Tipe Data 2 ........................................................................14

Gambar 3.1. Program Menampilkan Variabel......................................................17

Gambar 4.1. Program Konstanta Dengan #Define ..............................................21


Gambar 4.2. Program Konstanta Dengan Const & Komentar ............................21

Gambar 5.1. Program Operator Aritmatika ..........................................................24


Gambar 5.2. Program Operator Penugasan ..........................................................25

Gambar 6.1. Program Fungsi Scanf......................................................................28


Gambar 6.2. Program Fungsi gets ........................................................................29

Gambar 7.1. Struktur Kondisi if 1 ........................................................................32


Gambar 7.2. Program Struktur Kondisi if 2 .........................................................32

Gambar 8.1. Struktur Kondisi if…else1................................................................35


Gambar 8.2. Struktur Kondisi if…else2................................................................35

Gambar 9.1. Struktur Else…if ..............................................................................38

Gambar 10.1. Switch…Case…Default ................................................................41

6
Gambar 11.1. Program Perulangan For ................................................................43

Gambar 12.1. Program Perulangan While ............................................................46

Gambar 13.1. Program Perulangan Do…While1 .................................................49


Gambar 13.2. Program Perulangan Do…While2 .................................................49

Gambar 14.1. Program Goto Menampilkan Angka..............................................51


Gambar 14.2. Program Goto Menampilkan Nama ...............................................52
Gambar 14.3. Program Kasir ................................................................................55

7
DAFTAR TABEL

Tabel 1.1. Kelebihan Dan Kekurangan Bahasa C ................................................. 9


Tabel 1.2. Kata Kunci Pada Bahasa C ................................................................. 11

Tabel 2.1. Jenis Tipe Data ................................................................................... 13

Tabel 4.1. Karakter Escape .................................................................................. 20

Tabel 5.1. Operator Aritmatika ............................................................................ 23


Tabel 5.2. Operator Bitwise.................................................................................. 23

8
MODUL 1
MENGENAL PEMROGRAMAN BAHASA C

Bahasa C adalah bahasa pemrograman yang dapat dikatakan berada di


antara bahasa beraras rendah dan beraras tinggi. Bahasa beraras rendah artinya
bahasa yang berorientasi pada mesin dan beraras tinggi berorientasi pada manusia.
Pencipta bahasa C adalah Brian W. Kernighan dan Denis M. Ritchi, sekitar
tahun 1972 di Bell Laboratories. Penulisan program dalam bahasa C dilakukan
dengan membagi dalam blok-blok, sehingga bahasa C disebut dengan bahasa
terstruktur. Bahasa C dapat digunakan di berbagai mesin dengan mudah, mulai dari
PC sampai dengan mainframe, dengan berbagai sistem operasi misalnya DOS,
UNIX, VMS dan lain-lain.

Tabel 1.1. Kelebihan dan Kekurangan Bahasa C


Kelebihan Kekurangan
Bahasa C tersedia hampir di semua
jenis computer. Banyaknya operator serta fleksibilitas
Kode bahasa C sifatnya adalah portable penulisan program kadang-kadang
dan fleksibel untuk semua jenis membingungkan pemakai.
computer.
Bahasa C hanya menyediakan sedikit
kata-kata kunci. hanya terdapat 32 kata
kunci.
Proses executable program bahasa C
lebih cepat Bagi pemula pada umumnya akan
Dukungan pustaka yang banyak. kesulitan menggunakan pointer
C adalah bahasa yang terstruktur
Bahasa C termasuk bahasa tingkat
menengah

Ada beberapa editor yang berfungsi dalam mengelola/mengcompile Bahasa


C seperti, Borland C, Turbo C, Dev C, C Free 5, dan masih banyak lagi.
Percobaan 1: Bentuk Struktur Dasar Bahasa C
Program Bahasa C tidak mengenal aturan penulisan di kolom tertentu, jadi

9
bisa dimulai dari kolom manapun. Namun demikian, untuk mempermudah
pembacaan program dan untuk keperluan dokumentasi, sebaiknya penulisan bahasa
C diatur sedemikian rupa sehingga mudah dan enak dibaca.
Source Code
#include <at89c51.h>
main ()
{
………
………
}

Output

Gambar 1.1. Bentuk Struktur Dasar C

Program dalam bahasa C selalu berbentuk fungsi seperti ditunjukkan dalam


main (). Program yang dijalankan berada di dalam tubuh program yang dimulai
dengan tanda kurung buka { dan diakhiri dengan tanda kurung tutup }. Semua yang
tertulis di dalam tubuh program ini disebut dengan Blok.
Tanda “()” digunakan untuk mengapit argumen suatu fungsi. Argumen adalah
suatu nilai yang akan digunakan dalam fungsi tersebut. Dalam fungsi main diatas
tidak ada argumen, sehingga tak ada data dalam (). Dalam tubuh fungsi antara tanda
“{“dan tanda “}” ada sejumlah pernyataan yang merupakan perintah yang harus
dikerjakan oleh prosesor. Setiap pernyataan diakhiri dengan tanda titik koma “;”
Baris pertama “#include <…> “bukanlah pernyataan, sehingga tak diakhiri
dengan tanda titik koma (;). Baris tersebut meminta kompiler untuk menyertakan
file yang namanya ada di antara tanda “<…> “dalam proses kompilasi. File-file ini
(ber-ekstensi .h) berisi deklarasi fungsi ataupun variable. File ini disebut
HEADER. File ini digunakan semacam perpustakaan bagi pernyataan yang ada di
tubuh program.

10
Adapun penjelasan lebih lengkapnya dapat dilihat sebagai berikut:
 Header File, adalah berkas yang berisi prototype fungsi. Definisi konstanta.
dan definisi variable. Fungsi adalah kumpulan code C yang diberi nama dan
ketika nama tersebut dipanggil maka kumpulan kode tersebut dijalankan.
Contoh: stdio.h, math.h, conio.h.
 Preprosesor Directive (#include), Preprosesor directive adalah bagian yang
berisi pengikutsertaan file atau berkas-berkas fungsi maupun pendefinisian
konstanta. Contoh:
#include <stdio.h>
#include phi 3.14
 Void, artinya fungsi yang mengikutinya tidak memiliki nilai kembalian
(return).
 Main ( ), Fungsi main ( ) adalah fungsi yang pertama kali dijalankan ketika
program dieksekusi. Tanpa fungsi main suatu program tidak dapat dieksekusi
namun dapat dikompilasi.
 Statement, Statement adalah instruksi atau perintah kepada suatu program
ketika program itu dieksekusi untuk menjalankan suatu aksi. Setiap statement
diakhiri dengan titik-koma (;).
Kata kunci-kata kunci yang terdapat di C, sebagai berikut:

Tabel 1.2. Kata Kunci Pada Bahasa C


Auto Break Case Char Const Static Unsigned
Do Double Else Enum Extern Struct Void
Goto If Int Long Register Switch Volatile
Default For Continue Float Return Typedef While
Continue Float Short Signed Sizeof Union While

11
LEMBAR PENGESAHAN

Judul : MENGENAL PEMROGRAMAN BAHASA C


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

12
MODUL 2
TIPE DATA BAHASA C

Tipe data merupakan bagian program yang paling penting karena tipe data
mempengaruhi setiap instruksi yang akan dilaksanakan oleh computer. Misalnya
saja 5 dibagi 2 bisa saja menghasilkan hasil yang berbeda tergantung tipe datanya.
Jika 5 dan 2 bertipe integer maka akan menghasilkan nilai 2, namun jika keduanya
bertipe float maka akan menghasilkan nilai 2.5000000. Pemilihan tipe data yang
tepat akan membuat proses operasi data menjadi lebih efisien dan efektif.

Tabel 2.1. Jenis Tipe Data


Tipe Data Ukuran Jangkauan Format Keterangan
Char 1 byte -128 s/d 127 %c Karakter
Int 2 byte -32768 s/d 32767 %i, %d Bilangan bulat
Float 4 byte -3.4E-38 s/d 3.4E+38 %f Bilangan pecahan
Double 8 byte 1.7E-308 s/d 1.7E+308 %|f Pecahan presisi
ganda
Void 0 byte - - Tidak bertipe

Percobaan 1: Program Tipe Data


Source Code
#include <stdio.h>

int main(){
int usia = 19;
float berat = 65.3;
double tinggi = 178.43;
char jenis_kelamin = 'L';

printf("Usia: %i tahun\n", usia);


printf("Tinggi: %.2f cm\n", tinggi);
printf("Berat: %.2f Kg\n", berat);
printf("Jenis kelamin: %c\n", jenis_kelamin);

return 0;
}

13
Output

Gambar 2.1 Program Tipe Data 1


Source Code
#include <stdio.h>

void main(){
int a = 5;
int b = 2;

float c = a / b;

printf("Hasil a / b = %.2f\n", c);


}

Output

Gambar 2.2. Program Tipe Data 2

14
LEMBAR PENGESAHAN

Judul : TIPE DATA BAHASA C


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

15
MODUL 3
VARIABEL PADA BAHASA C

Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili


suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta yang
nilainya selalu tetap, nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan.
Nama dari suatu variable dapat ditentukan sendiri oleh pemrogram dengan aturan
sebagai berikut :
 Terdiri dari gabungan huruf dan angka dengan karakter pertama harus
berupa huruf. Bahasa C bersifat case-sensitive artinya huruf besar dan kecil
dianggap berbeda.
 Tidak boleh mengandung spasi.
 Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah
(underscore). Yang termasuk symbol khusus yang tidak diperbolehkan
antara lain : $, ?, %, #, !, &, *, (, ), -, +, = dsb
 Panjangnya bebas, tetapi hanya 32 karakter pertama yang terpakai.

Variabel adalah identifier yang nilainya dapat berubah atau diubah selama
program berjalan (dieksekusi). Pengubahnya adalah user atau proses.
 Deklarasi variabel (tipe_data nama_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. Contoh : float a, b, c;
 Inisialisasi variabel (tipe_data nama_variabel = nilai;)
Contoh : int x=21, y= 9, z=1;

16
Percobaan1: Program Menampilkan Variabel
Source Code
#include <stdio.h>

int main(){
// membuat variabel dengan tipe data integer
int berat;
// membuat variabel dan langsung mengisinya
int tinggi = 169;

// mengisi nilai ke variabel


berat = 62;

// mencetak isi variabel ke layar


printf("Hallo, Saya Akbar. Berat badan saya adalah %ikg dan tinggi
%icm", berat, tinggi);

return 0;
}

Output

Gambar 3.1. Program Variabel Menampilkan Variabel

17
LEMBAR PENGESAHAN

Judul : VARIABEL PADA BAHASA C


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

18
MODUL 4
KONSTANTA DAN KOMENTAR

Konstanta adalah identifier yang nilainya tetap selama program


berjalan/dieksekusi. Cara untuk mengubahnya hanya melalui source codenya saja
seperti halnya variabel, konstanta juga memiliki tipe. Konstanta merupakan suatu
nilai yang tidak dapat diubah selama proses program berlangsung. Konstanta
nilainya selalu tetap. Konstanta harus didefinisikan terlebih dahulu di awal
program. Konstanta dapat bernilai integer, pecahan, karakter dan string. Contoh
konstanta : 50; 13; 3.14; 4.50005; ‘A’; ‘Bahasa C’.

Penulisan konstanta mempunyai aturan tersendiri, sesuai dengan tipe


masing-masing:

 Konstanta karakter misalnya ditulis dengan diawali dan diakhiri dengan


tanda petik tunggal, contohnya: ‘A’ dan ‘@’.
 Konstanta integer ditulis dengan tanda mengandung pemisah ribuan dan
tidak mengandung bagian pecahan, contohnya: –1 dan 32767.
 Konstanta real (float dan double) bisa mengandung pecahan (dengan tanda
berupa titik) dan nilainya bisa ditulis dalam bentuk eksponensial
(menggunakan tanda e), contohnya: 27.5f (untuk tipe float) atau 27.5 (untuk
tipe double) dan 2.1e+5 (maksudnya 2,1 x 105 ).
 Konstanta string merupakan deretan karakter yang diawali dan diakhiri
dengan tanda petik-ganda (“), contohnya: “Pemrograman Dasar C”.

Komentar program hanya diperlukan untuk memudahkan pembacaan dan


pemahaman suatu program (untuk keperluan dokumentasi program). Dengan kata
lain, komentar program hanya merupakan keterangan atau penjelasan program.
Untuk memberikan komentar atau penjelasan dalam bahasa C digunakan pembatas
/* dan */ atau menggunakan tanda // untuk komentar yang hanya terdiri dari satu
baris. Komentar program tidak akan ikut diproses dalam program (akan diabaikan).

19
Contoh pertama :
// program ini dibuat oleh ….
Dibelakang tanda // tak akan diproses dalam kompilasi. Tanda ini hanya untuk satu
baris kalimat.
Contoh kedua :
/* program untuk memutar motor DC atau motor stepper */
Bentuk ini berguna kalau pernyataannya berupa kalimat yang panjang sampai
beberapa baris.

Tabel 4.1. Karakter Escape


Karakter Keterangan
Escape

\a Bunyi bel (speaker komputer)


\b Mundur satu spasi (backspace)
\f Ganti halaman (form feed)
\n Ganti baris baru (new line)
\r Ke kolom pertama baris yang sama (carriage return)
\t Tab horizontal
\v Tab vertical
\0 Nilai kosong (NULL)
\’ Karakter petik tunggal
\” Karakter petik ganda
\\ Garis miring terbalik (backslash)
\? Karakter tanda tanya
\DDD Menyatakan sebuah karakter yang nilai ASCII nya
sama
dengan nilai octal DDD
\xHH Menyatakan sebuah karakter yang nilai ASCII nya
sama
dengan nilai heksadesimal HH

20
Percobaan1: Program Konstanta Dan Komentar
Source Code
#include <stdio.h>
#define SEPULUH 10
#define VERSI 4.5
#define JENIS_KELAMIN 'L'

void main(){
printf("isi konstanta SEPULUH adalah %i\n", SEPULUH);
printf("isi konstanta VERSI adalah %f\n", VERSI);
printf("isi konstanta JENIS_KELAMIN adalah %i\n", JENIS_KELAMIN);
}

Output

Gambar 4.1. Program Konstanta Dengan #Define

Source Code
#include <stdio.h>

void main(){
const double PI = 3.14;
const JENIS_KELAMIN = 'P';
const NIM = 11;
//Ini adalah contoh bentuk komentar
/*Dan Ini juga, tetapi harus ditutup kembali ya*/
printf("isi konstanta PI adalah %f\n", PI);
printf("isi konstanta JENIS_KELAMIN adalah %i\n", JENIS_KELAMIN);
printf("isi konstanta VERSI adalah %f\n", NIM);
}

Output

Gambar 4.2. Program Konstanta Const & Komentar

21
LEMBAR PENGESAHAN

Judul : KONSTANTA DAN KOMENTAR


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

22
MODUL 5
OPERATOR

Operator adalah simbol atau karakter yang digunakan oleh program untuk
melakukan sebuah operasi dalam sebuah proses program seperti operasi bilangan
dan operasi string. Bahasa C mengenal penggunaan beberapa operator dengan
fungsi yang berbeda-beda. Setiap operator memiliki kedudukan atau hirarki saat
penanganan program. Operator dengan hirarki lebih tinggi akan dikerjakan lebih
dahulu dibandingkan operator dengan hirarki lebih rendah.

Pada pemrograman bahasa C khususnya untuk pemrograman pada


mikrokontroler AVR, kita memerlukan operator untuk memanipulasi data yang
berupa angka saat proses pemrograman. Operator yang lazim digunakan adalah
operator aritmatika, operator kondisi/perbandingan, operator logika, operator
bitwise dan operator penugasan.

Tabel 5.1. Operator Aritmatika


Operator Nama Contoh
+ Penjumlahan Z = x+y
- Pengurangan Z = x-y
* Perkalian Z = x*y
/ Pembagian Z = x/y
% Modulus Z = x%y
++ Increment x++
-- Decrement x--

Tabel 5.2. Operator Bitwise

Operator Nama Contoh

& AND X= 5 & 1

| OR X= 5 | 1

~ NOT X= 5 ~ 1

23
^ XOR X= 5 ^ 1

<< Left Shift X= 5 << 1

>> Right Shift X= 5 >> 1

24
Percobaan1: Operator Aritmatika
Source Code
#include <stdio.h>
void main(){

int a, b;

printf("Inputkan nilai a: ");


scanf("%i", &a);

printf("Inputkan nilai b: ");


scanf("%i", &b);

printf("Hasil a + b: %i\n", a + b);


printf("Hasil a - b: %i\n", a - b);
printf("Hasil a * b: %i\n", a * b);
printf("Hasil a / b: %i\n", a / b);
printf("Hasil a % b: %i\n", a % b);
}

Output

Gambar 5.1. Program Operator Aritmatika


Percobaan2: Operator Penugasan
Source Code
#include <stdio.h>

void main(){
int a, b;

// pengisian nilai dengan operator =


a = 5;

25
b = 10;

// pengisian sekaligus penambahan


b += a; // ini sama seperti b = b + a
printf("Hasil b += a adalah %d\n", b);

// pengisian sekaligus pengurangan


b -= a; // ini sama seperti b = b - a
printf("Hasil b -= a adalah %d\n", b);

// pengisian sekaligus perkalian


b *= a; // ini sama seperti b = b * a
printf("Hasil b *= a adalah %d\n", b);

// pengisian sekaligus pembagian


b /= a; // ini sama seperti b = b / a
printf("Hasil b /= a adalah %d\n", b);

// pengisian sekaligus sisa bagi


b %= a; // ini sama seperti b = b % a
printf("Hasil b %= a adalah %d\n", b);
}

Output

Gambar 5.2. Program Operator Penugasan

26
LEMBAR PENGESAHAN

Judul : OPERATOR
Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

27
MODUL 6
INPUT DAN OUTPUT

Pada bahasa pemrograman C, terdapat beberapa fungsi dasar untuk


menampilkan output dan mengambil input. Adapun fungsi tersebut dapat dilihat
sebagai berikut:

 Fungsi Output
Fungsi Printf( ), merupakan fungsi untuk menampilkan output ke
layar komputer. Fungsi ini terdapat pada library stdio.h. Oleh sebab itu,
ketika kita diharuskan untuk menuliskan #include <stdio.h> di bagian atas
program agar bisa menggunakan fungsi ini. Pada fungsi printf() kita
menggunakan simbol %s, %d, dan \n untuk format teks.

o %s adalah simbol untuk menampilkan nilai string;


o %d adalah simbol untuk menampilkan nilai angka atau bilangan
desimal;
o \n adalah simbol untuk membuat baris baru.
Fungsi puts(), adalah fungsi untuk menampilkan output. Fungsi ini
juga terdapat pada library stdio.h. Perbedaanya dengan printf(), fungsi
puts() tidak memerlukan format. Fungsi puts() akan selalu membuat baris
baru. Jadi tidak perlu menggunakan simbol \n seperti pada printf().

 Fungsi Input
Fungsi Scanf( ), adalah fungsi untuk mengambil input dari keyboard.
Fungsi ini memiliki format seperti fungsi printf(). Dalam menggunakan
scanf(), kita dianjurkan menggunakan simbol & sebelum nama variabel.
Simbol & berfungsi untuk mengambil alamat memori dari sebuah
variabel.Fungsi scanf() membutuhkan tempat untuk menyimpan nilai yang
akan diinputkan.Karena itu kita memberikan simbol & di depan nama
variabel untuk menentukan alamat memori yang akan digunakan oleh
scanf().

28
Fungsi gets() adalah fungsi untuk mengambil input dalam satu baris.
Fugnsi gets() tidak memerlukan format seperti scanf().Untuk fungsi gets()
tidak disarankan karena dapat menimbulkan masalah buffer overflow.
Sebaiknya gunakan fgets() saja.

Fungsi fgets() lebih aman dibandingkan gets(), karena kita bisa


menentukan ukuran buffer dan sumber inputan. Ukuran buffer adalah
batas ukuran panjang string yang diinputkan. Lalu stdin adalah sumber
inputan dari keyboard. Kita juga bisa mengambil input dari file dengan
fgets() dengan memasukan pointer FILE pada stdin.

Percobaan1: Penggunaan Fungsi Scanf( )


Source Code
#include <stdio.h>
int main () {

// membuat variabel
char name[20], web_address[30];
printf("Nama: ");
scanf("%s", &name);
printf("Alamat web: ");
scanf("%s", &web_address);
printf("\n------------------------------\n");
printf("Nama yang diinputkan: %s\n", name);
printf("Alamat Web yang diinputkan: %s\n", web_address);

return 0;
}

Output

Gambar 6.1. Program Fungsi Scanf()

29
Percobaan2: Penggunaan Fungsi gets( )
Source Code
#include <stdio.h>

int main () {
char name[50], web_address[50];

printf("Nama: ");
gets(name);

printf("Alamat web: ");


gets(web_address);

printf("You entered: %s\n", name);


printf("Web address: %s\n", web_address);

return(0);
}

Output

Gambar 6.2. Program dengan fungsi gets()

30
LEMBAR PENGESAHAN

Judul : INPUT DAN OUTPUT


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

31
MODUL 7
STRUKTUR KONDISI IF

Struktur if dibentuk dari pernyataan if dan sering digunakan untuk


menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai
benar, maka pernyataan yang ada di dalam blok if akan diproses dan dikerjakan.

Bentuk paling sederhana pilihan tunggal adalah jika hanya ada satu pilihan
kondisi yang disediakan.

Bentuk umum:
if (kondisi)
{
true statement;
}
Percobaan1: Perulangan If
Source Code
#include <stdio.h>

void main(){
printf("== Program Pembayaran ==\n");
int total_belanja = 0;

printf("Inputkan total belanja: ");


scanf("%i", &total_belanja);

// menggunakan blok percabangan if


if( total_belanja > 100000 ){
printf("Selamat, Anda mendapatkan hadiah!\n");
}

printf("Terimakasih sudah berbelanja di toko kami\n\n");


}

32
Output

Gambar 7.1. Strukur Kondisi if 1


Source Code
#include <stdio.h>
int main(void)
{
int a, b;
printf("Input variabel a: ");
scanf("%d",&a);

printf("Input variabel b: ");


scanf("%d",&b);

printf("\n");

if (a > b) {
printf("Variabel a lebih besar dari variabel b \n");
}
if (a < b) {
printf("Variabel a lebih kecil dari variabel b \n");
}
if (a == b) {
printf("Variabel a sama besar dengan variabel b \n");
}
return 0;
}

Output

Gambar 7.2. Program Struktur kondisi if 2.

33
LEMBAR PENGESAHAN

Judul : STRUKTUR KONDISI IF


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

34
MODUL 8
STRUKTUR KONDISI IF…ELSE

Dalam struktur kondisi if.....else minimal terdapat dua pernyataan. Jika


kondisi yang diperiksa bernilai benar atau terpenuhi maka pernyataan pertama yang
dilaksanakan dan jika kondisi yang diperiksa bernilai salah maka pernyataan yang
kedua yang dilaksanakan. Strruktur ini digunakan untuk menentukan tindakan yang
akan digunakan bila kondisi bernilai benar dan salah. Bentuk umum sebagai
berikut:

if kondisi
{
true statement;
}
else
{
false statement;
}

Percobaan1: Program Kondisi if…else

Source Code
#include <stdio.h>

void main(){
// membuat array karakter untuk menyimpan password
char password[30];

printf("==== Program Login ====\n");


printf("Masukan password: ");
scanf("%s", &password);

// percabangan if/esle
if( strcmp(password, "kopi") == 0 ){
printf("Selamat datang bos!\n");
} else {
printf("Password salah, coba lagi!\n");
}

printf("Terimakasih sudah menggunakan aplikasi ini!\n");


}

35
Output

Gambar 8.1. Kondisi If…else 1


Source Code
#include<stdio.h>
main()
{
int a,b;
printf("Masukkan bilangan pertama = ");
scanf("%i",&a);
printf("Masukkan bilangan kedua = ");
scanf("%i",&b);
if(a>b)
printf("Bilangan terbesar adalah %i\n",a);
else
printf("Bilangan terbesar adalah %i\n",b);
}

Output

Gambar 8.2. Kondisi If…else 2

36
LEMBAR PENGESAHAN

Judul : STRUKTUR KONDISI IF… ELSE


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

37
MODUL 9
STRUKTUR KONDISI ELSE…IF

ELSE IF merupakan sebuah pernyataan dimana programmer dapat


membuat beberapa keputusan dengan menggunakan aturan yang berbeda etapi ada
kaitannya dengan pernyataan sebelumnya. Untuk menentukan tindakan yang akan
digunakan disediakan lebih dari 2 alternatif. Merupakan bentuk statement if dengan
statement if lain di dalam if sebelumnya. Bentuk umum:

if kondisiA
{
if kondisiB
{
true statementB
}
else
{
false statementB
}
}
else
{
false statementA
}

Percobaan1: Kondisi Else…if


Source Code
#include <stdio.h>

void main(){
int nilai;
char grade;

printf("=== Program Grade Nilai ===\n");


printf("Inputkan nilai: ");
scanf("%i", &nilai);

// menggunakan percabangan if/esle/if


if (nilai >= 90) {
grade = 'A';
} else if (nilai >= 80) {
grade = 'B'; // seharusnya B+
} else if (nilai >= 70) {

38
grade = 'B';
} else if (nilai >= 60) {
grade = 'C'; // seharusnya C+
} else if (nilai >= 50) {
grade = 'C';
} else if (nilai >= 40) {
grade = 'D';
} else if (nilai >= 30) {
grade = 'E';
} else {
grade = 'F';
}

printf("Nilai: %i\n", nilai);


printf("Grade anda: %c\n", grade);
}

Output

Gambar 9.1. Struktur Else…if

39
LEMBAR PENGESAHAN

Judul : STRUKTUR KONDISI ELSE…IF


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

40
MODUL 10
STRUKTUR KONDISI SWITCH…CASE…DEFAULT

Struktur kondisi switch....case....default digunakan untuk penyeleksian


kondisi dengan kemungkinan yang terjadi cukup banyak. Struktur ini akan
melaksanakan salah satu dari beberapa pernyataan ‘case’ tergantung nilai kondisi
yang ada di dalam switch. Selanjutnya proses diteruskan hingga ditemukan
pernyataan ‘break’. Jika tidak ada nilai pada case yang sesuai dengan nilai kondisi,
maka proses akan diteruskan kepada pernyataan yang ada di bawah ‘default’.
Bentuk umum dari struktur kondisi ini adalah:

switch(kondisi)
{
case 1 : pernyataan-1;
break;
case 2 : pernyataan-2;
break;
.....
.....
case n : pernyataan-n;
break;
default : pernyataan-m
}

Percobaan1: Switch…Case…Default
Source Code
#include <stdio.h>

void main(){

char grade;

printf("Inputkan grade: ");


scanf("%c", &grade);

switch (toupper(grade)){
case 'A':
printf("Luar biasa!\n");
break;
case 'B':
case 'C':
printf("Bagus!\n");

41
break;
case 'D':
printf("Anda lulus\n");
break;
case 'E':
case 'F':
printf("Anda remidi\n");
break;
default:
printf("Grade Salah!\n");
}

Output

Gambar 10.1. Program dengan Switch…Case…Default

42
LEMBAR PENGESAHAN

Judul : STRUKTUR KONDISI SWITCH…CASE…DEFAULT


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

43
MODUL 11
STRUKTUR PERULANGAN FOR

Struktur perulangan for biasa digunakan untuk mengulang suatu proses


yang telah diketahui jumlah perulangannya. Dari segi penulisannya, struktur
perulangan for tampaknya lebih efisien karena susunannya lebih simpel dan
sederhana. Bentuk umum perulangan for adalah sebagai berikut :
for(inisialisasi; syarat; penambahan)
pernyataan;
Keterangan:
Inisialisasi: pernyataan untuk menyatakan keadaan awal dari variabel kontrol.
Syarat: ekspresi relasi yang menyatakan kondisi untuk keluar dari perulangan.
Penambahan: pengatur perubahan nilai variabel kontrol.
Percobaan1: Perulangan for
Source code
#include<stdio.h>
main()
{
int i;
for (i=1;i<=10;i++)
printf("%d.Hallo,Selamat belajar,Aku yakin Aku pasti bisa, Dan Lulus Algo2
\n",i);
}

Output

Gambar 11.1 Program Perulangan for

44
LEMBAR PENGESAHAN

Judul : STRUKTUR PERULANGAN FOR


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

45
MODUL 12
STRUKTUR PERULANGAN WHILE

Perulangan WHILE banyak digunakan pada program yang terstruktur.


Struktur ini digunakan bila kita belum mengetahui secara pasti berapakali
banyaknya pengulangan yang akan dilakukan. Berakhirnya proses pengulangan
ditentukan oleh suatu kondisi. Selama kondisi terpenuhi, maka pengulangan terus
dilakukan, dan sebaliknya, bila kondisinya tidak terpenuhi maka pengulangan
dihentikan. Bentuk while:

while (condition expression)


{
statement-statement;
}

Percobaan1: Perulangan While

Source Code

#include <stdio.h>

void main(){
char ulangi = 'y';
int counter = 0;

// perulangan while
while(ulangi == 'y'){
printf("Apakah kamu mau mengulang?\n");
printf("Jawab (y/t): ");
scanf(" %c", &ulangi);

// increment counter
counter++;
}

printf("\n\n----------\n");
printf("Perulangan Selesai!\n");
printf("Kamu mengulang sebanyak %i kali.\n", counter);
}

46
Output

Gambar 12.1. Program Perulangan While

47
LEMBAR PENGESAHAN

Judul : STRUKTUR PERULANGAN WHILE


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

48
MODUL 13
STRUKTUR PERULANGAN DO…WHILE

Pada dasarnya struktur perulangan do....while sama saja dengan struktur


while, hanya saja pada proses perulangan dengan while, seleksi berada di while
yang letaknya di atas sementara pada perulangan do....while, seleksi while berada
di bawah batas perulangan. Jadi dengan menggunakan struktur do…while
sekurang-kurangnya akan terjadi satu kali perulangan. Bentuk do....while:

do
{
statement-statement;
}
while (condition expression);

Percobaan1: Perulangan Do…While

Source Code

#include <stdio.h>

void main(){

char ulangi = 'y';


int counter = 0;

do {
printf("Apakah kamu mau mengulang?\n");
printf("Jawab (y/t): ");
scanf(" %c", &ulangi);

// increment counter
counter++;
} while(ulangi == 'y');

printf("\n\n----------\n");
printf("Perulangan Selesai!\n");
printf("Kamu mengulang sebanyak %i kali.\n", counter);
}

49
Output

Gambar 13.1. Program Do…While 1


Source Code
#include "stdio.h"
#include "conio.h"
void main()
{
int x;
x = 1;

do
{
printf("%d ILMU KOMPUTER UINSU\n", x);
x ++;
}
while(x <= 5);
getch();
}

Output

Gambar 13.2. Program Do…While 2

50
LEMBAR PENGESAHAN

Judul : STRUKTUR PERULANGAN DO…WHILE


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

51
MODUL 14
PERNYATAAN GOTO DAN LABEL

Pernyataan goto merupakan instruksi untuk mengarahkan eksekusi program


menuju pernyataan yang diawali dengan suatu label. Label merupakan suatu
pengenal (identifier) yang diikuti dengan tanda titik dua ( : ). Bentuk pemakaian
goto adalah sebagai berikut:

goto label;

Percobaan1: Program Goto dan Label

Source Code

#include <stdio.h>

int main ()
{
int angka = 1;
tampil:
printf("%d ",angka);
if(++angka <= 15)
goto tampil;
return 0;
}

Output

Gambar 14.1. Program Goto Menampilkan Angka

52
Source Code

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

main()
{
char nama[20];
char lagi;
atas:
system("cls");

printf("Masukkan Nama = ");


gets(nama);
printf("\nNama anda adalah %s\n",nama);
printf("-------------------------------------\n"); printf("Ingin Input
nama lagi [Y/T] = ");
lagi=getche();

if (lagi == 'Y' || lagi == 'y')


{
goto atas;
}
else
{
goto keluar;
}
getch
();
keluar:
system("exit");

Output

Gambar 14.2. Program Goto Menampilkan Nama

53
Percobaaan2: Program Kasir
Source Code
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int i, brng, pmbyr, kmbl, k2, hrg[100], jmlh[100], tsh=0,


ttlhrg[100],tshd;
char nama[100][30], p[5];
int main ()
{
printf("\t\t\t===========================================\n");
printf("\t\t\t| BBBBBBB |\n");
printf("\t\t\t| BBB BB |\n");
printf("\t\t\t| BBB BB |\n");
printf("\t\t\t| BBBBBBB |\n");
printf("\t\t\t| BBB BB |\n");
printf("\t\t\t| BBB BB |\n");
printf("\t\t\t| BBBBBBB |\n");
printf("\t\t\t-------------------------------------------\n");
printf("\t\t\t================= RAMADHAN ================\n");
printf("\t\t\t-------------------------------------------\n");
printf("\t\t\t| PROGRAM STRUK TOKO |\n");
printf("\t\t\t-------------------------------------------\n");

awal://LABEL"awal"
printf("\t\t\t Masukkan banyak barang: ");
scanf("%i",&brng);
for(i=1; i<=brng; i++)
{
printf("\t\t\t Masukkan nama barang ke-%i\t: ",i);
scanf("%s", &nama[i]);
printf("\t\t\t Masukkan harga per barang\t: Rp. ");
scanf("%i",&hrg[i]);
printf("\t\t\t Masukkan jumlah barang\t\t: ");
scanf("%i", &jmlh[i]);
printf("\n");
}
for(i=1; i<=brng; i++)
{
ttlhrg[i]=jmlh[i]*hrg[i];
tsh=tsh+ttlhrg[i];
}
printf("\t\t\t Total harga keseluruhan\t: Rp. %i\n", tsh);
printf("\t\t\t Masukkan jumlah pembayaran\t: Rp. ");
scanf("%i", &pmbyr);
kmbl=pmbyr-tsh;
printf("\t\t\t=========================================\n");
printf("\t\t\t Daftar belanja anda:\n");
for(i=1; i<=brng; i++)
{

54
printf("\t\t\t%i. %i buah %s (@ Rp. %i)\t: Rp. %i\n", i, jmlh[i],
nama[i], hrg[i], ttlhrg[i]);
}
if(pmbyr>=tsh)
{
printf("\t\t\t\tTotal harga\t\t: Rp. %i\n", tsh);
printf("\t\t\t\tPembayaran\t\t: Rp. %i\n", pmbyr);
printf("\t\t\t\tKembalian\t\t: Rp. %i\n", kmbl);
printf ("\t\t\t|=================================|\n");
printf ("\t\t\t| Terimakasih |\n");
printf ("\t\t\t| Telah berbelanja |\n");
printf ("\t\t\t| Di Toko |\n");
printf ("\t\t\t| SERBA ADA |\n");
}
else
{
k2=-1*kmbl;
printf("\t\t\tTotal harga\t: Rp. %i\n", tsh);
printf("\t\t\tPembayaran\t: Rp. %i\n", pmbyr);
printf("\t\t\tKekurangan\t: Rp. %i\n", k2);
}
printf("\t\t\t===================================\n");
pilih://LABEL "pilih"
printf("\nUlangi (y/t): ");
scanf("%s", &p);
if(strcmp(p,"y")==0||strcmp(p,"Y")==0)
{
goto awal;
}
else if(strcmp(p,"t")==0||strcmp(p,"T")==0)
{
printf("\t\t\t Anda akan keluar dari program ini...\n");
}
else
{
printf("\t\t\t Masukkan pilihan yang benar...\n");
goto pilih; }
return 0;
}

55
Output

Gambar 14.3. Program Kasir

56
LEMBAR PENGESAHAN

Judul : PERNYATAAN GOTO DAN LABEL


Nama : Muhammad Akbar Ramadhan Tanjung
NIM : 0701163110
Program Studi : Ilmu Komputer

Medan, 2019

Menyetujui,

Koordinator Asisten Asisten

( ) ( )

Mengetahui,

Dosen Penanggung Jawab

( )

57
DAFTAR PUSTAKA

 https://www.petanikode.com/tutorial/c/
 http://pawangsmart.blogspot.com/2015/11/struktur-
perulangan-bahasa-c.html
 http://comlab.ilkom.unsri.ac.id/wp-
content/uploads/2016/10/Modul-Praktikum-Alpro-
I_tibil.pdf
 https://www.researchgate.net/publication/315711056_Mod
ul_Praktikum_Algoritma_dan_Pemrograman_Bahasa_C
 https://www.coursehero.com/file/30341341/pengenalan-c-
sdccpdf/

58

Anda mungkin juga menyukai