0% menganggap dokumen ini bermanfaat (1 suara)
992 tayangan

Modul Algoritma Dan Pemrograman Pet 1-9

Modul ini membahas tentang algoritma dan pemrograman dalam bahasa C++. Modul pertama menjelaskan tentang definisi algoritma, simbol-simbol flowchart, dan cara menulis algoritma secara deskriptif, flowchart dan pseudocode. Modul kedua memperkenalkan IDE Borland C++ dan pengenalan struktur dasar pemrograman C++.

Diunggah oleh

endi96
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (1 suara)
992 tayangan

Modul Algoritma Dan Pemrograman Pet 1-9

Modul ini membahas tentang algoritma dan pemrograman dalam bahasa C++. Modul pertama menjelaskan tentang definisi algoritma, simbol-simbol flowchart, dan cara menulis algoritma secara deskriptif, flowchart dan pseudocode. Modul kedua memperkenalkan IDE Borland C++ dan pengenalan struktur dasar pemrograman C++.

Diunggah oleh

endi96
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 47

Modul Algoritma dan Pemrograman

ATKP Medan

MODUL 1

1. PERTEMUAN 2. JUDUL
3. TUJUAN a. Definisi Algoritma

:1 : ALGORITMA :

b. Simbol-simbol Flowchart c. Mampu memahami suatu permasalahan d. Menyusun langkah-langkah penyelesaian masalah e. Membuat algoritma deskriptif, flowchart dan pseudo code

4. DASAR TEORI Kata Algoritma diambil dari nama ilmuwan muslim Abu Jafar Muhammad bin Musa Al-Khwarizmi (780-846 M) yang banyak menghasilkan karya dalam bidang matematika, disamping karya-karyanya dalam bidang lainnya seperti geografi dan musik. Algorithma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Langkah-langkah tersebut harus logis ini berarti nilai kebenarannya harus dapat di tentukan, benar atau salah. Langah-langkah yang tidak benar dapat memberikan hasil yang salah. Algorithma merupakan jantung ilmu komputer atau informatika tetapi algoritma tidak selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari banyak terdapat proses yang digambarkan dalam suatu algorithma. Contohnya resep masakan/membuat kue (resep kue), membuat pakaian (pola pakaian), merakit mobil (panduan merakit).

CIRI-CIRI ALGORITMA YANG BAIK. a) Tepat sasaran : memenuhi spesifikasi pekerjaan dan bekerja sesuai tujuan b) Flexible dan portable : Flexible untuk dikembangkan lebih lanjut Portable untuk digunakan pada berbagai sistem dan mesin c) Bersih dari kesalahan sistem ataupun lojik d) Efektif : setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal. e) Murah:

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

Efisien dalam penggunaan piranti memori dan penyimpanan lainnya. Cepat waktu pelaksanaannya. f) Didokumentasi dengan baik untuk pengoperasian, pemeliharaan dan pengembangan. g) Algoritma merupakan pemberian (description) pelaksanaan suatu proses. h) Tidak ambiguous : tidak bermakna ganda. i) Harus berhenti setelah mengerjakan sejumlah langkah terbatas.

ATURAN PENULISAN TEKS ALGORITMA Ada tiga cara penulisan Algoritma, yaitu : 1. Uraian deskriftif Contoh : Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap. Algoritmanya : a. Masukkan sebuah bilangan sembarang b. Bagi bilangan tersebut dengan bilangan 2 c. Hitung sisa hasil bagi pada langkah 2. Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil. 2. Menggunakan kata-kata atau kalimat yang mirip dengan bahasa pemrograman yaitu Psudo Code Contoh suatu Pseudocode : Start Nilai a=3 ; b=5 ; c=0 Hitung c= a * b Tampilkan nilai c End 3. Menggunakan bagan-bagan/symbol-simbol tertentu seperti Diagram Alir (Flowchart)

DIAGRAM ALIR Flow-chart atau bagan alir adalah suatu skema/gambar yang memperlihatkan urutan intruksi/kegiatan dan hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan dengan symbol. Dengan demikian setiap symbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung.

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

Flow-chart dibedakan atas dua jenis, yaitu : 1. Diagram alir sistem (System Flow-chart) Bagan yang memperlihatkan urutan prosedur dan proses dari beberapa file dalam media tertentu. System flowchart menggambarkan : a. Hubungan antar suatu file dengan file lainnya b. Media yang dipakai untuk setiap file 2. Diagram alir program(Program Flow-chart) Bagan yang memperlihatkan urutan dan hubungan proses dalam suatu program. Penulisan dengan menggunakan bagan alir sudah tidak banyak digunakan, dengan alasan : Hanya cocok untuk masalah kecil. Memerlukan kemampuan menggambar yang baik, tetapi sangat bermanfaat jika digunakan untuk menggambarkan logika pemecahan masalah untuk pengajaran Berikut merupakan simbol dari diagram alir program Simbol Arti

Terminator (Awal / Akhir) suatu flowchart

Proses (Pengolah Data)

Input / Output (mewakili data input dan data output)

Preparation (untuk Insialisai Awal variabel / untuk Loop (perulangan))

Decision / Pengambilan Keputusan (perbandingan antara dua buah nilai atau lebihi)

Off Page Connector (penghubung di halaman yang berbeda)

On Page Conntector (penghubung di halaman yang sama)

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

Flow Lines (Arah Arus / Data / Proses

Predefine (sebuah program yang terpisah yang dapat dipanggil dari main program)

KAIDAH-KAIDAH UMUM PEMBUATAN FLOWCHART Dalam pembuatan flowchart tidak ada rumus atau patokan yang bersifat mutlak. Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisa suatu masalah dengan komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu pemrogram dengan yang lainnya. Namun secara garis besar setiap pengolahan selalu terdiri dari 3 bagian utama, yaitu: Input Proses Pengolahan dan Output

Input

Proses

Output

Untuk pengolahan data dengan komputer, urutan dasar pemecahan suatu masalah : START, berisi instruksi untuk persiapan peralatan yang diperlukan sebelum menangani pemecahan persoalan READ, berisi instruksi kegiatan untuk membaca data dari suatu peralatan input PROSES, berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data yang dibaca WRITE, berisi instruksi untuk merekan hasil kegiatan ke peralatan output END, mengakhiri kegiatan pengolahan Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart, namun ada beberapa anjuran: Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END

Contoh pemakaian flowchart 1. algoritma untuk membersihkan bak mandi


Start a

Buka penutup dasar Bak

Penuh ? Y T Matikan Kran Air

Koson gg ? Y Sikat dinging & dasar Bak

Stop

Siram bak

Bersih ? Y Sumbat Bak & Hidupkn Kran Ari

2. Algoritma untuk menentukan sebuah bilangan genap atau ganjil

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

5. PERCOBAAN Buatlah algoritma dalam bentuk Flowchart masalah dibawah ini : 1. Menjumlahkan 2 buah bilangan dan mencetak hasilnya 2. Mengalikan 2 buah bilangan dan mencetak hasilnya 3. Menukarkan isi dua buah variabel dan mencetak hasilnya 4. Menghitung Luas Lingkaran dan hasilnya 5. Mengecek bilangan di antara 2 bilangan masukan, apakah sama ataukah lebih besar salah satunya, dan tampilkan hasilnya 6. Menghitung sigma (akumulasi) dari bilangan 1 sampai dengan n, dan menampilkan hasilnya

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

MODUL 2

1. PERTEMUAN : 2 2. JUDUL
3. TUJUAN : STRUKTUR DASAR PEMROGRAMAN C++ :

a. Memahami IDE (Integrated Development Environment) bahasa C++ b. Dapat menggunakan sintaks dan fungsi-fungsi dalam bahasa C++ c. Mampu menterjemahkan algoritma untuk memecahkan suatu masalah kedalam bahasa C++

4. DASAR TEORI Pada tahun 1980 seorang ahli yang bernama Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang dinamakan C with Classes yang pada mulanya disebut a better C dan berganti nama pada tahun 1983 menjadi C++ oleh Rick Mascitti, dibuat di Laboratorium Bell, AT&T. Pada C++ ditambahkan konsep-konsep baru seperti class dengan sifat- sifatnya yang disebut dengan Object Oriented Programming (OOP), yang mempunyai tujuan utamanya adalah membantu dan mengelola program yang besar dan kompleks. Bahasa Pemrograman C++ merupakan bahasa yang biasa dipakai untuk pemrogram sistem, antara lain: Assembler Interpreter Program paket Sistem operasi Editor Kompiler Program bantu (utility)

Selain digunakan untuk pemrograman sistem juga digunakan untuk membuat berbagai program aplikasi, seperti aplikasi bisnis, matematis, maupun games (permainan), serta untuk menyusun program kecerdasan buatan (artificial intelligence).

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

4.1. Pengenalan IDE Borland C++ IDE merupakan singkatan dari Integrated Development Environment, merupakan Lembar kerja terpadu untuk pengembangan program. IDE dari Borland C++, dapat digunakan untuk: 1. Menulis Naskah Program. 2. Mengkompilasi Program ( Compile ) 3. Melakukan Pengujian Program ( Debugging ) 4. Mengaitkan Object dan Library ke Program ( Linking ) 5. Menjalankan Program ( Running ) Untuk mengaktifkan aplikasi Borland C++, lakukanlah langkah-langkah berikut ini: Klik tombol Start pilih Program Borland C++ 5.02 klik Borland C++

Gambar 1. Menu Untuk Mengaktifkan Program Borland C++

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

Berikut lDE dari Borland C++, seperti gambar dibawah ini:

Gambar 2.Layar Pembuka Borland C++

Menu Bar Tools Bar Jendela Editor Jendela Pesan

Status

Gambar 3. IDE Borland C++ 5.02 IDE pada Borland C++, terbagi menjadi 5 (empat) bagian, yaitu: 1. Baris Menu ( Menu Bar ) Menu utama terdiri dari; File, Edit, Search, Run, Compile, Debug, Project, Options, Window dan Help. 2. Baris Peralatan (Tools Bar) Baris yang menampilkan shortcuts (icons) untuk mempermudah pengguna dalam pembuatan program-program C++, seperti icon open, save, compiler, run dan lainlain. 3. Jendela Editor

Dosen Ismael, S.Kom. M. Kom

Modul Algoritma dan Pemrograman

ATKP Medan

Tempat untuk pengetikan program dan membuat program. Jika pertama kali anda membuat program, nama file jendela editor adalah NONAME00.CPP 4. Jendela Message Tempat untuk menampilkan pesan-pesan pada proses kompilasi dan link program. Jika ada kesalahan sintax program maupun varibel dan objek, maka akan diberikan pesan kesalahannya yang kemudian dapat didouble klik pada pesan tersebut untuk mendapatkan petunjuk di baris yang mana terdapat kesalahannya. 5. Baris Status (Status Bar) Baris yang akan menampilkan keterangan-keterangan pada saat mengaktifkan menu bar dan sub menu serta keterangan-keterangan lain (seperti petunjuk baris dan kolom, waktu yang sedang berjalan).

4.2 Struktur Program C++ Pemrograman C++ disusun oleh sejumlah blok fungsi. Sebuah program minimal terdiri dari sebuah fungsi. Setiap fungsi terdiri dari satu atau beberapa pernyataan. Bentuk Umum Struktur Program C++ : #include <file-header> main() { pernyataan; } Penjelasan: 1. include Adalah salah satu pengarah prepocessor directive yang tersedia pada C++. Preprocessor selalu dijalankan terlebih dahulu pada saat proses kompilasi terjadi. Preprocessor dipakai untuk membaca file yang dinamakan dengan file-judul (header file), yaitu file yang berisi deklarasi fungsi dan defenisi konstanta. File ini mempunyai ciri yaitu namanya diakhiri dengan extension .h. Bentuk umumnya : # include <nama_file> tidak diakhiri dengan tanda semicolon, karena bentuk tersebut bukanlah suatu bentuk pernyataan, tetapi merupakan prepocessor directive. Baris tersebut menginstrusikan

Dosen Ismael, S.Kom. M. Kom

10

Modul Algoritma dan Pemrograman

ATKP Medan

kepada kompiler yang menyisipkan file lain dalam hal ini file yang berakhiran .h(file header) yaitu file yang berisi sebagai deklarasi contohnya: # include <iostream.h> # include <conio.h> : diperlukan pada program yang melibatkan objek cout : diperlukan bila melibatkan clrscr(),yaitu perintah

untuk membersihkan layar. # include <iomanip.h> : diperlukan bila melibatkan setw() yang bermanfaat

untuk mengatur lebar dari suatu tampilan data. # include <math.h> : diperlukan pada program yang menggunkan operasi

sqrt () yang bermanfaat untuk operasi matematika kuadrat. 2. Fungsi main () Fungsi ini menjadi awal dan akhir eksekusi program C++. main adalah nama judul fungsi. Melihat bentuk seperti itu dapat kita ambil kesimpulan bahwa batang tubuh program utama berada didalam fungsi main( ). Berarti dalam setiap pembuatan program utama, maka dapat dipastikan seorang pemrogram menggunakan minimal sebuah fungsi. Pembahasan lebih lanjut mengenai fungsi akan diterangkan kemudian. Yang sekarang coba ditekankan adalah kita menuliskan program utama kita didalam sebuah fungsi main(). 3. Komentar Komentar tidak komentar, yaitu: Jenis 1 : /* Komentar anda diletakkan di dalam ini Bisa mengapit lebih dari satu baris */ Jenis 2 : // Komentar anda diletakkan disini ( hanya bisa perbaris ) 4. Tanda Semicolon Tanda semicolon ; digunakan untuk mengakhiri sebuah pernyataan. Setiap pernyataan harus diakhiri dengan sebuah tanda semicolon. 5. Mengenal cout(dibaca : C out) Pernyataan cout merupakan sebuah objek di dalam C++, yang digunakan untuk mengarahkan data ke dalam standar output (cetak pada layar) Contoh : pernah dicompile oleh compiler. Dalam C++ terdapat 2 jenis

Dosen Ismael, S.Kom. M. Kom

11

Modul Algoritma dan Pemrograman

ATKP Medan

1. #include <file-header> merupakan preprocessor pada C++ untuk pemanggilan file header yang memuat beberapa perintah-perintah dari C++ (contoh, apabila ingin menggunakan perintah cout maka harus menggunakan file header iostream.h) 2. main() merupakan awal mula dari blok program utama 3. tanda { dan } sebagai punctuator yang awal blok program hingga akhir blok program 4. cout merupakan perintah keluaran pada C++ 5. getch(); apabila ditempatkan sebelum funtuator }, maka berfungsi sebagai penahan dari tampilan hasil

4.3 Membuat File Editor File Editor merupakan file kode program yang dapat dikompilasi, kemudian dijalankan untuk menampilkan hasilnya yang mempunyai ekstensi file .CPP. Cara mengaktifkannya : Klik Menu File Klik New Text Edit

Gambar 4 Cara membuat Text Editor

Dosen Ismael, S.Kom. M. Kom

12

Modul Algoritma dan Pemrograman

ATKP Medan

Gambar 5 Jendela Text Editor 4.4. Menyimpan File Editor Setelah selesai mengetikan naskah program yang baru pada jendela Text Edit, maka selanjutnya disimpan dengan cara : a. Kik Menu File Save b. Menekan HotKey Ctrl + KS. Selanjutnya tampil jendela Save File As, seperti dibawah ini :

Gambar 6. Jendela Save File As

Dosen Ismael, S.Kom. M. Kom

13

Modul Algoritma dan Pemrograman

ATKP Medan

Pada Borland C++ 5.02 terdapat tiga cara menyimpan file editor, diantaranya yaitu : Save Digunakan untuk menyimpan File Program pada jendela yang sedang aktif kedalam disk. Hotkey yang ada bisa gunakan untuk menyimpan dengan menekan tombol Ctrl + KS. Save As Digunakan untuk menyimpan File Program pada jendela yang sedang aktif kedalam disk dengan nama file yang berbeda. Save All Digunakan untuk menyimpan semua File Program pada jendela yang sedang aktif kedalam disk.

4.5. Menterjemahkan Program Proses Compile merupakan suatu proses menterjemahkan program dari bahasa manusia kedalam bahasa yang dimengerti oleh komputer yaitu bahasa mesin, yaitu dengan cara :

1. Kik Menu Debug Compile 2. Menekan HotKey Alt + F9


Selanjutnya tampil kotak dialog Compile, seperti dibawah ini :

Gambar 7. Kotak Dialog Compile 4.6. Menjalankan Program Proses Run merupakan suatu proses menterjemahkan program,melakukan proses linking, membuat file eksekusi ( .exe ) dan sekaligus menjalankan program, yaitu dengan cara: 6. Kik Menu Debug Run

Dosen Ismael, S.Kom. M. Kom

14

Modul Algoritma dan Pemrograman

ATKP Medan

7. Menekan HotKey Ctrl + F9 Selanjutnya tampil hasil Run, seperti dibawah ini :

Gambar 8. Contoh Hasil Keluaran Program 4.7. Membuka File Editor Penjelasan Membuka atau memanggil file editor yang sudah pernah dibuat, dengan cara : Klik Menu File Open Selanjutnya tampil Jendela Open, seperti dibawah ini :

Gambar 9. Jendela Open File pada C++

5. PERCOBAAN a. Terjemahkan Algoritma yang telah dibuat dalam tugas modul 1 menggunakan bahasa pemrograman C++ . 1. Menjumlahkan 2 buah bilangan dan mencetak hasilnya

Dosen Ismael, S.Kom. M. Kom

15

Modul Algoritma dan Pemrograman

ATKP Medan

#include <conio.h> #include <iostream.h> main() { int a,b,c; a=10; b=21; c=a+b; cout<<"a + b = "<<c<<endl; cout<<a<<" + "<<b<<"= "<<c; getch(); }

2. Mengecek bilangan di antara 2 bilangan masukan, apakah sama ataukah lebih besar salah satunya, dan tampilkan hasilnya
#include <conio.h> #include <iostream.h> main() { int a,b,c; a=10; b=21; if (a==b) { cout<<a<<" Sama Dengan "<<b; }else if(a>b) { cout<<a<<" Besar dari "<<b; }else { cout<<a<<" Kecil dari "<<b; } getch(); }

3. Menghitung sigma (akumulasi) dari bilangan 1 sampai dengan n, dan menampilkan hasilnya

Dosen Ismael, S.Kom. M. Kom

16

Modul Algoritma dan Pemrograman

ATKP Medan

#include <conio.h> #include <iostream.h> main() { int i, total=0; for (i=1;i<=10;i++) { total=total+I; } cout<<"Total Nilai Keseluruhan :"<<total; getch(); }

Dosen Ismael, S.Kom. M. Kom

17

Modul Algoritma dan Pemrograman

ATKP Medan

MODUL 3 ELEMEN-ELEMEN BAHASA PEMROGRAMAN C++ 1. PERTEMUAN 2. JUDUL


3. TUJUAN

:3 : STRUKTUR DASAR PEMROGRAMAN C++


:

a. Menjelaskan dan menggunkan tipe data dasar (jenis dan jangkauannya) b. Menjelaskan dan menggunakan Variabel c. Menjelaskan dan menggunakan konstanta d. Menjelaskan dan menggunakan berbagai jenis operator

4. DASAR TEORI 4.1. Tipe Data Data menggambarkan suatu nilai yang bisa dinyatakan dalam bentuk konstanta atau variabel. Dimana konstanta menyatakan suatu nilai yang tetap dan variabel menyatakan nilai yang dapat diubah-ubah selama eksekusi program berlangsung. Tipe data dapat dikelompokkan menjadi atas dua macam : 1. Tipe Dasar. 2. Tipe Bentukkan. Tipe Dasar Adalah tipe yang dapat langsung dipakai. Tipe Dasar Ukuran Memori Jangkauan Nilai (byte) Char Int Long 1 2 4 -128 hingga +127 -32768 hingga +32767 -2.147.438.648 hingga 2.147.438.647 Float Double 4 8 3,4E-38 hingga 3,4E38 1.7E-308 hingga 1.7E308 3.4E-4932 hingga 1.1E4932 6-7 15-16 19 Jumlah Digit Presisi -

long double 10

NB : Untuk mengetahui ukuran memori dari suatu tipe digunakan fungsi sizeof(tipe) Tipe data dapat diubah ( type cast ), misalkan:

Dosen Ismael, S.Kom. M. Kom

18

Modul Algoritma dan Pemrograman

ATKP Medan

float x = 3.345; int p = int(x); maka nilai p adalah 3 ( terjadi truncating ). Tipe Bentukan Merupakan tipe yang dibentuk dari tipe dasar. Seperti Tipe Struktur. Suatu tipe data yang merupakan kumpulan dari tipe data lainnya. Struktur terdiri dari data yang disebut field. Field field tersebut digabungkan menjadi satu tujuan untuk kemudahan dalam operasi. Bentuk umumnya : tyedef struct{ tipe nama_field1; tipe nama_field2; tipe nama_field3; .... }nama_variabel;

4.2. Variabel Variabel digunakan untuk menyimpan suatu nilai dalam program, dan nilai tersebut dapat diubah-ubah selama eksekusi program berlangsung a. Deklarasi variabel Varibel yang digunakan dalam program harus dideklarasikan terlebih dahulu, yaitu pemesanan memori dan penentuan jenis data yang bisa disimpan dalam variabel tersebut. Bentuk umum deklarasi variabel : Tipe nama-variabel; Pada deklarasi variabel, nama-variabel dapat terdiri dari satu variabel atau beberapa variabel yang dipisahkan dengan tanda koma (,). Contoh : int R ; float nilai, nilai_total, ipk; b. Memberikan nilai variabel Bentuk umum memberikan nilai ke suatu variabel : variabel=nilai; Contoh : R=10;

Dosen Ismael, S.Kom. M. Kom

19

Modul Algoritma dan Pemrograman

ATKP Medan

nilai=70.5; ipk=3.4; c. inisialisasi variabel Merupakan pemberian nilai awal terhadap suatu variabel. Adakalanya dalam pembuatan program, setelah variabel dideklarasikan langsung diberi nilai awal. Contoh : int total; total=0; atau int total=0;

4.3. Konstanta Konstanta menyatakan nilai tetap. Tidak perlu dideklarasikan, dan mempunyai tipe data. Aturan penulisan: Konstanta karakter : diawali dan diakhiri dengan tanda petik tunggal, Contoh : A dan @. Konstanta integer : ditulis dengan angka (tanpa tanda petik) tanpa mengandung pemisah ribuan dan tak mengandung bagian pecahan. Contoh : 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 (). Contoh: Program Dasar. Menggunakan keyword #define #define <nama_konstanta> <nilai> atau Menggunakan keyword const const <tipe_konstanta> <nama_konstanta> = <nilai>; Contoh: #define PI 3.14159 atau : const float PI = 3.14159;

Dosen Ismael, S.Kom. M. Kom

20

Modul Algoritma dan Pemrograman

ATKP Medan

4.4. Operator Operator merupakan simbol atau karakter yang digunakan untuk melakukan suatu operasi atau manipulasi seperti operasi matematika, operasi logika dan lain sebagainya. a. Opeartor Arimatika Operator * / % + Perkalian Pembagian Sisa pembagian Penjumlahan Pengurangan Operasi

b. Operator penaikan dan penurunan Operator ++ -Penaikan Penurunan Operasi

c. Operator relasi Operator relasi (hubungan) biasa dipakai untuk membandingkan dua buah nilai. Hasil perbandingan berupa keadaan benar atau salah. Operator > >= < <= == != Besar dari Besar dari atau sama dengan Kurang dari Kurang dari atau sama dengan Sama dengan Tidak sama dengan Operasi

d. Operator Logika Biasa digunakan untuk menghubungkan ungkapan relasi Operator && || ! Dan (AND) Atau (OR) Tidak (NOT) Operasi

Dosen Ismael, S.Kom. M. Kom

21

Modul Algoritma dan Pemrograman

ATKP Medan

5. PERCOBAAN 1. Tipe-tipe data dasar /* File program : data.cpp */ #include <stdio.h> #include <conio.h> main() { int var_bulat = 32767; float var_pecahan1 = 339.2345678f; double var_pecahan2 = 3.4567e+40; char var_karakter = 'S'; printf("Variabel bulat = %d\n", var_bulat); printf("Variabel pecahan1 = %f\n", var_pecahan1); printf("Variabel pecahan2 = %le\n", var_pecahan2); printf("Variabel karakter = %c\n", var_karakter); getch(); } 2. Mengenal beberapa operator /* File program : operator.cpp */ #include <stdio.h> #include <conio.h> main() { int a, b, c, hasil; printf("Masukkan nilai a = "); scanf("%d", &a); printf("Masukkan nilai b = "); scanf("%d", &b); printf("Masukkan nilai c = "); scanf("%d", &c); printf("\n"); hasil = a - b; printf("Hasil pengurangan : a printf("Hasil perkalian : b * c hasil = a / c; printf("Hasil pembagian : a / c printf("Hasil operasi : a + b * getch(); }

b = %d\n", hasil); = %d\n", b * c); = %d\n", hasil); c = %d\n", a + b * c);

Dosen Ismael, S.Kom. M. Kom

22

Modul Algoritma dan Pemrograman

ATKP Medan

3. Operator Modulus /* File program : modulus.cpp*/ #include <stdio.h> #include <conio.h> main() { int a = 14, b = 2, c = 3, d = 4; printf("a = %d, b = %d, c = %d, d = %d\n\n", a, b, c, d); printf("Hasil a %% b = %d\n", a % b); printf("Hasil a %% c = %d\n", a % c); printf("Hasil a %% d = %d\n", a % d); printf("Hasil a / d * d + a %% d = %d\n", a / d * d + a % d); getch(); } 4. Menghitung diskriminan pers kuadrat ax^2 + bx + c = 0

/* File program : diskrim.cpp */ # include <stdio.h> # include <conio.h> main() { float a,b,c,d = 0; a = 3.0f; b = 4.0f; c = 7.0f; d = b*b-4*a*c; printf("Diskriminan = %f\n",d); getch(); }
5. Penggunaan pre & post Increment operator /* File program : pre_post.Cpp */ #include <stdio.h> #include <conio.h> main() { int count = 0, loop; loop = ++count; /* count=count+1; loop=count; */ printf("loop = %d, count = %d\n", loop, count); loop = count++; /* loop=count; count=count+1; */ printf("loop = %d, count = %d\n", loop, count); getch(); }

Dosen Ismael, S.Kom. M. Kom

23

Modul Algoritma dan Pemrograman

ATKP Medan

6. Perbedaan format %g, %e dan %f /* File program : form_efg.cpp */ #include <stdio.h> #include <conio.h> main() { float x; printf("Masukkan nilai pecahan yg akan ditampilkan : "); scanf("%f", &x); printf("format e => %e\n", x); printf("format f => %f\n", x); printf("format g => %g\n", x); getch(); } 7. Penggunaan format panjang medan data /* File program : formatpjg.cpp */ #include <stdio.h> #include <conio.h> main() { int nilai1 = 20; float nilai2 = 500.0f; printf("Abad %5d\n", nilai1); printf("%10.2f\n", nilai2); printf("%10s\n", "Bahasa C"); /* String rata kanan */ printf("%-10s\n", "Bahasa C"); /* String rata kiri */ getch(); }

6. LATIHAN

Buatlah program untuk mengkonversi suhu dari Celcius ke Fahrenheit dengan rumus F = C * 1.8 + 32 Input : suhu dalam Celcius Output : suhu dalam Fahrenheit

Dosen Ismael, S.Kom. M. Kom

24

Modul Algoritma dan Pemrograman

ATKP Medan

MODUL 4 1. 2. 3. PERTEMUAN : 4 dan 5 JUDUL TUJUAN : PROGRAM INPUT DAN OUTPUT :

a. Menjelaskan dan menggunakan fungsi untuk input data b. Menjelaskan dan menggunakan fungsi untuk menampilkan/mencetak informasi c. Menggunakan penentu format

4. LANDASAN TEORI Input data dan menampilkan data/informasi (output) merupakan kegiatan yang sering dilakukan dalam pemrograman. Input data dilakukan melalui keyboard menghasilkan output melalui piranti monitor atau printer.

4.1 Program Input Data diinputkan melalui keyboard saat eksekusi program berlangsung. Fungsi yang digunakan untuk input data yaitu : scanf(), getch() dan getche(), cin(). a. scanf() Fungsi ini digunakan untuk menginputkan berbagai jenis data dengan menggunakan penentu format data. Daftar penentu format data : Kode %c %s % i atau %d %e atau %f %o %x %u l L h Membaca sebuah karakter Membaca sebuah string Membaca sebuah integer Membaca sebuah bilangan real (bisa dalam bentuk eksponensial) Membaca sebuah integer oktal Membaca sebuah integer hexadesimal Membaca sebuah integer tak bertanda Awalan untuk membaca data long int (misal %ld) Awalan untuk membaca data long double (misal %Lf) Awalan untuk membaca data short int (misal %hd) Keterangan

b. getch() dan getche()

Dosen Ismael, S.Kom. M. Kom

25

Modul Algoritma dan Pemrograman

ATKP Medan

fungsi getch() digunakan untuk membaca sebuah karakter, dengan sifat karakter yang diinputkan tidak perlu diakhiri dengan ENTER dan karakter yang diinputkan tidak akan ditampilkan di layar. Sedangkan fungsi getche() kegunaannya sama dengan fungsi getch(), perbedaannya karakter yang diinputkan ditampilkan di layar. c. Cin Fungsi cin merupakan sebuah objek didalam C++ digunakan untuk memasukan suatu data dari keyboard. Untuk menggunakan fungsi cin ini harus menyertakan file header iostream.h

4.2 Program Output Untuk menampilkan output/informasi digunakan fungsi printf(), puts() dan putchar(), cout. a. printf() Fungsi printf() digunakan untuk menampilkan berbagai jenis data. Fungsi printf() sama dengan fungsi scanf() menggunakan penentu format. b. Pust() Fungsi puts() digunakan khusus untuk manapilkan data string ke layar. Dengan menggunakan fungsi ini, dengan \n (pindah baris) c. Putchar() Fungsi putchar() digunakan khusus untuk menampilkan sebuah karakter ke layar, akan tetapi tidak diakhir dengan pindah baris.
d. Cout Funsi cout merupakan sebuah objek didalam C++ digunakan untuk menampilkan suatu data kelayar. Untuk menggunakan fungsi ini harus menyertakan file header iostream.h

string yang ditampilkan secara otomatis akan diakhiri

Dosen Ismael, S.Kom. M. Kom

26

Modul Algoritma dan Pemrograman

ATKP Medan

5. PERCOBAAN a. Menghitung keliling dan luas lingkaran


/* File program : lingkaran.cpp / #include <stdio.h> main() { float radius, keliling, luas; printf("Masukkan jari-jari lingkaran : "); scanf("%f",&radius); keliling = 2 * 3.14f * radius; luas = 0.5f * 3.14f * radius * radius; printf("\nData lingkaran\n"); printf("Jari-jari = %8.2f\n", radius); printf("Keliling = %8.2f\n", keliling); printf("Luas = %8.2f\n", luas); getch(); }

b. Menghitung Nilai Akhir Matakuliah


#include<stdio.h> main() { float absen,tugas,mid,uas,na; clrscr(); printf("Input nilai kehadiran : "); scanf("%f" ,&absen); printf("Input nilai Tugas : "); scanf("%f" ,&tugas); printf("Input nilai mid : "); scanf("%f" ,&mid); printf("Input nilai UAS :" ); scanf("%f" ,&uas); na=0.1*absen+0.2*tugas+0.3*mid+0.4*uas; getch(); }

c. Mencari Luas Segitiga


#include<stdio.h> #include<conio.h> main() { int alas,tinggi; float luas; clrscr(); printf("Inputkan Alas Segitga : ");scanf("%d",&alas); printf("Inputkan Tinggi Segitga : ");scanf("%d",&tinggi); luas=alas*tinggi*0.5; printf("Luas Segitiga = %.2f\n",luas ); getche (); }

Dosen Ismael, S.Kom. M. Kom

27

Modul Algoritma dan Pemrograman

ATKP Medan

d. Mencari luas segi tiga menggunakan cout dan cin


#include <stdio.h> #include <conio.h> #include <iostream.h> main() { int alas,tinggi; float luas; clrscr(); cout<<"Inputkan Alas Segitga :"; cin>>alas; cout<<"Inputkan Tinggi Segitga :"; cin>>tinggi; luas=alas*tinggi*0.5; cout<<"Luas Segitiga ="<<luas; getche(); }

6. LATIHAN Buat algoritma dan program untuk menginputkan, menghitung dan menampilkan luas persegi panjang, Luas Lingkaran,

Dosen Ismael, S.Kom. M. Kom

28

Modul Algoritma dan Pemrograman

ATKP Medan

MODUL 5 1. 2. 3. PERTEMUAN : 6 dan 7 JUDUL TUJUAN : STRUKTUR KONTROL (PENGAMBILAN KEPUTUSAN) :

a. Menjelaskan dan menggunakan operator kondisi (operator relasi dan logika) b. Menggunaan pernyataan if c. Menggunaan pernyataan if-else d. Menggunaan pernyataan if dalam if e. Menggunaan pernyataan switch

4. DASAR TEORI Pengambilan keputusan diperlukan jika ada dua atau lebih kondisi yang harus dipilih salah satu. Pernyataan-pernyataan yang dapat digunakan dalam pengambilan keputusan adalah : Pernyataan if Pernyataan if-else Pernyataan switch

Pernyataan-pernyataan diatas memerlukan suatu kondisi yaitudibentuk dengan operator relasi dan/atau operator logika. 4.1. Operator Relasi Operator relasi (hubungan) biasa dipakai untuk membandingkan dua buah nilai. Hasil perbandingan berupa keadaan benar atau salah. Operator > >= < <= == != Besar dari Besar dari atau sama dengan Kurang dari Kurang dari atau sama dengan Sama dengan Tidak sama dengan Operasi

Dosen Ismael, S.Kom. M. Kom

29

Modul Algoritma dan Pemrograman

ATKP Medan

Contoh PEMBANDING 1>2 1<2 A==1 A < B Kar==Y HASIL Salah Benar Benar jika A bernilai 1 Salah jik A tidak bernilai 1 Benar karena kode ASCII untuk karakter A kecil dari kode ASCII karakter B Benar jika variabel kar berisi Y Salah jika variabel kar tidak berisi Y

4.2. Operator Logika Biasa digunakan untuk menghubungkan ungkapan relasi Operator && || ! Dan (AND) Atau (OR) Tidak (NOT) Operasi

4.3 Pernyataan if Sintak:

Jika kondisi benar maka pernyataan dilakukan. Pernyataan bisa satu statement atau beberapa statement Jika pernyataan lebih dari satu gunakan tanda { dan } untuk mengelompokkan pernyataan2 itu

Dosen Ismael, S.Kom. M. Kom

30

Modul Algoritma dan Pemrograman

ATKP Medan

4.4 Pernyataan if-else Sintak:

Jika kondisi benar maka pernyataan1 dilakukan. Jika kondisi salah maka pernyataan2 dilakukan.

4.5 Nested -if Di dalam pernyataan if (atau if-else) bisa terdapat pernyataan if (atau if-else) yang lain. Bentuk umum:

Dosen Ismael, S.Kom. M. Kom

31

Modul Algoritma dan Pemrograman

ATKP Medan

4.6 Pernyataan Switch-Case Digunakan sebagai pengganti pernyataan if bertingkat (else-if) Bentuk umum :

5. PERCOBAAN 1. Menghitung nilai discount menggunakan if.


/* File program : discount.cpp */ #include <stdio.h> #include <conio.h> main() { double total_pembelian, discount = 0; clrscr(); printf("Total pembelian = Rp "); scanf("%lf", &total_pembelian); if(total_pembelian >= 100000) discount = 0.05 * total_pembelian; printf("Besarnya discount = Rp %.2lf\n", discount); getch(); }

2. Menghitung nilai absolut suatu bilangan.

Dosen Ismael, S.Kom. M. Kom

32

Modul Algoritma dan Pemrograman

ATKP Medan

/* File program : absolut.cpp */ #include <stdio.h> #include <conio.h> main() { int bil, abs; clrscr(); printf("Masukkan bilangan bulat : "); scanf("%d", &bil); if(bil < 0) abs = -bil; printf("Nilai absolut dari %d adalah %d\n\n", bil, abs); getch(); }

3. Pemakaian if-else untuk menyeleksi bilangan pembagi /* File program : bagi1.cpp */ #include <stdio.h> #include <conio.h> main() { float a, b; clrscr(); printf("Masukkan nilai a : "); scanf("%f", &a); printf("Masukkan nilai b : "); scanf("%f", &b); printf("\n"); if (b == 0) printf("%g dibagi dengan nol = TAK BERHINGGA\n", a); else printf("%g dibagi dengan %g = %g\n", a, b, a/b); getch(); }

4. Pemakaian if-else untuk mengecek hasil modulus.

Dosen Ismael, S.Kom. M. Kom

33

Modul Algoritma dan Pemrograman

ATKP Medan

/* File program : bagi2.cpp */ #include <stdio.h> #include <conio.h> main() { int bil1, bil2, sisa; clrscr(); printf("Masukkan bilangan pertama : "); scanf("%d", &bil1); printf("Masukkan bilangan kedua : "); scanf("%d", &bil2); sisa = bil1 % bil2; printf("\n"); if (sisa == 0) printf("%d habis dibagi dengan %d\n\n", bil1, bil2); else printf("%d tidak habis dibagi dengan %d\n\n", bil1, bil2); getch(); }

5. Mengkategorikan karakter masukan


/* File program : tebak.cpp */ #include <stdio.h> #include <conio.h> main() { char karakter; clrscr(); printf("Masukkan sebuah karakter : "); scanf("%c", &karakter); if ((karakter >= 'a' && karakter <= 'z') || (karakter >= 'A' && karakter <= 'Z')) printf("%c adalah karakter alphabet\n", karakter); else if (karakter >= '0' && karakter <= '9') printf("%c adalah bilangan\n", karakter); else printf("%c adalah karakter khusus\n", karakter); getch(); }

6. Mengkategorikan bilangan bulat dengan memberinya tanda 1, 0 atau -1.

Dosen Ismael, S.Kom. M. Kom

34

Modul Algoritma dan Pemrograman

ATKP Medan

/* File program : bulat.cpp */ #include <stdio.h> #include <conio.h> main() { int bil, tanda; clrscr(); printf("Masukkan sebuah bilangan : "); scanf("%d", &bil); if (bil < 0) tanda = -1; else if (bil == 0) tanda = 0; else tanda = 1; printf("Bilangan %d memiliki tanda %d\n", bil, tanda); getch(); }

7. Implementasi program kalkulator sederhana menggunakan else-if.


/* File program : kalkulator1.cpp */ #include <stdio.h> #include <conio.h> main() { /* valid_operator diinisialisasi dg logika 1 */ int valid_operator = 1; char operator; float bil1, bil2, hasil; clrscr(); printf("Masukkan 2 buah bilangan dan sebuah operator\n"); printf("dengan format : bil1 operator bil2\n\n"); scanf("%f %c %f", &bil1, &operator, &bil2); if(operator == '*') hasil = bil1 * bil2; else if(operator == '/') hasil = bil1 / bil2; else if(operator == '+') hasil = bil1 + bil2; else if(operator == '-') hasil = bil1 - bil2; else valid_operator = 0; if(valid_operator) printf("%g %c %g is %g\n", bil1, operator, bil2, hasil); else printf("Invalid operator!\n"); getch(); }

Dosen Ismael, S.Kom. M. Kom

35

Modul Algoritma dan Pemrograman

ATKP Medan

8. Implementasi program kalkulator sederhana menggunakan switch - case.


/* File program : kalkulator2.c */ #include <stdio.h> #include <conio.h> main() { /* valid_operator diinisialisasi dg logika 1 */ int valid_operator = 1; char operator; float bil1, bil2, hasil; clrscr(); printf("Masukkan 2 buah bilangan dan sebuah operator\n"); printf("dengan format : bil1 operator bil2\n\n"); scanf("%f %c %f", &bil1, &operator, &bil2); switch(operator) { case '*' : hasil = bil1 * bil2; break; case '/' : hasil = bil1 / bil2; break; case '+' : hasil = bil1 + bil2; break; case '-' : hasil = bil1 - bil2; break; default : valid_operator = 0; } if(valid_operator) printf("%g %c %g is %g\n", bil1, operator, bil2,hasil); else printf("Invalid operator!\n"); getch(); }

6. LATIHAN a. Buatlah algoritma dan program untuk menerima input 2 buah bilangan bulat. Tampilkan hasil dari pembagian bilangan pertama dengan bilangan kedua, dengan ketelitian 3 desimal. Input : bil1 dan bil2 Output : hasil bagi bil1 dengan bil2 Nilai tambah : program bisa mengecek pembagian dengan nol, yaitu jika bilangan kedua adalah nol, maka tidak dilakukan proses pembagian, namun ditampilkan pesan kesalahannya (division by zero). b. Buatlah algoritma dan program untuk menampilkan menu dan melakukan proses sbb : Menu : 1. Menghitung volume kubus 2. Menghitung luas lingkaran 3. Menghitung volume silinder. Input : pilihan user (1, 2 atau 3) Jika pilihan = 1, maka : Input : panjang sisi kubus

Dosen Ismael, S.Kom. M. Kom

36

Modul Algoritma dan Pemrograman


3

ATKP Medan

Output : Volume kubus (vol = sisi ) Jika pilihan = 2, maka : Input : panjang jari-jari lingkaran
2

Output : Luas lingkaran (luas = 3.14 * r ) Jika pilihan = 3, maka : Input : panjang jari-jari lingkaran & tinggi silinder
2

Output : Volume silinder (vol = 3.14 * r * t) Jika pilihan selain 1, 2 & 3 (default) : Tampilkan pesan kesalahan. Petunjuk : gunakan switch-case
d. Kumpulkan hasil Program berikut #include<stdio.h> main() { char nip[9], nama[15]; int gol,st; float gapok,tjg,gk,pph,gb; clrscr(); printf("DAFTAR GAJI PEGAWAI\n"); printf("Inputkan NIP Pegawai :"); scanf("%s" ,&nip); printf("Inputkan Nama Pegawai : "); scanf("%s" ,&nama); printf("Inputkan Golongan (1-4) : "); scanf("%d" ,&gol); printf("Inputkan Status (1=Maried,2=single): "); scanf("%d" ,&st); if (gol==1) gapok=900000; if (gol==2) gapok=1250000; if (gol==3) gapok=1750000; if (gol==4) gapok=2500000; if (st==1) tjg=0.25*gapok; if (st==2) tjg=0.05*gapok; gk=gapok+tjg; pph=0.1*gapok; gb=gk-pph; printf("Gaji Pokok : %.2f\n",gapok); printf("Tunjangan : %.2f\n",tjg); printf("Gaji Kotor : %.2f\n",gk ); printf("PPh : %.2f\n",pph); printf("Gaji Bersih : %.2f\n",gb ); getch(); }

Dosen Ismael, S.Kom. M. Kom

37

Modul Algoritma dan Pemrograman

ATKP Medan

MODUL 6

1. 2. 3.

PERTEMUAN : 8 DAN 9 JUDUL TUJUAN a. b. c. d. : PENGULANGAN (LOOPING) WHILE DAN DO-WHILE :

Menjelaskan dan menggunakan proses pengulangan pernyataan while Menjelaskan dan menggunakan proses pengulangan pernyataan do-while Menjelaskan dan menggunakan pernyataan break Menjelaskan dan menggunakan pernyataan continue

4. DASAR TEORI 4.1. Pernyataan while Pada pernyataan ini, pengecekan terhadap loop dilakukan di bagian awal, apabila kondisi tidak benar maka pernyataan di dalam blok loop tidak dikerjakan sama sekali. - Sintak while(kondisi) pernyataan; Selama kondisi benar maka pernyataan dikerjakan Jika kondisi salah maka keluar dari blok loop Contoh : bil = 1; while (bil <= 15) { printf("%d\n", bil); bil = bil + 3; } Akan didapatkan hasil : 1 4 7 10 13

Dosen Ismael, S.Kom. M. Kom

38

Modul Algoritma dan Pemrograman

ATKP Medan

4.2. Pernyataan do-while Pada pernyataan ini, pengecekan terhadap loop dilakukan di bagian akhir. Walupun kondisi tidak benar maka pernyataan didalam blok loop pasti dijalankan (minimal 1 kali). - Sintak : do { pernyataan; } while(kondisi); Mula-mula pernyataan dijalankan, selanjutnya kondisi diuji jika benar dilakukan perulangan, jika salah maka keluar dari loop Contoh : bil = 1; do { printf("%d\n", bil); bil = bil + 3; } while (bil <= 15); Akan didapatkan hasil : 1 4 7 10 13 4.3. Pernyataan for Digunakan untuk membuat looping dengan jumlah perulangan yang ditentukan di awal. - Sintak: for(ungkapan1; ungkapan2; ungkapan3) pernyataan; Keterangan : Ungkapan1: digunakan untuk memberikan inisialisasi terhadap variabel pengendali loop. Ungkapan2: dipakai sebagai kondisi untuk keluar dari loop. Ungkapan3: dipakai sebagai pengatur kenaikan nilai variabel pengendali loop. Contoh : for (bil = 1; bil <= 15; bil += 3) printf("%d\n", bil); maka akan didapatkan hasil : 1 4 7

Dosen Ismael, S.Kom. M. Kom

39

Modul Algoritma dan Pemrograman

ATKP Medan

10 13 4.4. Pernyataan for( ; ; ) Kadang-kadang dijumpai adanya pernyataan for yang tidak mengandung bagian ungkapan yang lengkap (beberapa ungkapan dikosongkan). Hal ini disebabkan ungkapan-ungkapan tersebut sudah di-inisialisasi di luar for atau dapat dikerjakan di dalam loop itu sendiri. Contoh : for (bil=10;bil<=60;bil++) dapat diganti menjadi : bil=10; for( ; ; ) { bil++; if(bil==60) break; }

4.5 Pernyataan break Berfungsi untuk keluar dari loop yaitu untuk looping dengan while, dan do-while. Juga berfungsi untuk keluar dari struktur switch. - Sintak: break; Contoh : Pada loop: while(kondisi) { break; } statement-x; Pada switch: switch (ekspresi) {..... case konstanta-2: pernyataan-21;

Dosen Ismael, S.Kom. M. Kom

40

Modul Algoritma dan Pemrograman

ATKP Medan

break; ..... } Pernyataan Continue Pada loop: while(kondisi) { continue; } statemen-x; C. PERCOBAAN 1. Menghitung jumlah kata dan karakter dalam suatu kalimat /* File program : jumkar.c */ #include <stdio.h> main() { char kar; int jumkar = 0, jumspasi = 0; clrscr(); puts("Masukkan sebuah kalimat dan akhiri dengan ENTER."); puts("Saya akan menghitung jumlah karakter "); puts("pada kalimat tersebut.\n"); while((kar = getchar()) != '\n') { jumkar++; if (kar == ' ') jumspasi++; } printf("\nJumlah karakter = %d", jumkar); printf("\nJumlah SPASI = %d\n\n", jumspasi); getch(); } 2. Membalik angka menggunakan pernyataan while(). /* File program : loop9.c */ #include <stdio.h> main()

Dosen Ismael, S.Kom. M. Kom

41

Modul Algoritma dan Pemrograman

ATKP Medan

{ int bil, digit_kanan; printf("Masukkan bilangan yang mau dibalik : "); scanf("%d", &bil); printf("Hasil pembalikannya = "); while(bil != 0) { digit_kanan = bil % 10; printf("%d", digit_kanan); bil = bil / 10; } printf("\n"); getch(); } 3. Membaca tombol yang ditekan. /*File program : pilihan.c */ #include <stdio.h> main() { char pilihan; int sudah_benar = 0; /* diberi nilai salah lebih dahulu */ printf("Pilihlah Y atau T.\n"); /* program dilanjutkan jika tombol Y,y,T atau t ditekan */ while(!sudah_benar) { pilihan = getchar(); /* baca tombol */ sudah_benar = (pilihan == 'Y') || (pilihan == 'y')|| (pilihan == 'T') || (pilihan == 't'); getch(); } /* memberi keterangan tentang pilihan */ switch(pilihan) { case 'Y': case 'y': puts("\nPilihan anda adalah Y"); break; case 'T':

Dosen Ismael, S.Kom. M. Kom

42

Modul Algoritma dan Pemrograman

ATKP Medan

case 't': puts("\nPilihan anda adalah T"); } getch(); } 4. Membuat Tabel Faktorial menggunakan do-while /*menghitung nilai faktorial menggunakan do-while*/ #include<stdio.h> main() { int k,i=1,fak=1; printf("Masukkan nilai yang akan difaktorialkan = "); scanf("%d",&k); printf("\n\nTabel faktorial \n "); printf("%3s %7s","k","faktorial\n"); do { fak=fak*i; printf("%3d %7d \n",i,fak); i++; }while(i<=k); getch(); } 5. Menghitung harga total pembelian minuman /*menentukan total pembelian minuman */ #include<stdio.h> main() { int jumlah,kode; float harga,total; double bayar; char kar; printf("kode Jenis Harga\n"); printf("1 Milo Rp 10.000\n"); printf("2 Kopi Rp. 5000\n"); printf("3 Coca Cola Rp 2500\n"); printf("4 Orange Juice Rp 2000\n"); total=0; do { printf("Masukkan kode minuman : \n"); scanf("%d",&kode);

Dosen Ismael, S.Kom. M. Kom

43

Modul Algoritma dan Pemrograman

ATKP Medan

printf("Masukkan jumlah pesanan "); scanf("%d",&jumlah); if(kode==1) harga = (float) 10000*jumlah; else if(kode==2) harga = (float)5000*jumlah; else if(kode==3) harga = (float)2500*jumlah; else if(kode==4) harga = (float)2000*jumlah; total=total+harga; printf("Mau menambah pesanan ? (Y/T)\n"); scanf("%s",&kar); } while(kar=='Y'); if(total > 100000) bayar=total-(0.15*total); else bayar=total; printf("\nHarga yang harus dibayar = %10.2f\n",bayar); getch();} 6. Pemakaian for untuk membentuk deret naik. /* File program : for1.c */ #include <stdio.h> main() { int bilangan; for(bilangan = 20; bilangan <= 100; bilangan += 10) printf("%d\n", bilangan); } 7. Pemakaian for untuk membentuk deret turun /* File program : for2.c */ #include <stdio.h> main() { int bilangan; for (bilangan = 60; bilangan >= 10; bilangan -= 10) printf("%d\n", bilangan); } 8. Menghitung jumlah 200 triangular menggunakan for(). /* File program : triangular2.c */ #include <stdio.h>

Dosen Ismael, S.Kom. M. Kom

44

Modul Algoritma dan Pemrograman

ATKP Medan

main() { int n, jumlah = 0; for (n=1; n<=200; n++) jumlah = jumlah + n; printf("Jumlah 200 triangular adalah %d\n", jumlah); } 9. Membuat tabel dari jumlah triangular yang diinputkan /* File program : triangular3.c */ #include <stdio.h> main() { int n, bil, jumlah = 0; printf("Masukkan bilangan triangular : "); scanf("%d", &bil); printf("\nTABEL PENJUMLAHAN TRIANGULAR\n\n"); printf("%3s%10s\n\n","n","Jumlah"); for (n=1; n<=bil; n++) { jumlah = jumlah + n; printf("%3d %7d\n", n, jumlah); } } 10. Pemakaian break untuk keluar dari looping /* File program : tamat.c */ #include <stdio.h> main() { char kar; printf("Ketik sembarang kalimat"); printf(" dan akhiri dengan ENTER\n\n"); for ( ; ; ) { kar = getchar(); if(kar == '\n') break; } printf("Selesai\n"); } 11. Loop for bersarang untuk membuat tabel perkalian /* File program : tblkali.c */

Dosen Ismael, S.Kom. M. Kom

45

Modul Algoritma dan Pemrograman

ATKP Medan

#include <stdio.h> #define MAKS 8 main() { int baris, kolom, hasil_kali; for (baris = 1; baris <= MAKS; baris++) { for (kolom = 1; kolom <= MAKS; kolom++) { hasil_kali = baris * kolom; printf ("%2d", hasil_kali); } printf("\n"); /* pindah baris */ } } 12. Menampilkan bilangan ganjil antara 7 - 25 kecuali 15 menggunakan continue. /* File program : ganjil.c */ #include <stdio.h> main() { int x; for (x = 7; x <= 25; x += 2) { if (x == 15) continue; printf("%4d", x); } printf("\n"); } 6. LATIHAN 1. Buatlah algoritma dan program untuk menampilkan semua bilangan genap yang terletak antara 20 sampai dengan 200, dengan menggunakan While. 2. Buatlah algoritma dan program untuk menghitung jumlah angka dari suatu bilangan. Contohnya : Jumlah angka dari bilangan 3255 = 3 + 2 + 5 + 5 = 15 Jumlah angka dari bilangan 4589 = 4 + 5 + 8 + 9 = 26 dan sebagainya. 3. Buatlah algoritma dan program untuk menerima daftar nilai mahasiswa sbb : Input : - Jumlah data (n) - Nilai ke-1 s/d Nilai ke-n Output : - Nilai minimal

Dosen Ismael, S.Kom. M. Kom

46

Modul Algoritma dan Pemrograman

ATKP Medan

- Nilai maksimal - Nilai rata-rata (rata-rata = nilai total / jumlah data) (Petunjuk : Gunakan do-While dan seleksi kondisi dengan if)

Dosen Ismael, S.Kom. M. Kom

47

Anda mungkin juga menyukai