Makalah Algoritma Hasil Akhir.docx

  • Uploaded by: Dedi Setiadi
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Makalah Algoritma Hasil Akhir.docx as PDF for free.

More details

  • Words: 12,286
  • Pages: 87
Algoritma Dan Bahasa Pemograman C++ Di susun guna memenuhi tugas mata kuliah Dasar Algoritma Dan Pemograman

Dosen : Sri Mulyati S.Kom M.kom

Disusun oleh: Dedi Setiadi NIM 18201029

Universitas Muhamaddiyah Tangerang Fakultas Teknik Teknik Elektro 2018/2019

i

Kata Pengantar Puji syukur saya ucapkan kehadirat Allah SWT karena rahmat dan hidayat-NYA, sehingga saya dapat menyelesaikan makalah tentang “Algoritma Dan Bahasa Pemograman C++” sesuai dengan waktu yang telah ditetapkan . Makalah ini saya susun guna memenuhi tugas mata kuliah dasar algoritma dan pemograman. Saya berharap melalui tugas ini saya dapat lebih mengerti dan memahami tentang algoritma dan bahasa pemograman khusus nya bahasa pemograman c++, serta penerapannya dalam bidang teknik elektro. Saya juga berharap bagi pembaca makalah ini dapat menambah pengetahuan dan wawasan tentang algoritma dan pemograman bahasa c++. Saya juga ucapkan terima kasih kepada semua pihak yeng telah membantu saya dalam penyusunan makalah ini,kiranya makaalh ini dapat berguna dan bermanfaat bagi semua orang. Menyadari banyaknya kekurangan dalam penyusunan makalah ini, saya mengharapkan kritikan dan saran yang membangun bagi para pembaca untuk melengkapi kesalahan dan kekurangan makalah ini.

ii

DAFTAR ISI

Kata Pengantar ................................................................................................................. ii DAFTAR ISI .............................................................................................................................................. iii

BAB I PENDAHULUAN ................................................................................................. 1 1.1 Latar Belakang ...................................................................................................................................... 1 1.2 Tujuan Penulisan .................................................................................................................................. 2 1.3

Manfaat penulisan ........................................................................................................................ 2

BAB II ALGORITMA .................................................................................................... 3 2.2 Sejarah Singkat Algoritma ................................................................................................................... 3 2.3 Pengertian Algoritma ........................................................................................................................... 3 2.4 Bentuk Dasar Algoritma ...................................................................................................................... 3 2.5 Klasifikasi Algoritma ............................................................................................................................ 5 2.6 Aturan Dalam Penulisan Teks Algoritma ........................................................................................... 6 2.7 Format penulisan algoritma ................................................................................................................. 7

2.7.1 Simbol-simbol penulisan flowchart.................................................................. 12 2.7.2 Pseudocode ...................................................................................................... 13 BAB III Pemogaraman Bahasa c++ ............................................................................. 14 3.1 Sejarah c++ .......................................................................................................................................... 14 3.2 PENGERTIAN C++ ........................................................................................................................... 15 3.3 Pengenalan bahasa pemogaraman c++ ............................................................................................. 15 3.4 Pengenalan software Code block ....................................................................................................... 16

3.4.1 Cara memulai program c++ pada software code blok .................................... 16 3.5 STUKTUR BAHASA C++ ................................................................................................................. 19 3.6 TIPE KESALAHAN PADA C++....................................................................................................... 22 3.7 Library pada c++ ................................................................................................................................ 22 3.8 Tipe data pada c++ ............................................................................................................................. 33

3.8.1 Tipe Data Sederhana ........................................................................................ 34 3.8.2 Tipe Terstruktur .............................................................................................. 37 3.8.3 Tipe Pointer ...................................................................................................... 38 3.9 Variabel .............................................................................................................................................. 39 3.10 Konstanta.......................................................................................................................................... 45 3.11 Operator pada c++ ............................................................................................................................ 46

3.11.1 Operator aritmatika ...................................................................................... 46 3.11.2 Relational and Comparison Operators........................................................... 48

iii

3.11.3 Logical Operators(operator logika) ................................................................ 49 3.11.4 Bitwise Operators .......................................................................................... 49 3.11.5 Operator pendukung lainnya ......................................................................... 50 3.11.6 Tipe Pointer .................................................................................................... 51 3.12 Fungsi Pada Bahasa C++ ................................................................................................................. 52

3.12.1 Pengertian Fungsi ......................................................................................... 53 3.12.2 Deklarasi Fungsi ............................................................................................ 53 3.12.3 Posisi Penempatan Fungsi.............................................................................. 57 3.13 Pengondisian .................................................................................................................................... 60

3.13.1 Pengondisian if ............................................................................................... 60 3.13.2 Pengondisian if/Else ..................................................................................... 62 3.12.3 Pengondisian if/else ….if/else (pengondisian bersarang) .............................. 65 3.13.4 Switch/case .................................................................................................... 67 3.14 Perulangan......................................................................................................................................... 69

3.14.1 Perulangan For ............................................................................................... 69 3.14.2 Perulangan While ........................................................................................... 70 3.14.3 Perulangan Do..While .................................................................................... 72 3.15 BREAK, CONTINUE,AND GOTO ................................................................................................ 73

BAB IV Larik (Array) .................................................................................................... 74 4.1 Aray 1 Dimensi Pada Bahasa C++ ..................................................................................................... 74

4.1.1Pendeklarasian array 1 dimensi ........................................................................ 74 4.1.2Pengisian Larik .................................................................................................. 75 4.1.3 Menampilkan Larik........................................................................................... 75 Kode Program Menampilkan Larik 1 Dimensi Dengan Pengulangan ............ 76 4.2

Larik (Array) Multi Dimensi ..................................................................................................... 77

4.2.1 Pendeklarasian aray 2 dimensi ........................................................................ 77 4.2.2 Pengisian Larik Multidimensi ........................................................................... 77 4.2.3 Menampilkan Larik Multi Dimensi ................................................................... 78 BAB V Penutup ............................................................................................................... 81 Kesimpulan................................................................................................................................................ 81 SARAN ...................................................................................................................................................... 82

Daftar Pustaka .................................................................................................................. 83

iv

BAB I PENDAHULUAN 1.1 Latar Belakang Tanpa kita sadari dalam kehidupan sehari-hari kita sebenarnya selalu menemukan sebuah algoritma, misalnya kita dalam kehidupan sehari-hari kita akan memasak sebuah telur sebelum kita memasak pasti kita akan menyiapkan bahan-bahan,alat dan cara yang akan kita gunakan untuk memasak telur. Dari tahapan-tahapan itulah yang didalam bidang pemograman dinamakan algoritma. Kemudian dalam bidang pemograman banyak para programer menggunakan sebuah algoritma untuk membantu mereka dalam pembuatan sebuah program. Karena melalui sebuah algoritma gambaran proses program yang akan kita buat dapat terlihat , sehingga dalam pembuatan program nanti tipe-tipe data dan input output apa yang akan kita gunakan diprogram tersebut dapat kita tentukan dengan mudah dan kesalahan dalam program dapat diminimalisir. Sebelum kita membuat sebuah program kita harus tahu bahasa pemograman apa yang akan kita gunakan,karena dalam pemograman ada bebarapa bahasa yang bisa di gunakan disesuaikan dengan kebutuhan kita. Biasanya dalam dunia teknik khususnya bidang elektro bahasa yang populer adalah bahasa c dan c++. Disini saya akan bahas tentang pemograman menggunakan bahasa c++ baik cara penggunaanya , syintaknya, library-library yang ada pada bahasa c++ dan dalam penerapannya saya akan gunakan algoritma sebagai gambaran proses input outputnya.

Tangerang , 17 Oktober 2018 Dedi setiadi

1

1.2 Tujuan Penulisan A. B. C. D.

Memenuhi tugas mata kuliah dasar pemograman dan pemograman Mahasiswa mengerti dasar pemograman bahasa c++ Mahasiswa mengtahui library-library pada bahasa c++ Mahasiswa mengerti syintak penulisan bahasa c++

1.3 Manfaat penulisan A. Mahasiswa dapat memahami algoritma B. Mahasiswa mampu membuat program c++ C. Menambah wawasan dan ilmu pengetahuan tentang algoritma dan

pemograman bahasa c++

2

BAB II ALGORITMA 2.2 Sejarah Singkat Algoritma Algoritma ditemukan oleh seorang ilmuan timur tengah jaman peradaban islam bernama Abu Ja’far Muhammad Ibnu Musa Al-Khwarizmi (780-850 masehi) dan kata Algoritma (inggris: Algorithm) menurut sebagian ilmuan belakangan diambil dari namanya yakni Al-Khwarizmi . Dintinjau dari bahasa, Algoritma berasal dari kata algorism yang artinya perhitungan dalam angka arab namun para ahli sejarah kesulitan menemukan asal-usul istilah ini sampai akhirnya mereka menemukan bahwa Algorithm/Algoritma berasal dari nama penemunya seperti disebutkan diatas. Al-Khwarizmi Juga dikenal sebagai penemu Aljabar atau Algebra dan juga beliau ini adalah seorang ahli Astronomi dimasanya.

2.3 Pengertian Algoritma Algoritma secara singkat dapat didefinisikan sebagai Langkah-langkah Sistematis dan Logis dalam menyelesaikan suatu masalah. Dengan konsep Algoritma maka suatu permasalahan harus diselesaikan secara Sistematis, Logis dan bisa diuji benar atau salahnya. Karena Algoritma adalah sebuah konsep, maka tentu setiap orang bisa mempunyai Algoritma yang berbeda-beda terhadap masalah yang sama. Contoh ada suatu permasalahan X dan solusinya adalah Y, maka tiap orang bisa mendapatkan Y dengan Algoritma mereke masing-masing, tidak harus sama akan tetapi menghasilkan output yang sama yaitu Y. Pada prakteknya penerapan Algoritma haruslah efisien. Efisien disini artinya Cepat, Tepat dan Simple. Seperti kasus membuat Software komputer, Software yang dibuat dengan Algoritma yang baik akan menghasilkan software yang efisien, tidak banyak bugs dan tidak makan banyak memory yang tidak perlu misalnya. Penyajian Algoritma biasanya tertuang dalam bentuk Pseudocode, Flowchart, dan Diagram-diagram.

2.4 Bentuk Dasar Algoritma Algoritma sendiri mempunyai tiga 3 bentuk dasar, antara lain :

3

a.Algoritma Sekuensial (Sequence Algorithm) Sequence algorithm atau algoritma sekuensial merupakan algoritma yang langkah-langkahnya secara urut dari awal hingga akhir. Bentuk dari algoritma sekuensial ini salah satu contohnya seperti algoritma memasak air. Langkah demi langkah yang dijalankan harus urut dari atas sampai bawah. b. Algoritma Perulangan (Looping Algorithm) Looping algorithm atau algoritma perulangan merupakan suatu algoritma yang menjalankan beberapa langkah tertentu secara berulang-ulang atau looping. Pada masalah yang kita hadapi, ada pula sebuah langkah yang harus kita lakukan secara berulang-ulang. Contoh dari algoritma looping ini adalah algoritma menjemur pakaian: 1) Siapkan jemuran. 2) Ambil satu pakaian yang nantinya akan dijemur. 3) Peras pakaian tersebut terlebih dahulu. 4) Letakkan pakaian tersebut pada tiang jemuran. 5) Ulangi langkah dari 2 sampai 4 hingga pakaian habis. Dari algoritma di atas, dapat diketahui bahwa dari langkah 2 sampai 4 harus dilakukan secara berulang-ulang hingga pakaian habis. c. Algoritma Percabangan atau Bersyarat (Conditional Algorithm) Conditional algorithm atau algoritma bersyarat merupakan algoritma yang menjalankan langkah berikutnya apabila terdapat syarat yang sudah dapat dipenuhi. Berikut salah satu contoh dari algoritma bersyarat : 1) Siapkan panci. 2) Masukkan air secukupnya ke dalam panci. 3) tutup panci tersebut. 4) letakkan panci tersebut di atas kompor. 5) Hidupkan kompor. 6) Apabila air sudah mendidih, lalu matikan kompor. 7) Angkat panci tersebut dari kompor. Algoritma bersyarat atau contional algorithm terdapat pada langkah ke 6. Apabila air sudah mendidih, lalu matikan kompor. Sehingga apabila air tersebut belum mendidih, maka kompor tidak dimatikan. Kriteria Algoritma yang baik:

4

1. 2. 3. 4. 5.

Tepat, benar, sederhana, standar dan efektif Logis, terstruktur dan sistematis Semua operasi terdefinisi Semua proses harus berakhir setelah sejumlah langkah dilakukan Ditulis dengan bahasa yang standar dengan format pemrograman agar mudah untuk diimplementasikan dan tidak menimbulkan arti ganda.

“Suatu algoritma harus menghasilkan output yang tepat guna (efektif) dalam waktu yang relatif singkat dan penggunaan memori yang relatif sedikit (efisien) dengan langkah yang berhingga dan prosesnya berakhir baik dalam keadaaan diperoleh suatu solusi ataupun tidak adanya solusi.”

2.5 Klasifikasi Algoritma Salah satu cara untuk mengklasifikasikan algoritma yaitu dengan menggunakan cara implementasi. Beberapa klasifikasi dan fungsinya adalah sebagai berikut: a.Rekursi atau iterasi Algoritma rekursi ialah suatu algoritma yang memanggil dirinya sendiri secara berulang kali (looping) hingga pada kondisi tertentu dapat tercapai. Rekursi merupakan suatu metode umum dalam pemrograman fungsional. Algoritma iteratif memakai konstruksi berulang seperti pada pengulangan dan terkadang terdapat struktur data tambahan. Beberapa permasalahan secara alami dapat cocok dengan 1 implementasi atau yang lainnya. Contohnya : Menara Hanoi yang dikenal dengan implementasi rekursif. Pada setiap versi rekursif mempunyai adanya kesamaan (bisa lebih ataupun kurang kompleks) dengan versi iteratif, ataupun sebaliknya. b.Logical Algoritma dapat dilihat sebagai sebuah logika deduksi terkontrol. Pernyataan ini dapat diekspresikan sebagai: Algoritma = kontrol + logika. Komponen logika yang mengekspresikan aksioma dapat digunakan dalam komputasi serta komponen kontrol dalam menentukan cara-cara deduksi yang digunakan pada aksioma. Hal tersebut adalah dasar dari paradigma pemrograman logika. Dalam pemrograman, logika murni komponen kontrol ialah tetap serta algoritma yang ditentukan dengan memberikan hanya ada komponen logikanya. Daya tarik dari pendekatan logical ialah semantik elegan, sebuah perubahan yang ada dalam aksioma mempunyai perubahan dalam algoritma. c.Serial, paralel atau terdistribusi Pada umumnya, suatu algoritma menjalankan satu instruksi algoritma setiap waktu. Komputer tersebut dapat disebut dengan komputer serial. Rancangan algoritma yang digunakan bagi lingkungan tersebut ialah algoritma serial, terbalik dengan

5

algoritma terdistribusi atau algoritma paralel. Algoritma paralel menggunakan arsitektur komputer yang mana terdapat prosesor-prosesor dapat mengerjakan masalah pada waktu yang sama. Sedangkan algoritma terdistribusi menggunakan banyak mesin yang terhubung ke jaringan. Algoritma terdistribusi atau paralel membagi permasalahan ke banyak submasalah simetris maupun asimetris dan mengumpulkan hasil yang didapat kembali. Konsumsi dari sumber pada algoritma tersebut tidak hanya ada perputaran prosesor tapi juga terdapat daya komunikasi antara prosesor. Algoritma pengurutan dapat untuk diparalelkan secara efisien, namun terdapat biaya komunikasi yang sangat mahal. Algoritma iteratif pada umumnya dapat untuk diparalelkan. Ada juga permasalah yang tidak ada algoritma paralelnya, disebut dengan permasalahan serial lahiriah. d.Deterministik atau non-deterministik Terdapat juga algoritma determministik dan non-determenistik. Algoritma deterministik dapat menyelesaikan masalah-masalah dengan keputusan tepat disetiap langkah-langkah dari sebuah algoritma. Algoritma non-deterministik dapat menyelesaikan masalah-masalah lewat adanya penerkaan walaupun penerkaan tersebut pada umumnya lebih akurat dengan memakai heuristik. e.Tepat atau perkiraan Jika terdapat banyak algoritma dapat sampai ke solusi yang tepat, ada juga algoritma perkiraan yang mencari perkiraan terdekat dengan solusi benarnya. Perkiraan tersebut dapat memakai strategi deterministik ataupun acak. Algoritma yang seperti itu dapat mempunyai nilai lebih untuk banyak permasalahan yang sulit. f.Algoritma quantum Berjalan pada model realistik dari komputasi quantum. Istilah tersebut pada umumnya dipakai bagi algoritma yang pada dasarnya quantum, ataupun memakai fitur-fitur penting dari komputasi quantum seperti belitan quantum atau superposisi quantum.

2.6 Aturan Dalam Penulisan Teks Algoritma 1. Judul Algoritma : Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Nama sebaiknya singkat dan menggambarkan apa yang dilakukan oleh algoritma tersebut.

6

2. Deklarasi : Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama tersebut dapat berupa nama tetapan, peubah, tipe, prosedure, dan fungsi. 3. Deskripsi : Bagian ini berisi uraian langkah-langkah penyelesaian masalah yang ditulis dengan menggunakan notasi yang akan dijelaskan selanjutnya.

2.7 Format penulisan algoritma A. Deskriptif Algoritma bertipe Deskriptif maksudnya adalah algoritma yang ditulis dengan bahasa manusia sehari-hari (misalnya Bahasa Indonesia atau Bahasa Inggris). Setiap Langkahnya ditulis dalam satu kalimat atau lebih. Tidak ada aturan untuk penulisan algoritma bertipe Deskriptif ini. Semua kalimat ditulis dengan sistematis, jelas, terbatas dan berurutan. Contoh :

1. Algoritma menghitung_luas_segitiga 2. Untuk menghitung Luas Segitiga pertama Masukan nilai alas 3. Kemudian masukan nilai tinggiKemudian hitung dengan menggunakan rumus Luas = Alas * Tinggi / 2 4. Cetak Luas

B. Flowchart (diagram alur)

Algoritma bertipe Flow Chart adalah algoritma yang ditulis dalam bentuk diagram-diagram dengan anak panah sebagai penunjuk urutan langkah algoritmanya. Didalam Diagram terdapat Simbol-simbol yang mempunyai makna atau arti tersendiri. Contoh: : Flow chart menghitung_luas_segitiga

7

C.Pengambilan Keputusan Pengambilan keputusan perlu dilakukan apabila harus menentukan satu pilihan dari (minimal) dua pilihan yang ada. Dalam hal mengambil keputusan, perlu diketahui kondisi yang sedang dihadapi. Kondisi ini bisa berupa pernyataan boolean atau proses perbandingan. Dalam flowchart, simbol yang digunakan untuk pengambilan keputusan adalah berbentuk belah ketupat.

kondisi

Ya

Tidak

Gambar 2.1 Simbol pengambilan keputusan Simbol pengambilan keputusan hanya memiliki satu buah input dan dua buah output yang digunakan untuk memfasilitasi hasil dari pengujian kondisi, yaitu “Ya” atau “Tidak”, “True” atau “False”. Dalam melakukan pengujian kondisi, terdapat beberapa notasi yang dapat digunakan, misalnya menggunakan notasi relasional : Tabel 2.1 Notasi relasional >

Lebih besar dari

<

Kurang dari



Lebih besar atau sama dengan



Kurang dari atau sama dengan

8

<>

Tidak sama dengan

Dalam proses pengambilan keputusan, kadang kala terdapat beberapa syarat sekaligus. Untuk menangani hal ini dapat digunakan ekspresi aljabar boolean. Aljabar boolean merupakan kalkulus logika yang digunakan untuk menentukan nilai kebenaran dari suatu ekspresi logika. Teknik aljabar ini dikembangkan oleh George Boole pada tahun 1930an, sebagai penghargaan atas penemuannya maka aljabar ini diberi nama sesuai dengan nama belakang beliau. Dalam aljabar boolean terdapat tiga buah operasi dasar, yaitu : AND, OR, NOT ketiga-tiganya dapat digunakan secara independen atau dapat digunakan sekaligus. Keluaran (output) dari aljabar ini adalah nilai benar (TRUE) atau salah (FALSE). Berikut ini adalah tabel yang menunjukkan ketiga hasil operasi aljabar boolean : Tabel 2.2 Tabel Kebenaran AND X

Y

Hasil

T

T

T

T

F

F

F

T

F

F

F

F

Tabel 2.3 Tabel Kebenaran OR X

Y

Hasil

T

T

T

T

F

T

F

T

T

F

F

F

Tabel 2.4 Tabel Kebenaran OR X

Hasil

T

F

F

T

Contoh 2.1 Pemimpin sebuah perusahaan otomotif perlu menentukan besarnya bonus yang akan diberikan kepada para pegawainya yang bekerja sebagai account executive. Jika terdapat pegawai yang dalam bulan ini telah menjual mobil lebih dari dua unit, maka akan mendapatkan bonus sebesar Rp 1.000.000,- kemudian pegawai yang bisa menjual mobil tepat dua buah maka, akan mendapatkan bonus Rp 500.000,- namun jika pegawai 9

yang dalam bulan ini penjualannya kurang dari dua unit maka, pegawai tersebut tidak mendapatkan bonus. Jika kita gambarkan persoalan di atas menggunakan flowchart maka, akan menjadi seperti berikut :

START

Input ( jumlah penjualan

Ya

jumlah penjualan > 2 unit ?

Bonus = 1 . 000 . 000

Ya

)

Tidak

jumlah penjualan = 2 unit ?

Bonus = 500 . 000

Tidak

Bonus 0

=

Output ( Bonus )

END

Gambar 2.2 Flowchart penghitungan bonus

D. Pengulangan Proses Dalam beberapa kasus, seringkali terdapat proses yang harus dilakukan secara berulang-ulang, sebagai contoh yang paling sederhana adalah proses berjalan kaki. Untuk bisa mencapai tujuan, kita harus melangkahkan kaki secara berulang-ulang supaya dapat menempuh jarak tertentu dan akhirnya sampai tujuan. Pada kasus yang berhubungan dengan pengolahan informasi menggunakan komputer, terdapat proses-proses yang harus dilakukan secara berulang, mulai dari input data, proses dan output. Program yang baik adalah program yang bisa mengoptimalkan kinerja komputer, dengan cara menggunakan kembali program atau sekumpulan program dengan proses tertentu. Atau dengan kata lain terdapat bagian program yang dapat dipanggil/digunakan secara berulang-ulang. Hal ini akan mempermudah pekerjaan programmer dalam menghasilkan solusi.

10

Contoh 2.2 Seorang staff IT diminta untuk menampilkan data dari sebuah tabel dimana di dalamnya terdapat seratus baris data. Jika staff tersebut harus menampilkan satu per satu, tentunya akan membutuhkan banyak kode program dan program akan menjadi tidak efektif. Bagaimana cara menyelesaikan persoalan staff IT tersebut? Solusi: Dalam kasus ini yang diminta adalah bagaimana menampilkan data sebanyak 100 baris tanpa harus menggunakan proses output sebanyak 100 kali. Metode yang digunakan adalah pengulangan. Dalam proses pengulangan terdapat 3 (tiga) hal penting, yaitu:

 Inisialisasi (penentuan kondisi/nilai awal)  Proses  Kondisi berhenti Untuk kasus menampilkan data, dapat ditentukan bahwa jumlah baris yang akan dibaca adalah 100. Baris akan dibaca mulai dari baris pertama (baris = 1). Proses yang dilakukan adalah membaca dan menampilkan isinya ke layar (output). Pembacaan akan berhenti jika baris yang dibaca sudah mencapai baris ke-100. Jika digambarkan menggunakan flowchart maka, akan tampak sebagai berikut: START Jumlah baris = 100 Baris = 1

Baris < Jumlah baris ? Ya Output (Data [Baris ])

Baris = Baris + 1

Tidak

END

Gambar 2.3 Flowchart untuk menampilkan 100 baris data Dari gambar dapat dilihat bahwa proses output data hanya muncul satu kali, namun karena proses output dilakukan secara berulangulang maka, pembacaan tehadap 10 baris data dapat dilakukan.

11

2.7.1 Simbol-simbol penulisan flowchart

Jenis-jenis flowchart

A. Flowchart Sistem

Flowchart Sistem merupakan bagan yang menunjukkan alur kerja atau apa 12

yang sedang dikerjakan di dalam sistem secara keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada di dalam sistem. Dengan kata lain, flowchart ini merupakan deskripsi secara grafik dari urutan prosedur-prosedur yang terkombinasi yang membentuk suatu sistem. Flowchart Sistem terdiri dari data yang mengalir melalui sistem dan proses yang mentransformasikan data itu. Data dan proses dalam flowchart sistem dapat digambarkan secara online (dihubungkan langsung dengan komputer) atau offline (tidak dihubungkan langsung dengan komputer, misalnya mesin tik, cash register atau kalkulator). B. Flowchart paperwork

Flowchart Paperwork menelusuri alur dari data yang ditulis melalui sistem. Flowchart Paperwork sering disebut juga dengan Flowchart Dokumen. Kegunaan utamanya adalah untuk menelusuri alur form dan laporan sistem dari satu bagian ke bagian lain baik bagaimana alur form dan laporan diproses, dicatat dan disimpan. C. Flowchart schematik

Flowchart Skematik mirip dengan Flowchart Sistem yang menggambarkan suatu sistem atau prosedur. Flowchart Skematik ini bukan hanya menggunakan simbol-simbol flowchart standar, tetapi juga menggunakan gambar-gambar komputer, peripheral, form-form atau peralatan lain yang digunakan dalam sistem. Flowchart Skematik digunakan sebagai alat komunikasi antara analis sistem dengan seseorang yang tidak familiar dengan simbol-simbol flowchart yang konvensional. Pemakaian gambar sebagai ganti dari simbol-simbol flowchart akan menghemat waktu yang dibutuhkan oleh seseorang untuk mempelajari simbol abstrak sebelum dapat mengerti flowchart. Gambar-gambar ini mengurangi kemungkinan salah pengertian tentang sistem, hal ini disebabkan oleh ketidak-mengertian tentang simbol-simbol yang digunakan. Gambar-gambar juga memudahkan pengamat untuk mengerti segala sesuatu yang dimaksudkan oleh analis, sehingga hasilnya lebih menyenangkan dan tanpa ada salah pengertian.

2.7.2 Pseudocode Algoritma bertipe Pseudocode maksudnya adalah tiruan atau imitasi dari kode bahasa pemograman. Pada dasarnya, pseudocode merupakan suatu bahasa yang memungkinkan programer untuk berfikir terhadap permasalahan yang harus 13

dipecahkan tanpa harus memikirkan syntax dari bahasa pemograman yang tertentu. Jadi pseudocode digunakan untuk menganmbarkan logika urut-urutan dari perogram tanpa memandang bagaimana bahasa pemorogramannya. Contoh : Algoritma menghitung_luas_segitiga deklarasi:luas,alas,tinggi : integer deskripsi read (alas) read (tinggi) luas ← alas * tinggi / 2 write (luas)

BAB III Pemogaraman Bahasa c++ 3.1 Sejarah c++ Sejarah C++ Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan oleh Martin Richard. Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang sebelumnya menggunakan bahasa B dan BCPL. Dalam perkembangannya, bahasa C menjadi bahasa paling populer diantara bahasa lainnya, seperti PASCAL, BASIC, FORTRAN. Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National Standards Institute (ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal dengan nama ANSI C. Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories mulai mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa C++ mengalami dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T Laboratories, dinamakan cfront. C++ versi kuno ini hanya berupa kompiler yang menterjemahkan C++ menjadi bahasa C sebuah kompiler yang mampu mengubah C++ langsung menjadi bahasa mesin (assembly). Sejak evolusi ini, mulai tahun 1990 C++ menjadi bahasa berorientasi obyek yang digunakan oleh sebagian besar pemrogram professional.

14

3.2 PENGERTIAN C++ C++ adalah bahasa pemrograman komputer yang dibuat oleh Bjarne Stroustup, yang merupakan perkembangan dari bahasa C. Dikembangkan di Bong Labs (Dennis Ritchie) pada awal tahun 1070-an. Bahasa itu diturunkan dari bahasa sebelumnya, yaitu bahasa B. pada awalnya bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan pada sistem Unix. Pada perkembangannya, versi ANSI (American National Standart Institute) bahasa pemrograman C menjadi versi dominan. Meskipun versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem embedded. Bjarne Stroustrup pada laboraturium Bell pertama kali mengembangkan C++ pada awal 1980-an. Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk pemrograman tingkat rendah (low-level languages). Pada C++ ditambahkan konsep-konsep baru seperti class dengan sifat-sifatnya seperti inheritance dan overloading. Salah satu perbendaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep pemrograman berorientasi objek (Object Oriented Programming). Bahasa C++ mempunyai beberapa keunggulan : 1. Proses eksekusi program cepat. 2. Struktur bahasa yang baik (terstruktur). 3. Menyediakan kemampuan pemrograman berorientasi objek.

3.3 Pengenalan bahasa pemogaraman c++ Dalam pembuatan dan pengujian bahasa c++ ada banyak kompiler bahasa C++ yang beredar di pasaran. Sebagai contoh Microsoft Corporation sebagai perusahaan pembuat perangkat lunak yang sangat termasuk, mengeluarkan produk kompiler C++ berupa Microsoft C/C++ serta Visual C++. Adapun Borland International juga mengeluarkan Turbo C++ dan Borland C++. Tetapi disini saya menggunakan compiler code::block produk platform IDE V 17.12. software ini bukan hanya dapat digunakan sebagai pengujian program c++ dalam bentuk prompt tapi software ini dapat juga digunakan dalam memprogram mikrokontroler dan masih banyak lainnya.

15

3.4 Pengenalan software Code block Code block adalah adalah suatu software/program lingkungan pengembangan terpadu bebas, nirlaba,bersumber terbuka dan lintas platform. Program yang ditulis dalam C++ beserta Widgets untuk GUI-nya ini bisa digunakan bersama dengan berbagai macam kompilator, contohnya GCC dan Visual C++. Peralatannya yang tersedia tergantung dari "plugin" yang ada dipasang. Tampilan utama software code::block

3.4.1 Cara memulai program c++ pada software code blok a. pada dekstop klik menu file b. dari file pilih new

16

c. setelah new pilih projet d. dari file projet pilih file

e. setelah itu pilih icon c++

17

f.

setelah itu kilk icon kemudian click icon go

g. dan pada tampilan berikutnya pilih /klik tulisan c++ kemudian klik next

h. setelah itu kolom filename with full path berikan nama pada projet dan tentukan penyimpanan file hasil compile program kita nanti, setelh itu klik finish , setelah itu akan ditampilkan lembar kerja untuk kita memulai program c++.

18

Untuk menjalankan/ menguji program kita cukup tekan f9 pada keyboard/ bisa kita pilih ikon run pada jendela software code block. Jika program kita tidak ada eror maka hasil output program kita kan ditampilkan pada windows.

3.5 STUKTUR BAHASA C++ Program pertama pemula menulis sebuah program yang disebut “Hello World”, yang hanya mencetak “Hello World” ke layar komputer. Meskipun sangat sederhana, namun berisi semua komponen dasar program C++, sebagai berikut : //pemograman c++

#include using namespace std; int main() { cout << “Hello world.\n”; return 0; }. Jika dicompile maka hasil nya sebagai berikut:

19

Panel atas menunjukkan kode C++ untuk program ini. Panel bawah menunjukkan hasil ketika program dijalankan oleh komputer. Sedangkan angka yang berada disebelah kiri panel berfungsi untuk memudahkan kita dalam meneliti kesalahan pada program, dan bukan bagian dari program. Berikut penjelasan baris-baris pada kode tersebut : Baris 1 : //Program pertama saya di C++ Dua tanda garis miring menunjukkan bahwa kalimat selanjutnya adalah komentar yang dimasukkan oleh programmer tetapi tidak berpengaruh pada perilaku program. Dapat juga dengan menggunakan /* … komentar … */ Baris 2 : #include Baris yang dimulai dengan tanda pagar (#) merupakan pernyataan untuk menyertakan preprocessor. #include berarti memerintahkan kompiler untuk menyertakan bagian dari standar C++, yang dikenal sebagai header iostream, yang memungkinkan untuk melakukan standar operasi input dan output, seperti menulis output dari program ini (Hello Wordl!) ke layar. Baris 3 : Sebuah baris kosong Baris kosong tidak berpengaruh pada program. Mereka hanya meningkatkan pembacaan kode. Baris 4

: int main ()

20

Baris ini memulai deklarasi fungsi main. Fungsi main merupakan titik awal dimana seluruh program C++ akan mulai dieksekusi. Diletakkan diawal, ditengah, atau diakhir program, isi dari fungsi main akan selalu dieksekusi pertama kali. Pada dasarnya, seluruh program C++ memiliki fungsi main. Main diikuti oleh sepasang tanda kurung () karena merupakan fungsi. Pada C++, semua fungsi diikuti oleh sepasang tanda kurung () dimana, dapat berisi argumen didalamnya. Baris 5 dan 7 : { dan } Tanda kurung kurawal terbuka ( { ) pada baris 5 menunjukkan awal definisi fungsi main dan tanda kurung kurawal tertutup ( } ) pada baris 7 menunjukkan akhir. Kode-kode yang berada diantara tanda kurung kurawal ini adalah tubuh fungsi yang mendefinisikan apa yang akan terjadi ketika main dieksekusi. Baris 6 : std :: cout << “Hello World!”; Baris ini adalah pernyataan C++. Pernyataan ini memiliki tiga bagian : pertama std :: cout, yang mengidentifikasi output ke layar. Kedua, operator penyisipan ( << ), yang menunjukkan bahwa kalimat berikutnya agar dimasukkan ke std :: cout. Ketiga, kalimat “Hello World!” merupakan kalimat yang akan dimunculkan ke layar. Setiap pernyataan dalam C++ harus diakhiri dengan tanda semicolon (;) untuk memisahkan antara pernyataan yang satu dengan pernyataan lainnya. Aturan-aturan umum penulisan bahasa C++ : 1. Bahasa C++ bersifat case sensitive artinya huruf besar dan huruf kecil dibedakan. 2. Untuk memberi komentar pada suatu baris program, digunakan /* dan * atau // 3. Awal dan akhir fungsi utama diapit dengan tanda kurung kurawal. 4. Setiap pernyataan diakhiri dengan tanda semicolon (;). 5. Semua variable yang digunakan di dalam program wajib dideklarasikan terlebih dahulu.

21

3.6 TIPE KESALAHAN PADA C++ A. Kesalahan Sintaksis

Bahasa C++ hanya dapat dieksekusi, jika dan hanya jika program tersebut memiliki sintaksis yag telah sepenuhnya benar. Jika tidak, maka proses akan berhenti dan memberikan pesan kesalahan. Sintaksis menunjukkan struktur program dan aturannya. B.Kesalahan Run-time Kesalahan tipe kedua adalah kesalahan run-time, disebut demikian karena kesalahan ini tidak akan muncul sebelum program dijalankan. Kesalahan ini juga sering disebut dengan exception karena kesalahan ini biasanya menunjukkan sesuatu yang ganjil terjadi. C. Kesalahan Logika Kesalahan tipe ketiga adalah kesalahan logika atau semantik. Jika terjadi kesalahan tipe ini, maka program akan tetap berjalan dengan sukses tanpa pesan kesalahan. Namun, program tersebut tidak menjalankan program dengan benar atau tidak menjalankan program sesuai dengan maksud yang diinginkan programmer.

3.7 Library pada c++ Library c++ adalah kumpulan dari fungsi, classes, objek,konstanta, dan template yang digunakan untuk melakukan operasi operasi dasar dan beberapa fungsi lainnya. Beberapa library fungsi dan contohnya: 1. Library iostream

//pemograman c++

#include using namespace std; int main() { cout << “Hello world.\n”; return 0; }.

Hasil programnya

22

Kita ingin menampilan hello world pada layar maka kita harus menyertakan fungsi library iostream. Pada library iostream fungsi untuk menampilkan string/ output adalah cout. Beberapa fungsi pada iostream adalah - Cin Merupakan fungsi masukan(digunakan untuk menyimpan data dalam suatu variabel). Bentuk umum: cin>>var x; - Cout Merupakan fungsi keluaran(digunakan untuk menampilkan data ataupun tulisan). Bentuk umum: cout<<”tulisan”; atau cout< Digunakan untuk menampilakan perintah: - getch berfungsi untuk menahan tampilan. Bentuk umum: getch(); - clrscr berfungsi untuk membersihkan layar. Bentuk umum: clrscr; - getche Fungsi dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan 23

karakter yang dimasukan ditampilkan di layar. - Putch Akan menampilkan karakter ASCII dari nilai x ke layer monitor tanpa memindahkan letak kursor ke baris berikutnya. - Clreol Fungsi ini digunakan untuk membersihkan layar mulai dari posisi kursor hingga kolom terakhir, posisi kursor tiak berubah. - Gotoxy Fungsi gotoxy digunakan untuk memindahkan kursor ke kolom x, baris y. - Wherex Fungsi wherex digunakan untuk mengembalikan posisi kolom kursor. - Wherey Fungsi wherey digunakan untuk mengembalikan posisi baris kursor. - Window Fungsi window digunakan untuk mendefinisikan sebuah window berdasarkan koordinat kiri atas dan kanan bawah. Contoh program yang menggunakan header file iostream.h dan conio.h : #include #include Main () { int z; //mendefinisikan var z sebagai integer cout << "masukkan sebuah nilai : " <<endl; //tulisan yang akan ditampilkan cin >> z; //memasukkan sebuah nilai yang akan disimpan dalam var z clrscr ; //membersihkan perintah sebelumnya pada layar Cout <<"nilai yang anda masukkan adalah : "<< z ; //meampilkan isi var z getch (); } //digunakan untuk menahan tampilan

24

3. library <Stdio.h> Digunakan untuk menampilan perintah : - Printf Merupakan fungsi keluaran. Bentuk umum: printf (“tulisan”); - Scanf Merupakan fungsi masukan. Bentuk umum: scanf (“%c”, &karakter); - Gets Fungsi inputan yang bisa membaca spasi. Bentuk umum: gets(var x); Contoh program yang menggunakan header file stdio.h :

#include <stdio.h> #include

main(){ int a,t,luas; //deklarasi variable dengan tipe data integer printf("Masukkan alas : "); //menampilkan tulisan scanf("%i",&a); //menyimpan nilai printf("Masukkan tinggi : "); scanf("%i",&t); luas=0.5*(a*t); //rumus aritmatika printf("Luas segitiga tersebut adalah : %i",luas); getch(); }. Hasil programnya sebagai berikut: 25

4. library <String.h> - Strcpy Digunakan untuk menyailn nilai string - Strlen Untuk mengetahui panjang string - Strupr Digunakan untuk membuat string menjadi capital. - Strcmp Digunakan untuk membandingkan dua buah string. Hasil dari fungsi ini bertipe integer dengan nilai: Negative, jika string pertama kurang dari string kedua. Nol, jika string pertama sama dengan string kedua Positif, jika string pertama lebih besar dari string kedua Bentuk umum : strcmp(string1, string2); - strlwr Digunakan untuk mengubah huruf menjadi kecil semua.Bentuk umum : strlwr(string); - strcat Digunakan untuk menggabungkan string.Bentuk umum : strcat(string1,string2); Contoh program yang menggunakan header file string.h : #include <stdio.h> #include #include <string.h> #include

main() { char huruf[20]; char pindah[20]; clrscr();

26

cout<<"Masukkan Sembarang Kata = "; gets(huruf); /* Proses */ strcpy(pindah, huruf);

cout<<"Pemindahannya = "<
-

strlen()

Berfungsi untuk memperoleh jumlah karakter dari suatu string. Bentuk umum : strlen(string); #include <stdio.h> #include #include <string.h> #include main() { char kata[20]; clrscr(); cout<<"Masukan Sembarang Kata = "; gets(kata); strrev(kata); cout<<"Hasil Perubahan = "<
27

-

strcat() Berfungsi untuk menambahkan string sumber ke bagian akhir dari string tujuan. Bentuk umum : strcat(tujuan, sumber);

#include <stdio.h> #include #include <string.h> #include #include main() { char a1[20]; char a2[20]; clrscr();

cout<<"Masukkan Kata - 1= "; cin>>a1; cout<<"Masukkan Kata - 2= "; cin>>a2; strcat(a1, a2); cout<<"Hasil Penggabungannya "<
28

5.

library <Math.h rel="nofollow">

Digunakan untuk menampilan perintah : - Sqrt Fungsi akar - Pow Fungsi pangkat - Sin (), cos(), tan() Masing-masing digunakan untuk menghitung nilai sinus, cosinus dan tangens dari suatu sudut. Bentuk umum: Sin(sudut); Cos(sudut); Tan(sudut); - Max Digunakan untuk menghitung hasil pembagian dan sisa pembagian. Bentuk umum: max(bilangan1, bilangan2); - Min Digunakan untuk menentukan bilangan terkecil dari dua buah bilangan. Bentuk umum : min(bilangan1, bilangan2). Contoh program yang menggunakan header file math.h : #include #include <math.h> #include main() { int nilai,a,b; cout<<"nilai : "; cin>>nilai; // perintah menginputkan nilai b=pow(nilai,2); //memangkatkan var nilai dengan pangkat 2 std::cout<
29

std::cout<
6. library <Windows rel="nofollow"> Digunakan untuk menampilan perintah : - System Digunakan untuk memberi warna. Berikut contoh programnya yang menggunakan header file windows : #include #include <windows.h> #include main() { system ("color 27"); //angka 2 memberi warna background hijau dan angka 7 mewarnai tulisan jadi putih cout<<"Latian"; //menampilkan tulisan “Latihan” pada layar getch(); }. 7. Library Digunakan untuk menampilan perintah : - Setiosflags() Digunakan untuk mengatur jumlah digit decimal dibelakang koma Contoh program yang menggunakan header file iomanip.h :

30

#include #include #include using namespace std; main() { float a,b,c; cout<<"masukkan angka pertama: "; cin>>a; cout<<"masukkan angka pembagi: "; cin>>b; c=a/b; cout<<"hasil : " <<setiosflags(ios::fixed) <<setprecision(2)<
8. library <Stdlib.h> Digunakan untuk menampilan perintah : - Atof() Digunakan untuk mengonfersi nilai string menjadi bilangan bertipe double. Bentuk umum : atof(char x); - Atoi() Digunakan untuk merubah tipe data string menjadi integer. - Pow Digunakan untuk pemangkatan suatu bilangan.Bentuk umum : pow(bilangan, pangkat). Contoh program yang menggunakan header file stdlib.h : #include <stdlib.h>

31

#include <stdio> #include #include main () { char angka1[3]; // var angka1 bertipe data char int a1; // var a1 bertipe data integer cout<<"Masukan Angka 1 = ";cin>>angka1; a1 = atoi(angka1); //var angka1 yang bertipe data char dimasukkan dalam var a1 yang bertipe data int printf("Angka 1 = %s dan a1 = %d",angka1,a1); getch (); }. g. Dan library-library lainnya adalah 9.#Include Berisi menegaskan makro, digunakan untuk membantu mendeteksi kesalahan logis dan jenis lain dari bug dalam debugging versi dari sebuah program. 10. #Include Sebuah set fungsi untuk memanipulasi bilangan kompleks. 11. #Include Mendefinisikan set fungsi yang digunakan untuk mengklasifikasikan karakter dengan jenis mereka atau untuk mengkonversi antara atas dan huruf kecil dengan cara yang independen dari yang digunakan set karakter (biasanya ASCII atau salah satu ekstensi, meskipun implementasi menggunakan EBCDIC juga dikenal). 12. #Include <errno.h> Untuk menguji kode kesalahan dilaporkan oleh fungsi perpustakaan. 13. #Include fenv.h> Mendefinisikan sebuah set fungsi untuk mengendalikan floating-point lingkungan. 14. #Include Mendefinisikan konstanta makro menentukan implementasi khusus properti dari floating-point library. 15. #Include Mendefinisikan tipe bilangan bulat lebar yang tepat. 16. #Include Mendefinisikan macro beberapa yang menerapkan cara-cara alternatif untuk mengekspresikan token beberapa standar. Untuk pemrograman di ISO 646 set varian karakter.

32

17. #Include Mendefinisikan konstanta makro menentukan implementasi khusus properti dari tipe integer. 18. #Include Mendefinisikan fungsi lokalisasi. 19. #Include <Setjmp.h> Demikianlah macro setjmp dan longjmp , yang digunakan untuk non-lokal keluar. 20. #Include <Signal.h> Mendefinisikan fungsi sinyal penanganan. 21. #Include <Stdalign.h> Untuk query dan menentukan keselarasan benda. 22. #Include <Stdarg.h> Untuk mengakses berbagai jumlah argumen dilewatkan ke fungsi. 23. #Include <stdatomic.h> Untuk operasi atom pada data dibagi antara benang. 24. #Include <stdbool.h> Mendefinisikan tipe data Boolean. 25. #Include <stddef.h> Mendefinisikan jenis beberapa berguna dan macro. 26. #Include <stdint.h> Mendefinisikan tipe bilangan bulat lebar yang tepat. 27. #Include <stdnoreturn.h> Untuk menentukan non-kembali fungsi. 28. #Include Mendefinisikan jenis generik-fungsi matematika. 29. #Include Mendefinisikan fungsi untuk mengelola beberapa Threads serta mutexes dan variable kondisi. 30. #include Mendefinisikan fungsi tanggal dan waktu penanganan. 31.#include Jenis dan fungsi untuk memanipulasi Unicode karakter. 32.#include <Wchar.h> Mendefinisikan fungsi penanganan string lebar. 33.#include <Wctype.h> Mendefinisikan set fungsi yang digunakan untuk mengklasifikasikan karakter lebar jenis mereka atau untuk mengkonversi antara huruf besar dan kecil.

3.8 Tipe data pada c++ Tipe data adalah suatu media atau memori pada komputer yang digunakan untuk menampung data. Oleh karena itu sebuah program C++ ditujukan untuk memanipulasi data. Sebuah program yang didesain untuk menghtung gajih karyawan akan menjumlahkan, mengurangi, mengalikan, dan membagi angkaangka, dan beberapa angka dipakai untuk merepresentasikan jam kerja dan

33

gaji. Sama halnya, sebuah program yang didesain untuk mengalgabetisasi sebuah kelas dipakai untuk memanipulasi nama-nama. Dengan kondisi seperti itu tentu tidak akan mengurangi atau mengalikan nama-nama. Oleh karena itu, C++ mengelompokan data menjadi beberapa tipe data, dan hanya operasi-operasi tertentu yang dapat diterapkan pada tipe data tertentu. Meskipun dengan kondisi seperti ini agak menyulitkan untuk mempelajari C++, akan tetapi C++ telah menyediakan mekanisme pemeriksaan buit-in untuk mengantisipasi kesalahan tipe data. Tipe data C++ dikelompokan ke dalam tiga kategori dan diilustrasikan pada gambar 1.2.

Gambar 1.2 Tipe Data C++

3.8.1 Tipe Data Sederhana Tipe data sederhana merupakan tipe data fundamental dalam C++ karena ia menjadi blok pembangun untuk tipe data terstruktur. Ada tiga katagori tipe data sederhana :

34

1) Integral, yang merupakan tipe data yang berkaitan dengan integer (bilangan bulat), atau angka-angka tanpa titik desimal.

2) Titik-titik mengambang, yang merupakan tipe data yang berkaitan dengan angka-angka desimal.

3) Enumerasi, yang merupakan tipe data yang diciptakan oleh pengguna.

1.) Integral Untuk data-data angka yang tidak mengandung angka di belakang koma. Tipe data yang termasuk kategori ini adalah: Tabel 1.1 Kategori Tipe Data Integral Tipe Data

Ukuran (dalam bit)

Int

16 atau 32

Unsigned Int

16 atau 32

Signed Int

16 atau 32

Short Int

16

Unsigned Short Int

16

Signed Short Int

16

Long int

32

Signed Long Int

32

Unsigned Long Int

32

2.) Titik-titik mengambang Untuk merepresentasikan angka riil, C++ menggunakan notasi ilmiah (saintifik) yang dikenal dengan notasi titik-titik mengambang. Tabel 1.2 menunjukan bagaimana C++ menampilkan beberapa angka riil menggunakan salah satu interpretasi notasi titik-titik mengambang. Pada notasi titik mengambang C++, huruf E adalah singkatan dari eksponen.

35

Tabel 1.2 Contoh angka riil yang ditampilkan menggunakan notasi titik

mengambang C++

Angka Riil

Notasi Titik Mengambang C++

75.924

7.592400E1

0.18

1.800000E-1

0.0000453

4.53000E-5

-1.482

-1.482000E0

7800.0

7.800000E3

Ada tiga tipe data di C++ untuk memanipulasi angka desimal : float, double, dan long double. Seperti pada kasus tipe data integral, tipe data float, double, dan long double memiliki himpunan nilai yang berbeda-beda. Tipe data float dipakai dalam C++ untuk merepresentasikan sembarang nilai riil antara -3.4E + 38 dan 3.4E + 38. Memori yang dialokasikan untuk sebuah nilai bertipe data float adalah 4 byte. Tipe data double dipakai dalam C++ untuk merepresentasikan sembarang nilai riil antara -1.7E308 dan 1.7E + 308. Memori yang dialokasikan untuk sebuah nilai bertipe data double adalah 8 byte. Nilai maksimum dan nilai minimum dari tipe data float dan double bergantung pada sistem. Untuk menemukan kedua nilai pada sistem tertentu, anda dapat memeriksa dokumen kompiler anda. Selain perbedaan himpunan nilai, ada satu lagi perbedaan antara tipe data float dan double. Jumlah maksimum dari digit signfikan, yaitu jumlah digit setelah titik desimal, pada nilai float adalah enam atau tujuh dijit. Jumlah maksimum dari dijit signifikan pada nilai bertipe double adalah 15. Jumlah maksimum dijit signifikan disebut dengan kepresisian. Kadangkala nilai bertipe float disebut dengan kepresisian tunggal, sedangkan nilai bertipe double dinamakan dengan kepresisian ganda.

36

3) Enumerasi Enumerasi adalah tipe data yang nilainya terbatas pada nilai-nilai yang telah didefinisikan saja dan nilainya bersifat pasti. Misalnya untuk mendefenisikan tipe jenis kelamin, nama hari, warna primer.

3.8.2 Tipe Terstruktur Tipe terstruktur adalah tipe yang berbentuk record. Record di susun oleh satu atau lebih field. Field menyimpan data tipe dasar tertentu atau tipe data berbentuk yang lain yang sudah di definisikan sebelumnya. Nama record didefinisikan sendiri oleh pemrograman. 1.Array Array adalah tipe terstruktur yang mempunyai komponen dalam jumlah tetap dan setiap komponen mempunyai tipe data yang sama.Posisi masing-masing komponen dalam larik dinyatakan sebagai nomor index. 2.Record Dengan tipe data Record,dapat dikumpulkan beberapa item data yang masingmasing mempunyai tipe data yang berbedabeda.Masing-masing item data disebut field.Record terdiri dari kumpulan field yang dapat mengadung berbeda tipe. 3.Set Tipe set merupakan suatau himpunan yang berisi nilai (anggota).Set dalam pemrograman sangat mirip dengan himpunan dalam ilmu matematik.

37

3.8.3 Tipe Pointer Pointer adalah built-in type di C dan C++, dimana C++ mengambil konsep pointer dari C. Pointer sebenarnya sangat terkait dengan "Abstract C Machine", yaitu model mesin abstrak dimana program C bekerja. Abstract C Machine adalah mesin abstrak dimana mesin tersebut memiliki prosesor untuk menginterpretasikan stream of instruction, dan addressable memory yang terbagi kedalam 3 bagian : automatic memory, static memory dan free memory. Addressable memory adalah memory yang konten-nya dapat diambil jika diketahui alamatnya. Lebih jauh lagi, terdapat asumsi bahwa konten memori dapat di ambil dengan waktu konstan, tidak peduli berapa nilai alamat.Hal ini disebut dengan Random Access Memory. Menurut Frieyadie. 2007. Edisi Revisi Buku Pemrograman C++ dengan Borland C++ 5.02. Pointer adalah sebuah variabel yang berisi alamat lain. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah. Arti pointer dalam bahasa sehari-hari adalah putunjuk atau bisa di bilang penentu atau pointer secara sederhana bisa diartikan sebagai tipe data yang nilainya mengarah pada nilai yang terdapat pada sebuah area memori (alamat memori).namun dalam Dalam bahasa C, Pointer bisa berfungsi sebagai variabel arrayberarti pointer sebagai penunjuk elemen array ke-0 dalam variabel C. Kegunaan pointer yang utama adalah untuk menyimpan alamat memori dari sebuah variabel (data type atau object dari class). Selain menyimpan alamat dari variabel, pointer juga dapat digunakan untuk menyimpan alamat dari sebuah fungsi (function pointer).

38

Function pointer telah digunakan sejak dikenalkannya bahasa C,dan banyak digunakan untuk sebuah fungsi callback atau untuk meningkatkan readability dari sebuah code. Anda dapat memperlakukan function pointer seperti pointer biasa (pointer ke datatype/object), anda dapat menyimpan,mengirimkan, merubah address, atau meng-evaluasi address dari pointer ke fungsi ini dengan sifat tambahan anda dapat memanggil fungsi yang ditunjuk oleh function pointer. Pointer bisa juga berguna untuk :

1. Mengirimkan “Parameter yang berupa variabel” ke dalam fungsi, artinya nilai variabel bisa diubah di dalam fungsi.

2. Untuk membuat variabel DINAMIS (Bukan variabel Statis) Penggunaan function pointer pada C++ dibatasi, yaitu function pointer tidak boleh menunjuk pada function yang berada dalam sebuah class (class member function) kecuali function tersebut berjenis static.

3.9 Variabel Variabel adalah tempat dimana kita dapat mengisi atau mengosongkan nilainya dan memanggil kembali apabila dibutuhkan. Setiap variabel akan mempunyai nama (identifier) dan nilai. Contoh Nama variabel dan nilai. Username Nama

= =

“joni” “Al-Khawarizmi”

Harga

=

2500

HargaTotal = 34000 username, Nama, harga dan HargaTotal adalah nama dari

variabel, sedangkan “joni”, “Al-Khawarizmi”, 2500 dan 34000

39

adalah nilai dari masing-masing variabel. Nilai-nilai ini akan tersimpan di dalam nama variabel masing-masing sepanjang tidak kita rubah. Pada sebagian besar bahasa pemrograman, variabel harus dideklarasikan lebih dulu untuk mempermudah compiler bekerja. Apabila variabel tidak dideklarasikan maka setiap kali compiler bertemu dengan variabel baru pada kode program akan terjadi waktu tunda karena compiler harus membuat variabel baru. Hal ini memperlambat proses kerja compiler. Bahkan pada beberapa bahasa pemrograman, compiler akan menolak untuk melanjutkan proses kompilasi.

Pemberian nama variabel harus mengikuti aturan yang ditetapkan oleh bahasa pemrograman yang kita gunakan. Namun secara umum ada aturan yang berlaku untuk hampir semua bahasa pemrograman. Aturan-aturan tersebut yaitu: •

Nama variabel harus diawali dengan huruf.



Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan karakter underscore (_).



Nama variabel tidak boleh mengandung karakter-karakter khusus, seperti : .,+, -, *, /, <, >, &, (, ) dan lain-lain.



Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa pemrograman

Penanaman Yang Benar Penanaman Yang Salah Namasiswa

nama siswa (salah karena menggunakan spasi)

40

XY12

12X (salah karena dimulai dengan angka)

harga_total

harga.total (salah karena menggunakan karakter .)

JenisMotor

Jenis Motor (salah karena menggunakan spasi)

Alamatrumah

for (salah karena menggunakan kata kunci bahasa pemrograman)

Penggolongan Variabel berdasarkan Kelas Penyimpanan (Storage Class) 1. Variabel lokal Variabel lokal adalah variabel yang dideklarasikan di dalam fungsi. Sifat-sifat variabel lokal :



Secara otomatis akan diciptakan ketika fungsi dipanggil dan akan lenyap ketika proses eksekusi terhadap fungsi berakhir.



Hanya dikenal dideklarasikan.



Tidak ada inisialisasi secara otomatis (saat variabel

oleh

fungsi

tempat

variabel

diciptakan nilainya random).



Dideklarasikan dengan menambahkan kata “auto” (opsional). Contoh Variabel local:

#include #include<stdio.h> #include lokal(); main() { int a = 15; clrscr(); cout<<"Pemanggilan Variabel Lokal"<<endl; cout<<"\nNilai didalam funsi main() = : "<
41

{ int a = 10; cout<<"\nNilai a didalam fungsi lokal() = "<
2. Variabel global (eksternal) Variabel global (eksternal) adalah variabel yang dideklarasikan di luar fungsi. Sifat-sifat variabel global :



Dikenal (dapat diakses) oleh semua fungsi.



Jika tidak diberi nilai awal secara otomatis berisi nilai nol.



Dideklarasikan dengan menambahkan kata “extern” (opsional).

Contoh Variabel global: #include #include<stdio.h> #include int a = 6; //--> deklarasi variabel eksternal void lokal(); void main() { clrscr(); cout<<"Penggunaan Variabel Eksternal"<<endl; cout<<"\nNilai didalam funsi main() = : "< pemanggilan fungsi local cout<<"\nNilai Setelah penggilan fungsi local() = "; cout<
42

3. Variabel Statis Variabel statis adalah variabel yang nilainya tetap dan bisa berupa variable lokal (internal) dan variabel global (eksternal). Sifat-sifat variabel statis :



Jika bersifat internal (lokal), maka variabel hanya dikenal oleh fungsi tempat variabel dideklarasikan.



Jika bersifat eksternal (global), maka variabel dapat dipergunakan oleh semua fungsi yang terletak pada program yang sama.



Nilai variabel statis tidak akan hilang walau eksekusi terhadap fungsi telah berakhir.



Inisialisasi hanya perlu dilakukan sekali saja, yaitu pada saat fungsi dipanggil pertama kali.



Jika tidak diberi nilai awal secara otomatis berisi nilai nol.



Dideklarasikan dengan menambahkan kata “static”. Contoh variable statis:

43

#include #include<stdio.h> #include walah(); //--> prototipe fungsi walah main() { int k = 5; clrscr(); walah(); walah(); cout<<"\nNilai K didalam fungsi main() = "< deklarasi variabel statis k += 4; cout<<"\nNilai K didalam fungsi() = "<
4. Variabel Register Variabel Register adalah variabel yang nilainya disimpan dalam resister dan bukan dalam memori RAM. Sifat-sifat variabel register :



Hanya dapat diterapkan pada variabel lokal yang bertipe int dan char.



Digunakan untuk mengendalikan proses perulangan (looping).

44



Proses perulangan akan lebih cepat karena variabel register

memiliki

kecepatan

yang

lebih

tinggi

dibandingkan variabel biasa.



Dideklarasikan dengan menambahkan kata “register”.

3.10 Konstanta Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak berubahubah, maka sebuah varibel lebih baik diperlakukan sebagai konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta diberikan langsung di bagian deklarasi konstanta. Sedangkan untuk variabel biasanya hanya ditentukan nama variabel dan tipe datanya tanpa isian nilai data. Aturan penamaan variabel juga berlaku untuk penamaan konstanta. Demikian juga aturan penetapan tipe data. konstanta dibagi menjadi 4: •

Konstanta integer, berupa integer biasa, integer panjang (long int) dan integer tak bertanda (unsigned integer). Nilainya dapat berupa desimal, oktal atau hexadesimal.



Konstanta floating point, dapat mengandung nilai pecahan, yang biasa ditulis dalam bentuk pecahan biasa maupun bentuk eksponensial dan selalu dinyatakan dalam double, kecuali jika diakhiri dengan F atau f (menyatakan konstanta float).



Konstanta string, merupakan deretan karakter yang diawali dan diakhiri dengan tanda petik ganda (“…“). Juga dapat mengandung karakter yang menggunakan tanda \ yang disebut karakter escape (escape sequence).



Konstanta karakter, selalu diawali dan diakhiri dengan tanda petik tunggal

45

(‘…’). Beberapa konstanta karakter dapat diawali dengan tanda \ (penempatannya setelah tanda petik tunggal). Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan konstanta pi akan lebih memudahkan penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang-ulang.

3.11 Operator pada c++ Operator adalah simbol khusus yang biasa dilibatkan dalam pembuatan program untuk melakukan sesuatu operasi matematika maupun manipulasi logika. Pada dasarnya, ada tiga jenis operator dalam pemrograman C++: 

Operator Unary - operator yang dikenakan untuk satu buah nilai (operand).  Operator Binary - operator yang dikenakan untuk dua buah nilai (operand).  Operator Ternary - operator yang dikenakan untuk tiga buah nilai (operand).  Operator Assignment - adalah operator yang digunakan untuk memasukkan atau mengisikan nilai kedalam suatu variabel. Dengan catatan jika kita hanya melihat dari jumlah operand. Berikut ini adalah contohnya: - c //Binary a + b //Unary (a ? b : c) //Ternary . 3.11.1 Operator aritmatika Operator aritmatika operator yang digunakan dalam pemmogran c++ sebagai penjumalahan, perkalian , pemabagian dan sisa bagi suatu bilangan. Jenis jenis operator aritmatika dan contohnya:

46

Simbol

Contoh

Aritmatika

c=a+b n=n+2 +

Penjumlahan c=a-b n=n-2



Pengurangan

++

++i

Kenaikan(increment, sama dengan i=i+1

–i

Penurunan(decrement, sama dengan i=i-1



c=a*b n=n*2 *

Perkalian c=a/b n=n/2

/

Pembagian sisa=a % b

% =

+=

-=

*=

Menghasilkan sisa dari pembagian. A dan b bilangan bulat

a=b

Pemberian nilai

a+=2

Penambahan suatu nilai pada suatu variabel yang sudah ada sebelumnya. Sama dengan a=a+2

a-=2

Pengurangan suatu nilai pada suatu variabel yang sudah ada sebelumnya. Sama dengan a=a-2

a*=2

Pengalian suatu nilai pada suatu variabel yang sudah ada sebelumnya. Sama dengan a=a*2

47

a/=2

Pembagian dari suatu nilai pada suatu variabel yang sudah ada sebelumnya. Sama dengan a=a/2

%=

a/=2

Sisa dari suatu nilai pada suatu variabel yang sudah ada sebelumnya yang dibagi oleh nilai atau variabel lain. Sama dengan a=a/2

*

*pointer

Menunjukkan isi dari pointer

/=

3.11.2 Relational and Comparison Operators Operator selanjutnya adalah operator relasi - operator ini akan banyak kita gunakan dalam suatu statement bersyarat yang selalu menghasilkan nilai true atau false. Nantinya kita akan sering menggunakan operator ini untuk menentukan kondisi. Operator

Keterangan

== Sama dengan != Tidak sama dengan > Lebih dari < Kurang dari >= Lebih dari atau sama dengan <= Kurang dari atau sama dengan Operator ini digunakan untuk menguji hubungan antara nilai dan atau variabel. Berikut contoh penggunaanya dalam program: #include using namespace std; void main() { bool nilai; nilai = 3 > 2 ; // hasil ungkapan : benar cout << "Nilai = " << nilai; nilai = 2 > 3 ; // hasil ungkapan : salah cout << "Nilai = " << nilai; } 48

Dan berikut adalah hasil akhirnya:  

Nilai = 1 Nilai = 0.

3.11.3 Logical Operators(operator logika) Operator Logika adalah operator yang digunakan untuk membandingkan dua nilai variabel atau lebih. Hasil dari operasi ini adalah nilai boolean true atau false. Operator

Keterangan

&&

AND - Jika semua operand bernilai benar (TRUE) maka kondisi bernilai benar.

||

OR - Jika salah satu operand bernilai benar (TRUE) maka kondisi bernilai benar.

!

NOT - Digunakan untuk membalik kondisi. Jika kondisi benar (TRUE) maka akan berubah menjadi salah (FALSE), begitu pula sebaliknya.

3 4

Berikut adalah contoh penggunaanya: ( (5 == 5) && (3 > 6) ) // Hasil = false, karena ( true && false ) ( (5 == 5) || (3 > 6) ) // Hasil = true, karena ( true || false ).

3.11.4 Bitwise Operators Operator bitwise adalah operator yang digunakan untuk memanipulasi bitbit nilai data yang ada di memori. Operator ini hanya dapat digunakan untuk tipe data:

49

  

char int long int

Untuk operator bitwise dalam bentuk bit, dilakukan dalam bit per bit (binary).

& AND Bitwise AND | OR Bitwise inclusive OR ^ NOT Unary complement (bit inversion) << SHL Shift bits left >> SHR Shift bits right Tabel kebenanaran: p

q

p&q

p|q

p^q

0 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 0 0 1 1 Jika kita asumsikan memiliki nilai A = 63 dan B = 13, mari kita ubah menjadi biner:

A = 0011 1100 B = 0000 1101 Sehingga akan menjadi:

A&B = 0000 1100 A|B = 0011 1101 A^B = 0011 0001 ~A = 1100 0011

3.11.5 Operator pendukung lainnya Berikut adalah operator lainnya yang didukung oleh bahasa C++: Operator sizeof

Keterangan Untuk mengembalikan nilai dari ukuran variabel. Contoh sizeof(a), dimana ‘a’ adalah integer maka akan mengembalikan nilai 4

50

Operator . (dot) and -> (arrow) Cast *

Keterangan Operator member yang digunakan untuk mereferensikan member class, structures, dll. Untuk mengkonversi suatu data ke tipe data lain. Contohnya int(2.2000) akan menjadi 2 Digunakan sebagai operator pointer

3.11.6 Tipe Pointer Pointer adalah built-in type di C dan C++, dimana C++ mengambil konsep pointer dari C. Pointer sebenarnya sangat terkait dengan "Abstract C Machine", yaitu model mesin abstrak dimana program C bekerja. Abstract C Machine adalah mesin abstrak dimana mesin tersebut memiliki prosesor untuk menginterpretasikan stream of instruction, dan addressable memory yang terbagi kedalam 3 bagian : automatic memory, static memory dan free memory. Addressable memory adalah memory yang konten-nya dapat diambil jika diketahui alamatnya. Lebih jauh lagi, terdapat asumsi bahwa konten memori dapat di ambil dengan waktu konstan, tidak peduli berapa nilai alamat.Hal ini disebut dengan Random Access Memory. Menurut Frieyadie. 2007. Edisi Revisi Buku Pemrograman C++ dengan Borland C++ 5.02. Pointer adalah sebuah variabel yang berisi alamat lain. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah. Arti pointer dalam bahasa sehari-hari adalah putunjuk atau bisa di bilang penentu atau pointer secara sederhana bisa diartikan sebagai tipe data yang nilainya mengarah pada nilai yang terdapat pada sebuah area memori (alamat memori).namun dalam Dalam bahasa C, Pointer bisa berfungsi sebagai variabel arrayberarti pointer sebagai penunjuk elemen array ke-0 dalam variabel C.

51

Kegunaan pointer yang utama adalah untuk menyimpan alamat memori dari sebuah variabel (data type atau object dari class). Selain menyimpan alamat dari variabel, pointer juga dapat digunakan untuk menyimpan alamat dari sebuah fungsi (function pointer). Function pointer telah digunakan sejak dikenalkannya bahasa C,dan banyak digunakan untuk sebuah fungsi callback atau untuk meningkatkan readability dari sebuah code. Anda dapat memperlakukan function pointer seperti pointer biasa (pointer ke datatype/object), anda dapat menyimpan,mengirimkan, merubah address, atau meng-evaluasi address dari pointer ke fungsi ini dengan sifat tambahan anda dapat memanggil fungsi yang ditunjuk oleh function pointer. Pointer bisa juga berguna untuk :

1. Mengirimkan “Parameter yang berupa variabel” ke dalam fungsi, artinya nilai variabel bisa diubah di dalam fungsi.

2. Untuk membuat variabel DINAMIS (Bukan variabel Statis) Penggunaan function pointer pada C++ dibatasi, yaitu function pointer tidak boleh menunjuk pada function yang berada dalam sebuah class (class member function) kecuali function tersebut berjenis static.

3.12 Fungsi Pada Bahasa C++ Fungsi merupakan suatu bagian dari program yang dimaksudkan untuk mengerjakan suatu tugas tertentu dan letaknya terpisah dari program yang memanggilnya. Fungsi pada bahasa C++ dapat dibagi menjadi dua, yaitu 1. 2.

fungsi pustaka atau fungsi yang telah tersedia dalam Turbo C . fungsi yang didefinisikan atau dibuat oleh programmer.

52

Beberapa Contoh dari fungsi pustaka adalah stdio.h, stdlib.h, string.h, ctype.h, math.h dan time.h. Pada bagian ini akan dipelajari bagaimana membuat fungsi sendiri.

3.12.1 Pengertian Fungsi Fungsi adalah sebuah blok program tersendiri yang merupakan bagian dari program lain yang lebih besar. Fungsi dapat dipanggil oleh program utamanya ataupun dipanggil oleh fungsi lain yang juga merupakan bagian dari program utamanya (Masih dalam 1 file kode program). Sebuah program bisa terdiri dari satu atau lebih fungsi, dan satu program utama. Fungsi memiliki hasil keluaran, maksudnya adalah setiap fungsi akan memberikan nilai balikan terhadap pemanggilnya.Berikut ini ilustrasi dari fungsi terlihat pada gambar berikut ini:

Ilustrasi Fungsi

Fungsi banyak digunakan pada pemrogram C++ dengan tujuan: 



Program menjadi terstruktur, sehingga mudah dipahami dan mudah dikembangkan. Pemisahan langkah-langkah detail ke dalam bentuk satu atau lebih fungsi, maka fungsi utama menjadi lebih pendek, jelas dan mudah dimengerti. Penggunaan fungsi dapat mengurangi pengulangan atau duplikasi kode. Langkah-langkah program yang sama dan dipakai berulang-ulang di program dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi. Selanjutnya bagian program yang membutuhkan langkah-langkah ini tidak perlu selalu menuliskannya, tetapi cukup memanggil fungsi tersebut.

3.12.2 Deklarasi Fungsi Fungsi memiliki logika pemikiran sebagai sebuah mesin pelempar hasil sesuai dengan pesanan yang diminta. Hasil keluaran harus sesuai dengan pesanan, misalnya tipe data yang dipesan adalah integer maka nilai yang dilemparkan keluar fungsi harus berupa integer. Berikut ini adalah cara mendeklarasikan sebuah fungsi pada bahasa C: tipe_data_keluaran nama_fungsi (tipe_data_1 nama_variabel_1,..., tipe_data_n nama_variabe_n){ Proses return variabel_keluaran }

53

Keterangan : 



 

tipe_data_keluaran, dapat berupa salah satu tipe data C, misalnya char atau int. Kalo penentu tipe tidak disebutkan maka dianggap bertipe int.nama_fungsi, ini merupakan nama dari fungsi yang digunakan untuk memanggil fungsi tersebut.tipe_data_1 nama_variabel_1, merupakan parameter yang diterima oleh fungsi untuk diolah pada proses yang terdapat didalam fungsi. proses, berisi deklarasi variabel (jika ada) dan program yang akan melakukan tugas yang akan diberikan kepada fungsi. return variabel_keluaran, nilai balikan yang akan dikirim oleh fungsi kepada yang memanggil fungsi tersebut.

Contoh deklarasi fungsi pada bahasa C: int nilaiTerkecil (int a, int b, int c){ int keluaran; //proses return keluaran; }

Adapun cara memanggil fungsi yang sudah dibuat adalah sebagai berikut: minimal = nilaiTerkecil(3,8,5);

Hal-hal yang perlu diperhatikan dalam penggunaan fungsi :

1. Kalau tipe fungsi tidak disebutkan, maka akan dianggap sebagai fungis dengan nilai keluaran bertipe integer.

2. Untuk fungsi yang memiliki keluaran bertipe bukan integer, maka diperlukan pendefinisian penentu tipe fungsi.

3. Untuk fungsi yang tidak mempunyai nilai keluaran maka dimasukkan ke dalam tipe void

4. Pernyataan yang diberikan untuk memberikan nilai akhir fungsi berupa pernyataan return.

5. Suatu fungsi dapat menghasilkan nilai balik bagi fungsi pemanggilnya. Parameter Formal dan Parameter Aktual

54

1. Parameter Formal adalah variabel yang ada pada daftar parameter dalam definisi fungsi.

2. Parameter Aktual adalah variabel (parameter) yang dipakai dalam pemanggilan fungsi.

Cara Melewatkan Parameter Cara melewatkan suatu parameter dalam Bahasa C ada dua cara yaitu : 1. Pemanggilan Secara Nilai (Call by Value)



Call by value akan menyalin nilai dari parameter aktual ke parameter formal.



Yang dikirimkan ke fungsi adalah nilai dari datanya, bukan alamat memori letak dari datanya.



Fungsi

yang

menerima

kiriman

nilai

akan

menyimpannya di alamat terpisah dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi.



Perubahan nilai di fungsi (parameter formal) tidak akan merubah

nilai

asli

di

bagian

program

yang

memanggilnya.



Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil.



Pengiriman suatu nilai dapat dilakukan untuk suatu ungkapan, tidak hanya untuk sebuah variabel, elemen array atau konstanta saja.

Contoh Call by Value #include #include<stdio.h> #include tambah(int m, int n); main() { int a, b; 55

a = 2; b = 5; clrscr(); cout<<"Nilai Sebelum Fungsi Digunakan "; cout<<"\na = "< #include<stdio.h> #include tambah(int *c, int *d); main() { int a, b; a = 2; b = 5; clrscr(); cout<<"Nilai Sebelum Pemanggilan Fungsi"; cout<<"\na = "<
hasil programnya sebagai berikut:

Contoh fungsi diletakan sebelum program utama: #include <stdio.h rel="nofollow">

58

int hasilTambah(int x,int y, int z){ int penjumlahan; penjumlahan = x + y + z; return penjumlahan; } int hasilKurang(int x,int y, int z){ int pengurangan; pengurangan = x - y - z; return pengurangan; } int main() { printf(" ====== ARRAY 2 DIMENSI =========\n"); printf(" ======= DEDI SETIADI ===========\n"); int a,b,c,hasil; a = 1;

b = 2;

c = 3;

hasil = hasilTambah(a, b, c); printf("Hasil penjumlahan : %dn", hasil); hasil = hasilKurang(a, b, c); printf("Hasil pengurangan : %dn", hasil);}. Hasil programnya sebagai berikut:

59

3.13 Pengondisian

3.13.1 Pengondisian if Statement if di gunakan untuk menyatakan suatu kondisi (bersyarat). Jika suatu nilai sesuai dengan kondisi if maka kerjakan statement didalam if. Bentuk ini menyatakan :



jika kondisi yang diseleksi adalah benar (bernilai logika = 1), maka pernyataan yang mengikutinya akan diproses.



Sebaliknya, jika kondisi yang diseleksi adalah tidak benar (bernilai logika = 0), maka pernyataan yang mengikutinya tidak akan diproses.

Mengenai kodisi harus ditulis diantara tanda kurung, sedangkan pernyataan dapat berupa sebuah pernyataan tunggal, pernyataan majemuk atau pernyataan kosong. Diagram alir dapat dilihat seperti gambar 3.1

kondisi

salah

benar pernyataan

Contoh statement if #include <stdio.h> int main () { printf(" \n\n\n\r+++++++++ DEDI SETIADI ++++++++++\n\r"); printf(" ++++++++ PENGULANGAN FOR++++++++++\n\r"); int nilai; printf(" masukan nilai tidak lebih besar dari 10\n"); scanf(" %d",&nilai);

60

if(nilai<=10)//kondisi 1 { printf(" angka yang anda masukan = %d",nilai);//statement jika kondisi if terpenuhi printf(" \n\n angka %d merupakan angka kurang dari 10\n\n",nilai); } if(nilai>10)// kondisi 2 { printf(" jawaban anda tidak sesui dengan pertanyaan\n\n\r");//statement yang dikerjakan jika kondisi 2 yang terpenuhi printf(" angka %d lebih besar dari 10\n\n",nilai); } return 0; }

Keterangan program Dalam program diatas saya menggunakan 2 fungsi if dimana fungsi tersebut digunakan sebagai pernyataan jika input tersebut sesuai dengan apa yang program minta. Pada contoh diatas saya buat program nya meminta agar kita memasukan nilai yang lebih kurang dari 10, jika input yang dimasukan adalah kurang dari 10 maka kondisi if 1 akan dikerjakan dan output ststment nya akan di kerjakan. Tapi jika yang dimasukan adalah nilai yang lebih dari nilai 10 maka statement if ke-2 lah yang akan di kerjakan. Jika kita lihat dalam compiler programnya maka hasilnya sebagai berikut:

61

Hasil jika angka yang masukan sesuai dengan kondisi if 1.

Hasil jika angka yang saya masukan tidak sesuai dengan kondisi if 1, melainkan kondisi if ke 2.

3.13.2 Pengondisian if/Else Pada dasarnya if/else sama dengan program di atas namun didalam programnya kita gunakan pada kondisi ke-2 kita gunakan else.

kondisi

salah

benar pernyataan-1

pernyataan-2

Arti dari pernyataan if-else :



Jika kondisi benar, maka pernyataan-1 dijalankan.



Sedangkan bila kondisi bernilai salah, maka pernyataaan-2 yang dijalankan. Masing-masing pernyataan-1 dan pernyataan-2 dapat berupa sebuah pernyataan tunggal, pernyataan majemuk ataupun pernyataan kosong.

62

Bentuk Umumnya Dua Kasus :

if (kondisi) pernyataan1 ; else pernyataan2; Untuk pernyataan if yang diikuti dengan pernyataan majemuk, bentuknya adalah sebagai berikut : if (kondisi) { /* tanda awal pernyataan majemuk*/ pernyataan-1; pernyataan–2; pernyataan-n; }

/* tanda akhir pernyataan majemuk */

Pernyataan-pernyataan yang berada dalam tanda kurung { dan } akan dijalankan hanya bila kondisi if bernilai benar. Pernyataan1 dilaksanakan jika dan hanya jika kondisi yang diinginkan terpenuhi, jika tidak, lakukan pernyataan2. Jika Anda tidak mempergunakan pernyataan else program tidak akan error, namun jika anda mempergunakan pernyataan else tanpa didahului pernyataan if, maka program akan error. Jika pernyataan1 atau pernyataan2 hanya terdiri dari satu baris, maka tanda { } tidak diperlukan, namun jika lebih maka diperlukan. Contoh penggunaan pernyataan if-else adalah untuk menyeleksi nilai suatu bilangan pembagi. Jika nilai bilangan pembagi adalah nol, maka hasil pembagian dengan nilai nol akan mendapatkan hasil tak berhingga. Jika ditemui nilai pembaginya nol, maka proses pembagian tidak akan dilakukan.

maka programnya sebagai berikut:

63

#include <stdio.h> int main () { printf(" \n\n\n\r+++++++++ DEDI SETIADI ++++++++++\n\r"); printf(" ++++++++ PENGULANGAN FOR++++++++++\n\r"); int nilai; printf(" masukan nilai tidak lebih besar dari 10\n"); scanf(" %d",&nilai); if(nilai<=10)//kondisi 1 { printf(" angka yang anda masukan = %d",nilai);//pernyataan yang akan dikerjakan jika benar printf(" \n\n angka %d merupakan angka kurang dari 10\n\n",nilai); } else // kondisi 2 menggunakan else { printf(" jawaban anda tidak sesui dengan pertanyaan\n\n\r");//pernyataan yang dikerjakan jika kondisi salah printf(" angka %d lebih besar dari 10\n\n",nilai); } return 0; }. Jika program di atas dijalankan maka hasilnya sebagai berikut:

64

Keterangan program: Dapat dilihat pada program diatas pada dasar nya tidak ada yang berubah secara signifikan dari isi dan dan tipe data yang digunakan , hanya saja pada program ini perbedaan hanya pada pernyataan karena pada kondisi if/else ini minimal mempunyai 2 kondisi jika benar maka pernyataan pertama(pernyataan if) yang akan dilakasanakan jika salah maka pernyataan ke-2 lah (pernyataan else)yang akan di kerjakan, jika input yang saya masukan sesuai dengan kondisi if maka pernyataan if lah yang akan di kerjakan, namun jika pada input yang saya masukan salah maka pernyataan else lah yang akan di kerjakan.

3.12.3 Pengondisian if/else ….if/else (pengondisian bersarang) Dalam pengondisian besarang if/else…..if/else minimal terdapat 3 pernyataan. Pada struktur ini setiap kondisi diperiksa ,jika kondisi tersebut benar maka pernaytaan yang berada pada ruang lingkupnya yang dijalankan, namun bila semua kondisi tidak benar pernaytaan bagian terakhir yang dijalankan. Secara umum, bentuk dari pernyataan ini adalah sebagai berikut : if (kondisi-1) if (kondisi-2) if(kondisi-n) pernyataan; else pernyataan; else pernyataan; else pernyataan;



Kondisi yang akan diseleksi pertama kali adalah kondisi yang terluar (kondisi1). Jika kondisi-1 bernilai salah, maka statemen else yang terluar (pasangan if yang bersangkutan) yang akan diproses.

Jika else (pasangannya tsb) tidak ditulis, maka

penyeleksian kondisi akan dihentikan.



Jika kondisi-1 bernilai benar, maka kondisi berikutnya yang lebih dalam (kondisi-2) akan diseleksi. Jika kondisi-2 bernilai salah, maka statemen else pasangan dari if yang bersangkutan yang

65

akan diproses. Jika else (untuk kondisi-2) tidak ditulis, maka penyeleksian kondisi akan dihentikan.



Dengan cara yang sama, penyeleksian kondisi akan dilakukan sampai dengan kondisi-n, jika kondisi-kondisi sebelumnya bernilai benar.

Bentuk dari program nya adalah sebagai berikut:

else if(kondisi2) pernyataan; else if(kondisi3) pernyataan; .... else if(kondisi ke-n) pernyataan; else pernyata an; contoh program nya sebagai berikut:

#include using namespace std; #include int main() { float uts,uas,tugas,rata2; char grade; cout<<"====================="<<endl; cout<<"===|Masukan Nilai|==="<<endl;

66

cout<<"====================="<<endl; cout<<"nilai uts : ";cin>>uts; cout<<"nilai uas : ";cin>>uas; cout<<"nilai tugas : ";cin>>tugas; rata2=(uts+uas+tugas)/3; cout<<"====================="<<endl; if(rata2>85){ grade='A';} else if(rata2>75) { grade='B';} else if(rata2>65) { grade='C';} else if(rata2>50) { grade='D';} else{ grade='E';} cout<<"rata-rata : "<
3.13.4 Switch/case Perintah switch adalah perintah pemilihan yang melibatkan banyak kondisi, biasanya dipakai untuk menggantikan perintah if yang terlalu banyak. bentuk umum dari switch adalah sebgai berikut switch(kondisi) { case konstanta_1: statment; break; case

67

konstanta_2: statment; break; case konstanta_3: statment; break; case konstanta_n: statment; break; default: statment_lainnya; break; }. Contoh programnya sebagai berikut: #include<stdio.h> int data; int main() { printf("-------- DEDI SETIADI-------\n\r"); printf("-------- TEHNIK ELEKTRO---------\n\n"); printf("----statement SWITCH CASE -------\n\n\r"); printf("selamat datang\n\r"); printf("Masukan NO terakhir dari NIM anda untuk melihat profil anda\n"); scanf("%d",&data);//MENAMPUNG DATA INPUTAN NIM switch(data) { case 001:printf(" printf(" february 1993\n\r"); printf(" Manajemen\n\r"); printf(" break; case 002: printf(" printf(" 1997\n\r"); printf(" Manajemen\n\r"); printf(" break; case 003 : printf(" printf(" maret 1995\n\r"); printf(" Manajemen\n\r"); printf(" break; case 004 : printf(" printf(" 1993\n\r"); printf(" Manajemen\n\r");

Nama = Andi\r\n"); Tempat tanggal lahir = Tangerang, 19 Prodi

= Teknik

kelas/semester

= S/1\n\r");

Nama = Muhamad\r\n"); Tempat tanggal lahir = BOGOR, 10 November Prodi

= Teknik

kelas/semester

= S/1\n\r");

Nama = Rohman\r\n"); Tempat tanggal lahir = TASIKMALAYA, 23 Prodi

= Teknik

kelas/semester

= S/1\n\r");

Nama = Ridho\r\n"); Tempat tanggal lahir = JAKARTA, 12 juni Prodi

= Teknik

68

YANG KITA CASE*/

printf(" kelas/semester = S/1\n\r"); break;/*MENGELUARKAN OUTPUT SESUAI DENGAN INPUTAN MASUKAN SESUAI DENGAN DATA ALAMAT

} return 0; }. Hasil programnya sebgai berikut:

3.14 Perulangan Perulangan atau looping adalah perintah yang digunakan untuk melakukan proses secara berulangulang jika suatu kondisi dipenuhi atau sebaliknya. dalam bahasa C++ ada tiga macam perulangan, yaitu FOR, WHILE dan DO..WHILE

3.14.1 Perulangan For printah FOR digunakan untuk mengulang statment yang sudah pasti berapa kali pengulangannya dengan kata lain berapa kali statment akan diulangi sudah diketahui dan didefinisikan kedalam perintah FOR. bentuk umum dari perintah FOR adalah sebgai berikut for (variabel_awal=nilai_awal;kondisi;iterasi)

69

{ pernyataan/statment; }

Contoh Penulisan : #include <stdio.h> int main () { printf("+++++++++ DEDI SETIADI ++++++++++\n\r"); printf("++++++++ PENGULANGAN FOR++++++++++\n\r"); int nilai; for(nilai = 1; nilai <= 10; nilai++){ printf("Nilai: %d\n", nilai); } return 0;};. apabila program dijalankan akan menghasilkan output sebagi berikut:

3.14.2 Perulangan While Struktur jenis ini melakukan pengecekan kondisi pada bagian awal, artinya jika kondisi terpenuhi maka perulangan baru akan dijalankan namun jika kondisi tidak terpenuhi maka perulangan tidak akan pernah dijalankan. bentuk umum dari perintah ini adalah sebagai berikut

70

nama_variabel_while=nilai_awal; while(kondisi) { statment_yang_akan_diulangi; nama_variabel_while++/--; }. Contoh programnya sebagai berikut:

#include using namespace std; int jawaban; int hasil=60; char data1[20]; int main() { cout<<"+++DEDI SETIADI+++++++++\n\n++++++ PERINTAH WHILE +++++"; cout<<"\n\n\rberapakah hasil dari 20 + 40 \n"; cin>>jawaban; while(jawaban!=hasil) { cout<<"hasil salah"; cout<<"\n\n\rberapakah hasil dari 20 + 40 \n"; cin>>jawaban; } return 0;}. Maka hasil programnya sebagi berikut:

71

3.14.3 Perulangan Do..While Perintah do..while pada dasarnya sama dengan perintah while, namun untuk perintah do..while, pengecekan kondisi dilakukan setelah statment yang akan diulangi. bentuk umum dari do..while adalah sebagai berikut nama_variabel=nilai_awal; do{ statment_yang_akan_diulangi; nama_variabel--/++; }while(kondisi). Contoh programnya adalah sebagai berikut:

//mencari luas segitiga /*menggunkan rumus sebenar nya dengan tipe data int dan library stdio*/ #include <stdio.h>//header / library int data;// DEKALARASI char identitas[30]; int jawaban; int main()//FNGSI UTAMA/ MAIN FUNGSI {jawaban=30;//MEMBERIKAN NILAI PADA VARIABEL JAWABAN BERUPA DATA INTEGER

printf("masukkan nama anda \n\r"); gets(identitas); printf("berapakah hasil dari 6 x 5\n\r"); scanf("%d",&data); do { printf("jawaban anda salah\n\r"); printf("masukan kembali jawaban anda\n\r"); scanf("%d",&data); }while(jawaban!=data); return 0; }. Hasil programnnya adalah sebagai berikut:

72

3.15 BREAK, CONTINUE,AND GOTO break, continue, & goto statements digunakan untuk merubah alur eksekusi untuk statement pengulangan for, while, do/while, and switch . 

Break

break statement digunakan untuk keluar dari pengulangan for, while, do/while, atau switch . break keluar dari blok pengulangan dimana dia berada saja. 

Continue

continue akan menyebabkan program memulai iterasi berikutnya dari statemen pengulangan while, do/while, atau for loop. continue sama seperti break pengulangan akan berhenti pada point yg dituju (di skip), bedanya continue akan memulai loop lagi, dari atas, sedangkan break memaksa keluar dari loop / pengulangan. Contoh programnya sebagai berikut: #include <stdio.h> int main(void) { int i; for(i=0; i<12; i++) { if(i==3) continue; printf("%d\n",i); if(i>=10) { break; } } }. Hasil programnya dalah sebagai berikut:

73

BAB IV Larik (Array) 4.1 Aray 1 Dimensi Pada Bahasa C++ Teori Dasar  Array (larik) ialah penampung sejumlah data sejenis (homogen) yang menggunakan satu identifier (pengenal).  Masing-masing elemen larik diakses menggunakan indeks (subscript) dari nol sampai n-1 (n menyatakan jumlah elemen larik).  Pengolahan data larik harus per elemen. Elemen Larik dapat diakses langsung (acak), maksudnya untuk memanipulasi elemen ke-4 tidak harus melalui elemen ke-1, ke-2 dan ke-3.  Berdasarkan banyaknya indeks larik dibagi menjadi satu dimensi dan multi dimensi (duadimensi, tiga dimensi).

4.1.1Pendeklarasian array 1 dimensi Pendeklarasian larik 1 dimensi mempunyai pola tipeVariabel namaVariabel[ukuran]. Contohnya:

74

int panjangPadi[5]; float nilaiUas[10];

4.1.2Pengisian Larik 

Ada 2 metode dalam pengisian Larik, yaitu: 1.

Pengisian langsung saat deklarasi  int my_larik[] = {1,23,17,4,-5,100};

2.

Pengisian setelah deklarasi o o o o o o

int my_larik[5]; my_larik[0]=10; my_larik[1]=20; my_larik[2]=30; my_larik[3]=40; my_larik[4]=50;

4.1.3 Menampilkan Larik Saat akan menampilkan Larik yang perlu diingat adalah indeks dari setiap Larik adalah mulai dari 0, misalkan telah di deklarasikan int my_larik[] = {1,23,17,4,5,100}. Maka untuk menampilkan data Larik ke-2 yaitu 23 dari variabel my_larik adalah my_larik[1]. Ada 2 bentuk array 1. Array 1 dimensi 2. Array 2 dimensi A. Array 2 dimensi Berikut ini contoh kode lengkapnya. #include <stdio.h> main(){ int my_array[6] = {1,23,17,4,-5,100}; printf("Data ke-1 = printf("Data ke-2 = printf("Data ke-3 = printf("Data ke-4 = printf("Data ke-5 = printf("Data ke-6 =

%dn",my_array[0]); %dn",my_array[1]); %dn",my_array[2]); %dn",my_array[3]); %dn",my_array[4]); %dn",my_array[5]);

}

Hasil programnya adalah sebagai berikut:

75

Kode Program Menampilkan Larik 1 Dimensi Dengan Pengulangan

#include <stdio.h> main(){ int my_array[6] = {1,23,17,4,-5,100}; int i; printf("Data Larik Dari Depann"); //Menggunakan Looping for(i=0;i<6;i++){ printf("Data ke-%d = %dn",i+1,my_array[i]); } printf("nData Larik Dari Belakangn"); //Menggunakan Looping Urut Terbalik for(i=5;i>=0;i--){ printf("Data ke-%d = %dn",i+1,my_array[i]); } }

Hasil output nya sebagai berikut:

76

4.2

Larik (Array) Multi Dimensi

Larik multi-dimensi merupakan larik yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian larik sama saja dengan larik dimensi satu maupun larik dimensi dua.

4.2.1 Pendeklarasian aray 2 dimensi Pendeklarasian larik 2 dimensi mempunyai pola tipeVariabel namaVariabel[ukuran1] [ukuran2]. Contohnya: int matriksA[3][4]; float matrikB[4][4];

Pendeklarasian larik 3 dimensi mempunyai pola tipeVariabel namaVariabel[ukuran1] [ukuran2] [ukuran3]. Contohnya: int matriksA[3][4][2]; float matrikB[4][4][2];

4.2.2 Pengisian Larik Multidimensi Pengisian larik saat deklarasi int larik2D[5][2]={{1,12},{2,22},{3,33},{4,44},{5,55}};

Pengisian setelah deklarasi int larik2D[5][2]; larik2D[0][0]=1;

77

larik2D[0][1]=2; larik2D[1][0]=2; larik2D[1][1]=22; ...

4.2.3 Menampilkan Larik Multi Dimensi Berikut ini contoh menampilkan larik multidimensi: Contoh menampilkan larik 2 dimensi: #include <stdio.h> main(){printf(" ====== ARRAY 2 DIMENSI =========\n"); printf(" ======= DEDI SETIADI ===========\n"); int array2D[5][2]={{1,12},{2,22},{3,33},{4,44},{5,55}}; int i,j; printf("array2D[%d][%d] = %dn",0,0,array2D[0][0]); printf("array2D[%d][%d] = %dn",0,1,array2D[0][1]); printf("array2D[%d][%d] = %dn",1,0,array2D[1][0]); printf("array2D[%d][%d] = %dn",1,1,array2D[1][1]); printf("array2D[%d][%d] = %dn",2,0,array2D[2][0]); printf("array2D[%d][%d] = %dn",2,1,array2D[2][1]); printf("array2D[%d][%d] = %dn",3,0,array2D[3][0]); printf("array2D[%d][%d] = %dn",3,1,array2D[3][1]); printf("array2D[%d][%d] = %dn",4,0,array2D[4][0]); printf("array2D[%d][%d] = %dn",4,1,array2D[4][1]); }

Hasil programnya sebagai berikut:

78

Kode Menampilkan Larik 2 Dimensi Dengan Perulangan #include <stdio.h> main() { printf(" ====== ARRAY 2 DIMENSI =========\n"); printf(" ======= DEDI SETIADI ===========\n"); int array2D[5][2]={{1,12},{2,22},{3,33},{4,44},{5,55}}; int i,j; for(i=0;i<5;i++){ for(j=0;j<2;j++){ printf("array2D[%d][%d] = %dn",i,j,array2D[i][j]); } } printf("n"); for(i=0;i<5;i++){ for(j=0;j<2;j++){ printf("%d ",array2D[i][j]); } printf("n"); } printf("n"); i=0; while(i<5){ j=0; while(j<2){ printf("%d ",array2D[i][j]); j++; } i++; printf("n"); } }

Hasil programnya sebagai berikut:

79

80

BAB V Penutup Kesimpulan Algoritma adalah sebuah sistem yang dibuat dan digunakan untuk memecahkan suatu masalah. Dengan algoritma suatu masalah dapat digambarkan langkah-langkah penyelesainya,sehingga hasil penyelesaiannya dapat digambarkan secara detail,walaupun dalam penerapannya sedikit berbeda. Salah satu bidang yang menggunakan algoritma adalah bidang pemograman. Dengan algoritma hasil pemograman dapat ditentukan input outputnya sehingga dapat membantu para programer dalam pemograman . Pemograman bahasa c++ adalah salah satu bahasa pemograman dari sekian banyak bahasa pemograman. Bahasa c++ merupakan bahasa pemograman yang beoreantasi object yang juga hasil dari pengembangan bahasa c.Bahasa c++ bersifat case sensitif sehingga perlu di perhatiakan dalam penulisan syntaknya ,seperti ukuran huruf,tanda baca,spasi karena jika salah satu huruf saja saat di compile maka akan muncul pesan error. Salah satu keunggulan bahasa c++ di bandingkan dengan bahasa c adalah bahasa c++ mendukung fungsi virtual,sehingga dalam pemogramannya dapat ditampilkan hasilnya secara langsung. Salah satu compiler c++ adalah code::block. Code::block adalah suatu program lingkungan pengembangan terpadu bebas,nirbala, bersumber dan lintas platform. Code::block tidak hanya dapat membuat program c++ namun juga dapat membuat program bahasa c. code blog juga dapat di gunakan bersama dengan banyak kompilator,contohnya MinGW(GCC untuk windows),digital mars, visual c++,borland c++ dan lain-lain. 81

SARAN Untuk penyempurnaan pembuatan makalah kedepannya, saya mengharapkan adanya saran dari semua pihak baik dosen maupun seluruh mahasiswa yang membaca makalah ALGORITMA DAN PEMROGRAMAN C++ ini terhadap kekurangan yang terdapat pada makalah ini.

82

Daftar Pustaka Belajar Bahasa Pemrograman C++ Lengkap dari Awal untuk Pemula Damas Amirul Karim by Damas Amirul Karim - Last Updated 23 April 2018 Belajar Bahasa Pemrograman C++ Lengkap dari Awal untuk Pemula https://kodedasar.blogspot.com/2017/04/belajar-bahasa-pemrograman-c-lengkap.html http://firman-rpl.blogspot.com/2012/07/library-function-pada-c-dan-c-dalam.html http://satriakbar.blogspot.com/2014/10/kumpulan-library-function-fungsi-pada.html http://kumpulsaja.blogspot.com/2017/09/jenis-header-library-pada-c-dan.html https://sutandi1.blogspot.com/2017/03/pemrograman-c-tipe-data.html http://ahbraim.blogspot.com/2017/12/macam-macam-library-pada-c.html Fadhli Umar Ali makalah MAKALAH ALGORITMA DAN PEMROGRAMAN I PENGENALAN BORLAND C++, FUNGSI IF, FUNGSI DAN STRUKTUR Universitas BSI Bandung, 2016

http://woocara.blogspot.com/2016/02/pengertian-algoritma-contoh-algoritma.html pdf https://www.academia.edu/8999541/Bab_1_ALGORITMA_DAN_PEMROGRAMAN_1

83

Related Documents

Algoritma
November 2019 46
Algoritma
November 2019 45
Algoritma
July 2020 28
Algoritma
November 2019 40
Algoritma
June 2020 31

More Documents from "Nerissa"

Format Analisis Kkm.doc
April 2020 19
Besaran Dan Satuan
May 2020 50
Kata Pengantar.docx
December 2019 18
Cover.docx
October 2019 38