MAKALAH ALGORITMA DAN PEMROGRAMAN I

Ukuran: px
Mulai penontonan dengan halaman:

Download "MAKALAH ALGORITMA DAN PEMROGRAMAN I"

Transkripsi

1 MAKALAH ALGORITMA DAN PEMROGRAMAN I PENGENALAN BORLAND C++, FUNGSI IF, FUNGSI DAN STRUKTUR Diajukan sebagai tugas mata kuliah Algoritma dan Pemrograman I Disusun Oleh : Fadhli Umar Ali (BAB I) Ari Indrawan (BAB I) Surya Sumirat (BAB II) Andri Budi Santosa (BAB II) Fepi Priyatna (BAB III) Irsam Mukharom (BAB III) PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNVERSITAS BINA SARANA INFORMATIKA BANDUNG 2016

2 KATA PENGANTAR Puji syukur penyusun haturkan kehadirat lllahi Rabbi atas limpahan kenikmatan, taufik, inayah serta hidayahnya sehingga penyusun dapat menyelesaikan Makalah dengan judul ALGORITMA DAN PEMROGRAMAN I, yang didalamnya membahas tentang Pengenalan Borland C++, Fungsi IF, serta Fungsi dan Struktur. Segala puji dan syukur pembuatan makalah ini bisa terlaksana dengan tanpa suatu kendala apapun. Tujuan penyusun membuat makalah ini adalah keturutsertaan dalam mengerjakan tugas mata kuliah ALGORITMA DAN PEMROGRAMAN I dan sebagai prasyarat untuk nilai Ujian Akhir Semester. Dan agar menambah wawasan tentang ilmu Logika dan Pemrograman. Pertama penyusun ingin mengucapkan terima kasih kepada pihak pihak yang secara langsung maupun tidak langsung membantu penyusunan dalam menyelesaikan makalah ini sehingga makalah ini tersusun baik. Penyusun menyadari bahwa makalah ini jauh dari sempurna. Oleh karena itu kritik serta saran membangun sangat penyusun harapkan agar dilain kesempatan dapat menyusun karya ilmiah menjadi lebih baik. Bandung, 07 Januari 2016 Team Penyusun ii

3 DAFTAR ISI KATA PENGANTAR... ii DAFTAR ISI... iii BAB I Pendahuluan Pengenalan C Tipe Data Tipe Data Sederhana Tipe Terstruktur Tipe Pointer Variabel Konstanta Fungsi Masukan dan Keluaran Fungsi Masukan Fungsi Keluaran Operator Bahasa Operator Aritmatika (Arithmetic Operator) Operator Pengerjaan (Assigment Operator) Operator Hubungan (Relational Operator) Operator Logika (Logical Operator) Operator Koma (Coma Operator) Operator Bitwise Manipulasi String BAB II FUNGSI IF Operator Kondisi Operator Relasi Operator Logika Prioritas Operator Logika dan Relasi iii

4 2.2 Pernyataan if Sederhana Pernyataan if Majemuk Pernyataan if bersarang (nested if) BAB III FUNGSI DAN STRUKTUR Fungsi Fungsi Operasi String (string.h) Fungsi Karakter (ctype.h) Fungsi Operasi Matematika (math.h dan stdlib.h) Struktur Data Mendefinisikan Struktur Data Mengakses Struktur Struktur Sebagai Fungsi Dari Agumen Pointer pada Struktur Typedef BAB IV PENUTUP Kesimpulan Saran DAFTAR PUSTAKA BIOGRAFI TEAM PENYUSUN iv

5 BAB I PENDAHULUAN 1.1 PENGENALAN C++ Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980 berdasarkan C ANSI (American National Standard Institute). Pertama kali, prototype C++ muncul sebagai C yang dipercanggih dengan fasilitas kelas. Bahasa tersebut disebut C dengan kelas (C wih Class). Selama tahun , C dengan disempurnakan dengan menambahkan fasilitas pembeban lebihan operator dan fungsi yang kemudian melahirkan apa yang disebut C++. Simbol ++ merupakan operator C untuk operasi penaikan, muncul untuk menunjukan bahwa bahasa baru ini merupakan versi yang lebih canggih dari C. Borland International merilis compiler borland C++ dan Turbo C++. Kedua compiler ini sama-sama dapat digunakan untuk mengkompilasi kode C++. Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan DOS, dapat juga digunakan untuk pemrograman Windows. Selain Borland International, beberapa perusahaan lain juga merilis compiler C++, seperti Topspeed C++ dan Zortech C++. C++ diciptakan untuk mendukung pemrograman berorientasi pada objek (Object Oriented Progamming/OOP) yang tidak dimilki C. Sementara C merupakan bahasa pemrograman terbaik dilingkungannya, bahasa ini tdak memiliki kemampuan OOP. Reputasi C tidak diragukan lagi dalam menghasilkan program.exe berukuran kecil, eksekusi yang cepat, antarmuka (Interfacing) yang sedeharna dengan bahasa lain dan fleksibilitas pemrograman. Apa yang membuat C tampak sukar dipelajari, mungkin karena tidak adanya pemeriksaan tipe. Sebagai contoh, dapat mencampur bilangan bulat dengan string untuk menghasilkan karakter. Namun, justru disitu letak fleksibilitas C, dapat mengolah data C sebebas mengolah data dalam bahasa Assembly. Sebenarnya program C++ dapat ditulis menggunakan sembarang editor teks,seperti EDIT (milik DOS),Wordstar,SideKick ataupun menggunakan editor bawaan dari compiler. Program C++ biasa ditulis dengan nama CPP ( dari kata C Plus Plus) Agar program ini bias dijalankan (eksekusi).program harus dikompilasi 1

6 terlebih dahulu dengan menggunakan compiler C++. Pada saat kompilasian, program sumber (CPP) bersama file-file header (berekstansi.h atau.hpp) akan diterjemahkan oleh compiler C ++ menjadi kode obyek (.OBJ) file ini berupa file dalam format biner (berkode 0 dan 1). Selanjutnya file obyek ini bersama-sama dengan file obyek lain serta file pustaka (.LIB) dikaitkan menjadi satu oleh linker. Hasilnya berupa file yang bersifat executable. File inilah yang biasa dijalankan dari system operasi secara langsung. Proses pengkompilasian file sumber hingga menjadi file eksekutabel dapat diilustrasikan pada gambar 1.1: Program Sumber (.CPP) File Header (.H/.HPP) Kompiler C++ File Objek (.OBJ) File Objek (.OBJ) File Pustaka (.LIB) Linker Program Executable (exe) Gambar 1.1 Proses pengkompilasian file sumber hingga menjadi file eksekutabel 2

7 1.2 Tipe Data 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 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. Sederhana Tipe Data C++ Pointer Terstrukur Gambar 1.2 Tipe Data C++ 3

8 1.2.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 : 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. 4

9 Tabel 1.2 Contoh angka riil yang ditampilkan menggunakan notasi titik mengambang C++ Angka Riil Notasi Titik Mengambang C E E E E E3 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 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 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. 5

10 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 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 berbeda-beda.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 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. 6

11 Menurut Frieyadie Edisi Revisi Buku Pemrograman C++ dengan Borland C 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). 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. 7

12 1.3 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 = joni Nama = Al-Khawarizmi Harga = 2500 HargaTotal = username, Nama, harga dan HargaTotal adalah nama dari variabel, sedangkan joni, Al-Khawarizmi, 2500 dan 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 8

13 Penanaman Yang Benar Penanaman Yang Salah Namasiswa nama siswa (salah karena menggunakan spasi) 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) 1.4 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 ( ). Beberapa konstanta karakter dapat diawali dengan tanda \ (penempatannya setelah tanda petik tunggal). 9

14 Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan nilai pi ( ) 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 berulang-ulang. 1.5 Fungsi Masukan dan Keluaran Fungsi Masukan 1. scanf( ) Fungsi ini digunakan untuk memasukan berbagai jenis data. Bentuk penulisannya adalah: scanf( penentu format,&nama variabel); Simbol & merupakan pointer yang digunakan untuk menunjuk kealamat variabel memori yang dituju. Berikut Tabel Penentu Format scanf( ). TIPE DATA PENENTU FORMAT Integer %d Floating Point: Bentuk Desimal %e atau %f Bentuk Berpangkat %e atau %f Double Precision %lf Character %c String %s Unsigned Integer %u Long Integer Long Unsigned Integer %ld %lu Unsigned Hexadecimal Integer %x Unsigned Octa Integer %o 10

15 2. gets( ) Fungsi ini digunakan untuk memasukan untuk memasukan data string. Bentuk penulisannya adalah: gets(nama variabel-array); Perbedaan antara scanf( ) dengan gets( ) adalah: scanf( ) gets( ) Tidak dapat menerima string yang mengandung spasi atau tab dan dianggap sebagai data terpisah Dapat menerima string yang mengandung sapasi atau tab dan masing-masing dianggap sebagai satu kesatuan data 3. cin( ) iostream.h Untuk bisa menggunakan fungsi ini harus mensertakan file header 4. getch( ) Fungsi getch( ) (get character and echo) dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan tidak akan ditampilkan dilayar. File header yang harus disertakan adalah conio.h 5. getche( ) Fungsi ini dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan akan ditampilkan dilayar. File header yang harus disertakan adalah conio.h Fungsi Keluaran 1. printf( ) Bentuk penulisannya: printf( string-kontrol, argumen 1, argumen 2); String-kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta penentu format. Penentu format dipakai untuk memberi tahu kompiler mengenai 11

16 jenis data yang dipakai dan akan ditampilkan. Argumen ini dapat berupa variabel, konstanta dan ungkapan. Berikut tabel penentu format printf( ) TIPE DATA PENENTU FORMAT Integer %d Floating Point: Bentuk Desimal %f Bentuk Berpangkat %e Bentuk Desimal dan Pangkat %g Double Precision %lf Character %c String %s Unsigned Integer %u Long Integer %ld Long Unsigned Integer %lu Unsigned Hexadecimal Integer %x Unsigned Octa Integer %o 2. puts ( ) Perintah puts ( ) sebenarnya sama dengan printf ( ), yaitu digunakan untuk mencetak string ke layar. Puts ( ) berasal dari kata put string. Perbedaan antara printf( ) dengan puts( ) adalah: printf( ) puts( ) Harus menentukan tipe data untuk string, yaitu %s Tidak perlu penentu tipe data string, karena fungsi ini khusus untuk tipe data string. Untuk mencetak pindah baris, Untuk mencetak pindah baris tidak perlu memerlukan notasi \n notasi \n, karena sudah diberikan otomatis 12

17 3. putchar( ) Perintah ini digunakan untuk menampilkan sebuah karakter kelayar.penampilan karakter tidak diakhiri pindah baris. 4. cout( ) Untuk menggunakan perintah ini harus menertakan file header iostream.h 1.6 Operator Bahasa Operator merupakan simbol atau karakter yang biasa dilibatkan dalam program untuk melakukan suatu operasi atau manipulasi, seperti menjumlahkan dua buah nilai, memberikan nilai ke suatu variabel, membandingkan kesamaan dua buah nilai dan sebagainya. Tabel 1.3 menunjukkan macam-macam operator yang disediakan oleh bahasa C. Di tabel ini, arah dari proses menunjukkan bagaimana hubungan antara operand-operand di operator akan diproses, mulai dari yang sebelah kiri operatornya kearah kanan atau sebaliknya. Misalnya ungkapan A/B, maka yang akan di bagi oleh B adalah A, berarti operator / mempunyai arah proses dari kirikanan. Jenjang menunjukkan operator mana yang akan dikerjakan terlebih dahulu jika dalam suatu ungkapan melibatkan lebih dari satu macam operator. Jenjang dengan nomor 1 adalah jenjang yang tertinggi. Misalnya ungkapan X=B+A, melibatkan dua operator; operator aritmatika + mempunyai jenjang yang lebih tinggi dibandingkan dengan operator pengerjaan =, sehingga ungkapan B+A akan dikerjakan terlebih dahulu dan kemudian hasilnya akan diberikan ke variabel X. 13

18 Tabel 1.3 Macam-macam Operator, Arah Proses, dan Jenjangnya Kategori Operator Arah Proses Jenjang Kurung, indeks, larik, dan elemen ( ) [ ] -> Kiri-kanan 1 Operator unary! ~ ++ & * (tipe) sizeof Kanan-kiri 2 Operator aritmatika perkalian, pembagian, dan sisa pembagian? * % Kiri-kanan 3 Operator aritmatika pertambahan, dan pengurangan + Kiri-kanan 4 Operator bitwise pergeseran bit << >> Kiri-kanan 5 Operator hubungan < <= > >= Kiri-kanan 6 Operator hubungan dan kesamaan dan ketidak-samaan ==!= Kiri-kanan 7 Operato bitwise AND & Kiri-kanan 8 Operator bitwise XOR ^ Kiri-kanan 9 Operator bitwise OR Kiri-kanan 10 Operator kondisi AND && Kiri-kanan 11 Operator kondisi OR Kiri-kanan 12 Operator Ternary? ; Kanan-kiri 13 Operator pengerjaan aritmatika Operator pengerjaan bitwise = += -= *= /= %= Kanan-kiri 14 &= ^= = <<= >>= Kanan-kiri 15 Operator koma, Kiri-kanan 16 14

19 Bahasa C menyediakan jenis-jenis operator misalnya operator aritmatika, operator pengerjaan, operator hubungan, operator logika, operator bitwise, dan operator koma OPERATOR ARITMATIKA (ARITHMETIC OPERATOR) Bahasa C menyediakan sejumlah operator aritmatika (arithmetic operator) seperti tampak pada table 1.4. tabel 1.4 Operator Aritmatika Operator Jenjang Fungsi * 3 Perkalian / 3 Pembagian + 4 Penjumlahan 4 Pengurangan % 3 Pembagian modulo (Sisa pembagian) Jenjang menunjukan operator mana yang akan diprosses terlebih dahulu. Misalnya operator bagi / (jenjang 3) akan diproses terlebih dahulu dibandingkan dengan operator penjumlahan + (jenjang 4). Untuk jenjang yang sama, operator yang akan diproses terlebih dahulu adalah yang berada diposisi lebih kiri. Misalnya ungkapan sebagai berikut : A+B/C+D mempunyai arti A + +D Agar ungkapan yang dimaksud tidak salah, maka dapat digunakan tanda kurung ( ). Karena operator ( ) adalah operator dengan jenjang tertinggi (jenjang 1) maka penggunaannya sebagai berikut : (A+B)/(C+D) yang mempunyai arti Operator modulus % hanya digunakan untuk nilai-nilai integer saja dan tidak dapat digunakan untuk operasi nilai pecahan (tipe float,double atau long double). 15

20 Operator ini akan menghasilkansisa dari pembagian (remainder) dari dua buah nilai integer. Contoh: #include <stdio.h> main() int X, Y, Z; X =9; Y =4; Z = X%Y; printf( Nilai Z = %d\n,z); } Jika program ini dijalankan, akan didapatkan hasil: Nilai Z = 1 OPERATOR UNARY Operator Unary merupakan operator Yang hanya menggunakan operand saja (dibandingkan dengan operator-operator lainnya yang menggunakan dua buah operand). Adapun operasi yang tergolong unary yaitu : Tabel 1.5 Operator Unary Operator Jenjang Fungsi 4 Unary minus Increase dengan penambahan nilai 1 Decrease dengan pengurangan nilai 1 (tipe) 2 Cast Sizeof 2 Ukuran operand dalam byte! 2 Unary NOT 16

21 ~ 2 Komplemen 1 (bitwise NOT) & 2 * 2 Menghasilkan alamat memori operand (operator pointer) Menghasilkan nilai pengenal dialamatnya (operator pointer) Operator Unary Minus Operator Minus - digunakan untuk memberi nilai minus suatu nilai numerik (bukan untuk pengurangan). Misalnya ungkapan A+-B/C akan diartikan sebagai A+. Operator Unary ++ dan Operator Unary ++ dan operator unary - - merupakan operator khusus yang ada pada bahasa C dan jarang dijumpai di Bahasa yang lain. Operator ++ akan menambah nilai numerik 1 ke pengenal yang menggunakannya dan operator - akan mengurangi dengan nilai numerik 1 untuk pengenal yang menggunakannya. Misalnya bentuk X=X+1 dapat dituliskan sebagai X++. Sedangkan bentuk X=X-1 dapat dituliskan sebagai X. Operator ini banyak dijumpai di statement for yang berbentuk sebagai berikut For(I=1; I<10;I=I+1) Dapat ditulis dengan operator ++ sebagai berikut For(I=1;I<10;I++) Operator Unary (tipe) Operator Unary (tipe) merupakan operator yang memaksa suatu ungkapan yang mempunyai tipe yang diinginkan (disebut juga dengan cast). Tipe yang diinginkan ditulis di dalam tanda kurung didepan ungkapannya. Misalnya variable X dan Y adalah bertipe int dan Z bertipe float, maka untuk membuat hasil pembagian X/Y menjadi tipe float, dapat dituliskan Z = (float) X/Y; 17

22 Contoh : #include <stdio.h> main() int X,Y; float Z; X=7; Y=3; Z=(float)X/Y; printf( Nilai Z=%f, Z); } Jika program ini dijalankan akan didapatkan hasil : Nilai Z= Operator Unary sizeof Operator Unary sizeof digunakan untuk mengetahui ukuran memori dari operandnya dari satuan byte. Operator ini biasa digunakan untuk maksud portabilitas dari suatu mesin komputer dari komputer lainya. Contoh : #include <stdio.h> main() char C; int I; long int LI; float F; double D; long double LD; printf ( ukuran karakter = %d byte \n, sizeof C); printf ( ukuran integer= %d byte\n, sizeof I); printf( ukuran long integer= %d byte \n,sizeof LI); printf ( ukuran float= %d byte \n,sizeof F); 18

23 printf ( ukuran double= %d byte \n,sizeof D); printf ( ukuran long double= %d byte \n,sizeof LD); } Jika program ini dijalankan maka akan didapatkan hasil: ukuran karakter= 1 byte ukuran integer= 2 byte ukuran long integer= 4 byte ukuran float= 4 byte ukuran double= 8 byte ukuuran long double= 10 byte OPERATOR PENGERJAAN (ASSIGMENT OPERATOR) Operator pengerjaan digunakan untuk memindahkan nilai dari suatu ungkapan ke suatu pengenal. Operator pengerjaan yang umum digunakan dalam bahasa pemrograman, termasuk bahasa C adalah operator sama dengan (. Contoh : Maka = adalah operator pengerjaan yang akan memberikan nilai dari ungkapan kepada variabel. Tabel 1.6 Operator Pengerjaan Aritmatika Operator Jenjang Contoh Ekuivalen dengan 14 Mengerjakan ke %= 14 19

24 Contoh : Misalnya variabel I dan J adalah variable-variabel tipe interger dengan nilai awal keduanya adalah 10. Statement-statement berikut ini menggunakan variablevariabel I dan J dan hasil ungkapannya. Tabel 1.6 Contoh Operator Pengerjaan Statement Ekuivalen dengan Hasil ungkapan I += 3; I = I + 3; I = 10+3 = 13 I -= 2; I = I 2; I = 10-2 = 8 I *= J/2; I = I*(J/2); I=10* (10/2)=50 I /= J-8; I = I/(J-8); I= 10/ (10-8)= OPERATOR HUBUNGAN (RELATIONAL OPERATOR) Operator hubungan digunakan untuk menunjukkan hubungan antara dua buah operand. Operator ini banyak digunakan untuk penyeleksian kondisi dengan statement if, do-while atau while. Tabel 1.7 Operator Hubungan Operator Jenjang Fungsi < 6 Lebih kecil dari <= 6 Lebih kecil atau sama dengan > 6 Lebih besar dari >= 6 Lebih besar atau sama dengan == 7 Sama dengan!= 7 Tidak sama dengan 20

25 Contoh 1: Nilai A adalah 5, nilai B adalah 7, dan nilai C adalah a. Beberapa ungkapan hubungan yang menggunakan variable-variebel ini dan hasilnya tampak sebagai berikut. Tabel 1.8 Contoh Operator Hubungan Ungkapan Hubungan Hasil Nilai A == 5 Benar 1 A == B Salah 0 B < 7 Salah 0 A <= 7 Benar 1 (A+B)!= 35 Benar 1 C!= A Benar 1 C <= Z Benar 1 Contoh 2: #include <stdio.h> main() int A=5,B=7; printf( %d < %d hasilnya adalah %d \n, A,B,A<B); printf( %d<=%d hasilnya adalah %d \n, A,B,A<=B); printf( %d>%d hasilnya adalah %d \n,a,b,a>b); printf( %d>=%d hasilnya adalah %d \n,a,b,a>=b); printf( %d==%d hasilnya adalah %d \n,a,b,a==b); printf( %d!=%d hasilnya adalah %d \n,a,b,a!=b); } Jika program ini dijalankan akan didapatkan hasil : 5 < 7 hasilnya adalah 1 21

26 5 <= 7 hasilnya adalah 1 5 > 7 hasilnya adalah 0 5 >= 7 hasilnya adalah 0 5 == 7 hasilnya adalah 0 5!= 7 hasilnya adalah 1 Operator hubungan banyak digunakan untuk penyeleksian kondisi dengan statement if, do-while OPERATOR LOGIKA (LOGICAL OPERATOR) Operator logika digunakan untuk membandingkan hasil dari operatoroperator hubungan. Operator Logika membandingkan dua buah nilai logika. Nilai logika adalah nilai benar atau salah. Tabel 1.9 Operator Logika Operator Jenjang Fungsi && 11 Logika DAN (AND) 12 Logika ATAU (OR) Misalnya nilai A adalah 5, B adalah 7, dan C adalah a, maka ungkapan logika berikut ini akan mempunyai hasil akhir benar. A<B B== 7 && C> z &&

27 Hasil akhir benar dari ungkapan logika tersebut didapat dari langkah-langkah sebagai berikut ini. 1) Jenjang operator hubungan lebih tinggi dibandingkan dengan jenjang operator logika, sehingga ungkapan-ungkapan hubungan dikerjakan terlebih dahulu. Ungkapan hubungan A < B adalah benar, maka akan bernilai 1. Ungkapan hubungan B == 7 adalah benar dan bernilai 1. Ungkapan hubungan C > z adalah salah maka bernilai 0. 2) Operator logika && mempunyai jenjang yang lebih tinggi dibandingkan dengan operator logika, sehingga ungkapan logika 1 && 0 dikerjakan terlebih dahulu dengan hasil logikanya adalah 0. 3) Ungkapan logika 1 0 selanjutnya dikerjakan dengan memberikan hasil akhir bernilai logika benar atau 1. Contoh : Nilai A adalah 5, Nilai B adalah 7, dan nilai C adalah a. Beberapa logika yang menggunakan variabel-variabel ini dan hasilnya tampak seperti berikut ini. Operator logika juga banyak digunakan untuk penyeleksian kondisi yang rumit dengan statemen if, do-while atau while OPERATOR KOMA (COMMA OPERATOR) Operator koma digunakan untuk menggabungkan beberapa ungkapan dengan proses yang berurutan dari ungkapan sebelah kiri koma ke ungkapan sebelah kanan koma. Misalnya Statement berikut ini X= ( B= 5, B*2); Akan dihasilkan nilai X adalah 10, karena B= 5 akan diproses terlebih dahulu dan kemudian nilai B di kalikan dengan nilai 2. Hasil akhir ini yaitu nilai 10 diberikan ke variabel X. Nilai B terakhir adalah 5, sedangkan operasi B*2 tidak merubah nilai B karena operasi ini hasilnya tidak disimpan di variabel B OPERATOR BITWISE Operator bitwise digunakan untuk memanipulasi bit-bit nilai data yang ada di memori. Operator-operator ini hanya dapat digunakan untuk tipe data char, int dan long int. 23

28 Tabel 1.10 Operator Bitwise Operator Jenjang Fungsi << 5 Pergeseran bit ke kiri >> 5 Pegeseran bit ke kanan & 8 Bitwise AND ^ 9 Bitwise XOR (Exclusive OR) 10 Bitwise OR ~ Bitwise NOT OPERATOR BITWISE KOMPLEMEN SATU Operator Bitwise komplemen satu (One s Complement Operator) kadangkadang disebut juga dngan istilah komplementation operator. Operator ini menggunakan symbol ~ dan merupakan operator Unary yang mempunyai arti bitwise NOT, yaitu membalik nilai-nilai bit 1 menjadi nilai- nilai bit 0 atau sebaliknya. Misalnya nilai binary maka nilai komplemen satunya adalah nilai binary OPERATOR BITWISE LOGIKA Tiga buah operator bitwise logika dapat digunakan, yaitu operator bitwise AND ( & ), Operator bitwise OR( ) dan operator bitwise XOR ( ^ ). Operator-operator ini menggunakan dua buah operand. Hubungan bit-bit untuk operator-operator ini dan hasilnya tampak pada tabel berikut Tabel hubungan Bit dan Hasilnya untuk Operasi Bitwise Logika. Tabel 1.11 Operator Bitwise Logika Bit AND OR XOR b1 b2 b1 & b2 b1 b2 b1 ^ b2 24

29 Contoh: #include <stdio.h> main() int X=0x2d; /*bernilai 45 dalam decimal */ int Y=0x1b; /* bernilai 27 dalam decimal */ printf( %x & %x hasilnya adalah %x (dalam heksadesimal)\n,x,y,x&y); printf( %x %x hasilnya adalah %x (dalam heksadesimal)\n, X,Y, X Y); printf( %x^ %x hasilnya adalah %x (dalam heksadesimal)\n,x,y,x^y); } Jika program ini dijalankan akan didapatkan hasil: 2d & 1b hasilnya adalah 9 (dalam heksadesimal) 2d 1b hasilnya adalah 3f(dalam heksadesimal) 2d 1b hasilnya adalah 36 (dalam heksadesimal) Operator bitwise & (AND) banyak digunakan untuk mengecek status dari suatu bit, apakah bernilai bit 1 atau bernilai bit 0. Misalnya variabel A adalah tipe char berukuran 1 byte (8 bit) dan bernilai desimal 125 atau bernilai dalam binari. Operasi bit ini dapat dituliskan dalam bentuk desimal A & 64. Nilai binary dalam desimal adalah nilai 64. Hasil dari operasi ini adalah nilai desimal 64. Jika hasil untuk yang diperiksa tidak sama dengan 0 berarti bit tersebut adalah bernilai 1. Untuk bit ke tiga dari ujung untuk variabel A dapat diperiksa dengan operasi A & 32 dan seterusnya. Untuk nilai 1 byte (8 bit) yang diperiksa, penyeleksian operasi bit dengan operator & dimulai dengan 128. Nilai 128 ini adalah 2^7. Untuk nilai 2 byte (16 bit), maka penyeleksian operasi bit dengan operator & dimulai dengan nilai 2^15= Nilai 128,32768 dan seterusnya ini berarti tergantung dari ukuran tipe datanya dan dapat dirumuskan sebesar 2 pangkat (sizeof(tipe datanya )*8-1). 25

30 OPERATOR PERGESERAN BIT Dua buah operator yang dapat digunakan untuk pergeseran bit adalah shift left ( << ) dan shift right( >> ). Operator-operator ini membutuhkan dua buah operand. Operand pertama adalah nilai integer yang nilai bit-bitnya akan digeser dan operand kedua menunjukkan banyaknya pergeseran. Misalnya ungkapan 125<<2 akan dihasilkan nilai 500 (0x1f4 dalam heksadesimal) sebagai berikut: Nilai 125 = Digeser 2 bit ke kiri = Sedangkan ungkapan 125>>2 akan dihasilkan nilai 31 (0x1f dalam heksadesimal) sebagai berikut: Nilai 125 = Digeser 2 bit ke kanan = OPERATOR BITWISE PENGERJAAN Bahasa C juga menyediakan operator-operator pengerjaan untuk bitwise. Operatoroperator ini adalah &=, ^=, =, <<= dan >>=. Contoh: Misalkan A adalah variabel tipe integer dengan nilai decimal 125 (0x7d dalam heksadesimal). Beberapa ungkapan pengerjaan bitwise berikut ini menggunakan variabel A dan hasil akhirnya tampak sebagai berikut ini. Tabel 1.12 Operator Bitwise Pengerjaan Ungkapan Ekuivalen dengan Hasil A &=0x1b A ^=0x1b A =0x1b A <<=2 A >>=2 A =A & 0x1b A =A ^ 0x1b A =A 0x1b A =A <<2 A =A >>2 0x19 (25 dalam nilai desimal) 0x66 (102 dalam nilai desimal) 0x7f (127 dalalmm nilai desimal) 0x1f (500 dalam nilai desimal) 0x1f (31 dalam nilai desimal) 26

31 1.7 Manipulasi String String dapat dimanipulasi dengan aturan tertentu. Di mana bahasa C++ telah menyediakan semua ini ke dalam pustakanya. Berikut adalah fungsi-fungsi yang digunakan untuk melakukan manipulasi string : Fungsi strcat Fungsi strcat digunakan untuk menggabungkan dua string menjadi satu. Fungsi strlen Fungsi strlen digunakan untuk menghitung panjang karakter pada suatu string. strlen adalah fungsi yang bertipe data integer. Fungsi strcpy Fungsi strcpy digunakan untuk menyalin isi string ke suatu variabel. Fungsi strupr Fungsi strupr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variabel menjadi huruf besar semua (Uppercase). Fungsi strlwr Fungsi strlwr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variable menjadi huruf kecil semua (Lowercase). 27

32 BAB II FUNGSI IF Sebuah pernyataan yang dapat dipakai untuk mengambil keputusan berdasarkan suatu kondisi. Pernyataan-pernyataan tersebut memerlukan suatu kondisi, sebagai basis dalam pengambilan keputusan. Kondisi umum yang dipakai berupa keadaan benar dan salah. Oleh karena itu pembahasan pada bab ini akan diawali dengan pengenalan operator yang membentuk kondisi benar dan salah. 2.1 Operator Kondisi Operator yang digunakan untuk menghasilkan kondisi benar dan salah, bisa berupa operator relasi dan bisa juga berupa operator logika. Berikut ini dibahas masing-masing jenis operator serta tabel prioritas masing-masing operator Operator Relasi Operator relasi biasa dipakai untuk membandingkan dua buah nilai. Hasil pembandingan berupa keadaan benar atau salah. Keseluruhan operator relasi pada C ditunjukkan pada Tabel 2-1. Tabel 2-1. Operasi relasi Operator > >= < <= ==!= Makna Lebih dari Lebih dari atau sama dengan Kurang dari Kurang dari atau sama dengan Sama dengan Tidak sama dengan Khususnya untuk operator relasi sama dengan (==) harap dibedakan dengan operator (=) yang merupakan operator penugasan (assignment). Contoh: Pembandingan Hasil 1 > 2 Salah 28

33 1 < 2 Benar A == 1 Benar, jika A bernilai 1 Salah, jika A tidak bernilai 1 'A' < 'B' Benar, karena kode ASCII untuk karakter A kurang dari kode ASCII untuk karakter B *) kar == 'Y' Benar, jika kar berisi 'Y' Salah, jika kar tidak berisi 'Y' *) Dalam daftar ASCII standar, kode untuk karakter A = 65 sedangkan karakter B = 66, C = 67, D = 68 dan seterusnya sampai dengan karakter Z = Operator Logika. Operator logika biasa dipakai untuk menghubungkan ekspresi relasi. Keseluruhan operator logika ditunjukkan pada tabel 3-2. Tabel 3-2. Operator logika Operator Makna Contoh &&! dan (AND) atau (OR) tidak (NOT) (a > 10) && (a < 100) (n < 0) (n > 100)!a Bentuk pemakaian operator && dan adalah operand1 operator operand2 Baik operand1 maupun operand2 dapat berupa ekspresi relasi ataupun ekspresi logika. Hasil ekspresi bias bernilai benar atau salah. Pada C nilai hasil dari sebuah ekspresi relasi atau ekspresi logika jika dinyatakan dengan angka adalah : Salah nilai = 0 Benar nilai!= 0 (misalnya nilai = 1) Tabel 2-3 memberikan penjelasan hasil operasi ekspresi logika yang menggunakan operator && maupun untuk berbagai kemungkinan keadaan operand-nya. 29

34 Tabel 2-3. Kemungkinan pada operasi logika && dan Operand1 Operand2 Hasil && Salah Salah Benar Benar Salah Benar Salah Benar Tampak bahwa operator atau ( ) menghasilkan nilai 1 jika ada operand yang benar. Hasil berupa 0 jika semua operand adalah salah. Adapun operator logika dan (&&) memberikan hasil 1 hanya jika kedua operand adalah benar. Beberapa contoh ekspresi logika di antaranya : (kar > 'A') && (kar < 'Z') Hasil operasi logika && adalah benar hanya jika kar > 'A' dan kar < 'Z' (dalam hal ini yang diperbandingkan adalah kode ASCII dari karakter tsb). (pilihan == 'Y') (pilihan == 'y') Hasil operasi logika adalah benar jika pilihan berupa 'Y' atau 'y' Sedangkan bentuk pemakaian operator logika! adalah :!operand dengan operand dapat berupa ekspresi logika ataupun ekspresi relasi. Hasil operasi! bernilai : 1 jika operand bernilai salah 0 jika operand bernilai benar Perhatikan contoh potongan program di bawah ini : if (!sudah_benar) printf( Masukan Anda salah!\n ); Pada contoh potongan program di atas, dilakukan pengecekan kondisi terhadap nilai dari variabel sudah_benar. Jika variabel sudah_benar bernilai 0, maka kondisi!sudah_benar akan bernilai benar (true) sehingga instruksi : printf( Masukan Anda salah!\n ); 30

35 akan diproses. Penjelasan lebih rinci tentang pengecekan kondisi dengan pernyataan if dibahas pada sub bab Prioritas Operator Logika dan Relasi Tabel berikut ini memberikan penjelasan singkat mengenai prioritas di antara berbagai operator logika dan operator relasi. Tabel 3-4 Prioritas operator logika dan relasi Tertinggi :! > >= < <= = =!= Berdasarkan prioritas yang ditunjukkan pada tabel 3-4, maka ekspresi seperti (kar > 'A') && (kar < 'Z') sama saja kalau ditulis menjadi kar > 'A' && kar < 'Z' Hanya saja penulisan dengan menggunakan tanda kurung akan lebih memberikan kejelasan. 2.2 Pernyataan if Sederhana Pernyataan if mempunyai bentuk umum : if (kondisi ) pernyataan; 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

36 kondisi salah benar pernyataan Gambar 3.1. Diagram alir if Contoh penggunaan pernyataan if adalah untuk menentukan besarnya potongan harga yang diterima oleh seorang pembeli, berdasarkan kriteria : tidak ada potongan harga jika total pembelian kurang dari Rp (dalam hal ini potongan harga diinisialisasi dengan nol). bila total pembelian lebih dari atau sama dengan Rp , potongan harga yang diterima dirubah menjadi sebesar 5% dari total pembelian. 32

37 Contoh 1 /* File program : discount.c Contoh penggunaan if untuk menghitung nilai discount */ #include <stdio.h> main() double total_pembelian, discount = 0; /* discount diinisialisasi dengan nilai 0 */ printf("total pembelian = Rp ); scanf("%lf", &total_pembelian); if(total_pembelian >= ) discount = 0.05 * total_pembelian; printf("besarnya discount = Rp %.2lf\n", discount); } Contoh eksekusi : Total pembelian = Rp Besarnya discount = Rp

38 Contoh 2 Outputnya : Berapa usia anda : 12 Anda tidak diperkenankan menonton Penjelesan : Tampak bahwa kalau usia yang dimasukkan lebih dari atau sama dengan 17, program tidak menghasilkan apa-apa Pernyataan if Majemuk Pernyataan if-else memiliki bentuk : if (kondisi) pernyataan-1; else pernyataan-2; Diagram alir dapat dilihat seperti gambar 3.2. kondisi salah benar pernyataan-1 pernyataan-2 34

39 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. 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, 35

40 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. /* File program : bagi.c Pemakaian if-else untuk menyeleksi bilangan pembagi */ #include <stdio.h> main() float a, b; printf("masukkan nilai a : "); scanf("%f", &a); printf("masukkan nilai b : "); scanf("%f", &b); } if (b == 0) printf("\n%g dibagi dengan nol = TAK BERHINGGA\n", a); else printf("\n%g dibagi dengan %g = %g\n", a, b, a/b); 36

41 Contoh eksekusi : Masukkan nilai a : 5 Masukkan nilai b : 0 5 dibagi dengan nol = TAK BERHINGGA Contoh 1: Contoh 2: Outputnya : Berapa usia anda? 16 Anda tidak diperkenankan menonton Penjelesan : Terlihat bahwa kalau usia yang dimasukkan lebih dari 17, program akan memberi pesan Selamat Menonton. Selain dari if else, juga dikenal bentuk if else if. Adapun perbedaannya diilustrasikan oleh dua contoh dibawah ini. 37

42 Contoh 3 : Outputnya: 166 Lebih Besar dari Lebih Besar dari 10 Mengapa? Karena contoh 2 sama saja jika ditulis seperti dibawah ini 38

43 2.4. Pernyataan if bersarang (nested if) Di dalam suatu pernyataan if (atau if-else) bisa saja terdapat pernyataan if (atau if-else) yang lain. Bentuk seperti ini dinamakan sebagai nested if. Secara umum, bentuk dari pernyataan ini adalah sebagai berikut : if (kondisi-1) else if (kondisi-2).. else if(kondisi-n) pernyataan; else pernyataan;.. pernyataan; pernyataan; Kondisi yang akan diseleksi pertama kali adalah kondisi yang terluar (kondisi- 1). 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 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. 39

44 Contoh 1 : /* File program : determinan1.c Program untuk menghitung determinan dan akar-akar persamaan kuadrat menggunakan if bersarang */ #include <stdio.h> #include <math.h> main() float a, b, c, d = 0; double x1, x2, imaginair; printf("mencari AKAR-AKAR PERSAMAAN KUADRAT ax^2+bx+c=0\n"); printf("\nmasukkan nilai a : "); scanf("%f", &a); printf("masukkan nilai b : "); scanf("%f", &b); printf("masukkan nilai c : "); scanf("%f", &c); d = b*b-4*a*c; /* menghitung determinan */ if (d >= 0) if (d == 0) x1 = -b / (2 * a); printf("\ndua akar real kembar yaitu : \n"); printf("x1 = x2 = %g\n", x1); } else x1 = (-b + sqrt(d))/(2*a); 40

45 x2 = (-b - sqrt(d))/(2*a); printf("\ndua akar real berlainan yaitu :\n"); printf("x1 = %g\n", x1); printf("x2 = %g\n", x2); } else imaginair = (sqrt(-d)/(2*a)); x1 = -b/(2*a); printf("\ndua akar imaginair berlainan yaitu : \n"); printf("x1 = %g + %gi\n", x1, imaginair); printf("x2 = %g - %gi\n", x1, imaginair); } } Contoh eksekusi : MENCARI AKAR-AKAR PERSAMAAN KUADRAT a+bx+c=0 Masukkan nilai a : 3 Masukkan nilai b : 6 Masukkan nilai c : 2 Dua akar real berlainan yaitu : X1 = X2 =

46 Contoh 2 : Contoh diatas disebut juga nested conditional Contoh 3 : Contoh implementasi nested if ini misalnya pembuatan sebuah program kalkulator sederhana. User memberikan masukan dengan format : operand1 operator operand2 Jenis operasi yang dikenakan bergantung pada jenis operator ang dimasukkan oleh user. Oleh karena itu program akan mengecek apakah operator berupa tanda *, /, +, ataukah tanda -. Jika operator berupa tanda * maka operand1 akan dikalikan dengan operand2. Jika operator berupa tanda / maka operand1 akan dibagi dengan operand2. Jika operator berupa tanda + maka operand1 akan dijumlahkan dengan operand2. Jika operator berupa tanda - maka operand1 akan dikurangi dengan operand2. Kalau operator yang dimasukkan bukan merupakan salah satu dari jenis operator di atas, maka ekspresi tersebut tidak akan diproses, dan user akan mendapatkan pesan berupa : Invalid operator! 42

47 /* File program : kalkulator1.c Contoh penggunaan else if untuk mengimplementasikan program kalkulator sederhana */ #include <stdio.h> main() int valid_operator = 1; /* valid_operator diinisialisasi dengan logika 1 */ char operator; float number1, number2, result; printf("masukkan 2 buah bilangan dan sebuah operator\n"); printf("dengan format : number1 operator number2\n\n"); scanf("%f %c %f", &number1, &operator, &number2); if(operator == '*') result = number1 * number2; else if(operator == '/') result = number1 / number2; else if(operator == '+') result = number1 + number2; else if(operator == '-') result = number1 - number2; else valid_operator = 0; ); } if(valid_operator) printf("\n%g %c %g is %g\n", number1, operator, number2, result else printf("invalid operator!\n"); 43

48 Contoh eksekusi : Masukkan 2 buah bilangan dan sebuah operator dengan format : number1 operator number is

49 BAB 3 FUNGSI DAN STRUKTUR 3.1 FUNGSI Penjelasan Fungsi (Function) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus. Kegunaan dari fungsi ini adalah untuk: - Mengurangi pengulangan penulisan program yang berulangan atau sama. - Program menjadi lebih terstruktur, sehingga mudah dipahami dan dapat lebih dikembangkan. Fungsi-fungsi yang sudah kita kenal sebelumnya adalah fungsi main(), yang bersifat mutlak, karena fungsi ini program akan dimulai, sebagai contoh yang lainnya fungsi printf(), cout() yang mempunyai tugas untuk menampilkan informasi atau data kelayar dan masih banyak lainnya. Beberapa fungsi yang telah tersedia di dalam bahasa c++, antara lain: Fungsi Operasi String (string.h) - strcpy() Berfungsi untuk menyalin suatu string asal ke variable string tujuan. Bentuk umum : strcpy(var_tujuan, string_asal); #include <stdio.h> #include <conio.h> #include <string.h> #include <iostream.h> main() char huruf[20]; char pindah[20]; 45

50 clrscr(); cout<<"masukkan Sembarang Kata = "; gets(huruf); /* Proses */ strcpy(pindah, huruf); cout<<"pemindahannya = "<<pindah; getch(); } - strlen() Berfungsi untuk memperoleh jumlah karakter dari suatu string. Bentuk umum : strlen(string); #include <stdio.h> #include <conio.h> #include <string.h> #include <iostream.h> main() char kata[20]; clrscr(); cout<<"masukan Sembarang Kata = "; 46

51 gets(kata); strrev(kata); cout<<"hasil Perubahan = "<<kata; getch(); } - strcat() Berfungsi untuk menambahkan string sumber ke bagian akhir dari string tujuan. Bentuk umum : strcat(tujuan, sumber); #include <stdio.h> #include <conio.h> #include <string.h> #include <ctype.h> #include <iostream.h> main() char a1[20]; char a2[20]; clrscr(); cout<<"masukkan Kata - 1= "; cin>>a1; 47

52 cout<<"masukkan Kata - 2= "; cin>>a2; strcat(a1, a2); cout<<"hasil Penggabungannya "<<a1; getch(); } - strupr() Berfungsi untuk mengubah setiap huruf dari suatu string menjadi huruf capital. Bentuk umum : strupr(string); #include <stdio.h> #include <conio.h> #include <string.h> #include <iostream.h> main() char kata[20]; clrscr(); cout<<"masukan Sembarang Kata dengan Huruf Kecil="; gets(kata); strupr(kata); cout<<"hasil Perubahan = "<<kata; getch(); 48

53 } - strlwr() Berfungsi untuk mengubah setiap huruf dari suatu string menjadi huruf kecil semua. Bentuk umum : strlwr(string); #include <stdio.h> #include <conio.h> #include <string.h> #include <iostream.h> main() char kata[20]; clrscr(); cout<<"masukan Sembarang Kata dengan Huruf Besar ="; gets(kata); strlwr(kata); cout<<"hasil Perubahan = "<<kata; getch(); } 49

54 - strcmp() Berfungsi untuk membandingkan dua buah string. Hasil dari fungsi ini bertipe integer dengan nilai (a) Negative, jika string pertama kurang dari string kedua, (b) Nol, jika string pertama sama dengan string kedua, (c) Positif, h=jika string pertama lebih besar dari string kedua. Bentuk umum : strcmp(string1,string2); #include <stdio.h> #include <conio.h> #include <string.h> #include <iostream.h> main() char a1[] = "FEPI"; char a2[] = "FePi"; char b1[] = "fepi"; clrscr(); cout<<"hasil Perbandingan "<<a1<<" dan "<<a2<<"->"; cout<<strcmp(a1,a2)<<endl; cout<<"hasil Perbandingan "<<a2<<" dan "<<a2<<"->"; cout<<strcmp(a2,a1) <<endl; cout<<"hasil Perbandingan "<<a1<<" dan "<<b1<<"->"; 50

55 } cout<<strcmp(a1,b1) <<endl; getch(); Fungsi Karakter (ctype.h) - islower() Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter merupakan hurup kecil. Bentuk umum : islower(char); - isupper() Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter merupakan hurup capital. Bentuk umum : isupper(char); - isdigit() Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter merupakan sebuah digit. Bentuk umum : isdigit(char); - tolower() Fungsi akan mengubah hurup kapital menjadi hurup kecil. Bentuk umum : tolower(char); - toupper() Fungsi akan mengubah hurup kecil menjadi hurup kapital Bentuk Umum : toupper(char); 51

56 3.1.3 Fungsi Operasi Matematika (math.h dan stdlib.h) - Sqrt() Digunakan untuk menghitung akar dari sebuah bilangan. Bentuk Umum : sqet(bilangan); - pow() Digunakan untuk menghitung pemangkatan suatu bilangan. Bentuk umum : pow(bilangan,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); - atof() Digunakan untuk mengkonversi nilai string menjadi bilangan bertipe double. Bentuk umum : atof(char x); - atoi() Digunakan untuk mengkonversi nilai string menjadi bilangan bertipe integer. Bentuk umum : atoi(char x): - div() Digunakan untuk menghitung hasil pembagian dan sisa pembagian. Bentuk umum : div_t div(int x,int y) Strukturnya : Typedef struct int qout; //hasil pembagian Int rem //sisa pembagian }div_t; 52

57 - max() Digunakan untuk menentukan nilai maksimal dari dua buah bilangan. Bentuk umum : max(bilangan1, bilangan2); - min() Digunakan untuk menentukan nilai minimal dari dua buah bilangan. Bentuk umum : min(bilangan1, bilangan2); Membuat Fungsi Sendiri Deklarasi Fungsi Sebelum digunakan (dipanggil), suatu fungsi harus dideklarasikan dan didefinisikan terlebih dahulu. Bentuk umum pendeklarasian fungsi adalah : tipe_fungsi nama_fungsi(parameter_fungsi); Sedangkan bentuk umum pendefinisian fungsi adalah :Tipe_fungsi nama_fungsi(parameter_fungsi) statement statement } 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. 53

58 Parameter Formal dan Parameter Aktual 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<conio.h> #include<stdio.h> #include<iostream.h> tambah(int m, int n); main() int a, b; 54

59 a = 2; b = 5; clrscr(); cout<<"nilai Sebelum Fungsi Digunakan "; cout<<"\na = "<<a<<" b = "<<b; tambah(a,b); cout<<"\nnilai Setelah Fungsi Digunakan"; cout<<"\na = "<<a<<" b = "<<b; getch(); } tambah(int m, int n) m+=8; n+=5; cout<<"\n\nnilai di dalam Fungsi Tambah()"; cout<<"\nm = "<<m<<" n = "<<n; cout<<endl; } 55

60 2. Secara Referensi (Call by Reference) Pemanggilan secara Referensi merupakan upaya untuk melewatkan alamat dari suatu variabel ke dalam fungsi. Yang dikirimkan ke fungsi adalah alamat letak dari nilai datanya, bukan nilai datanya. Fungsi yang menerima kiriman alamat ini makan menggunakan alamat yang sama untuk mendapatkan nilai datanya. Perubahan nilai di fungsi akan merubah nilai asli di bagian program yang memanggil fungsi. Pengiriman parameter secara referensi adalah pengiriman dua arah, yaitu dari fungsi pemanggil ke fungsi yang dipanggil dan juga sebaliknya. Pengiriman secara acuan tidak dapat bdilakukan untuk suatu ungkapan. Contoh Call by Reference #include<conio.h> #include<stdio.h> #include<iostream.h> tambah(int *c, int *d); main() int a, b; a = 2; b = 5; clrscr(); cout<<"nilai Sebelum Pemanggilan Fungsi"; cout<<"\na = "<<a<<" b = "<<b; tambah(&a,&b); cout<<endl; cout<<"\nnilai Setelah Pemanggilan Fungsi"; cout<<"\na = "<<a<<" b = "<<b; getch(); 56

61 } tambah(int *c, int *d) *c+=8; *d+=5; cout<<endl; cout<<"\nnilai di Akhir Fungsi Tambah()"; cout<<"\nc = "<<*c<<" d = "<<*d; } 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 oleh fungsi tempat variabel dideklarasikan. Tidak ada inisialisasi secara otomatis (saat variabel diciptakan nilainya random). Dideklarasikan dengan menambahkan kata auto (opsional). Contoh Variabel local: #include<conio.h> #include<stdio.h> #include<iostream.h> 57

62 lokal(); main() int a = 15; clrscr(); cout<<"pemanggilan Variabel Lokal"<<endl; cout<<"\nnilai didalam funsi main() = : "<<a; lokal(); cout<<"\nnilai didalam funsi main() = : "<<a; getch(); } lokal() int a = 10; cout<<"\nnilai a didalam fungsi lokal() = "<<a; } 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: 58

63 #include<conio.h> #include<stdio.h> #include<iostream.h> int a = 6; //--> deklarasi variabel eksternal void lokal(); void main() clrscr(); cout<<"penggunaan Variabel Eksternal"<<endl; cout<<"\nnilai didalam funsi main() = : "<<a; lokal(); //--> pemanggilan fungsi local cout<<"\nnilai Setelah penggilan fungsi local() = "; cout<<a; getch(); } void lokal() a+=10; } 59

64 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: #include<conio.h> #include<stdio.h> #include<iostream.h> walah(); //--> prototipe fungsi walah main() int k = 5; clrscr(); walah(); walah(); cout<<"\nnilai K didalam fungsi main() = "<<k; getch(); } walah() static int k; // --> deklarasi variabel statis 60

65 k += 4; cout<<"\nnilai K didalam fungsi() = "<<k; } 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). Proses perulangan akan lebih cepat karena variabel register memiliki kecepatan yang lebih tinggi dibandingkan variabel biasa. Dideklarasikan dengan menambahkan kata register. F U N G S I R E K U R S IF Rekursif ialah salah satu teknik pemrograman dengan cara memanggil sebuah fungsi dari dirinya sendiri, baik itu secara langsung maupun tidak langsung. Pemanggilan fungsi rekursif secara langsung berarti dalam fungsi tersebut terdapat statement untuk memanggil dirinya sendiri sedangkan secara tidak langsung berarti fungsi rekursif tersebut memanggil 1 atau lebih fungsi lain sebelum memanggil dirinya sendiri. 61

66 Tipe_fungsi nama_fungsi([parameter]) // statement coba([parameter]) // statement Fungsi Rekursif Langsung [ret-val] satu([parameter]) // statement dua([parameter]) // statement } [ret-val] dua([parameter]) // statement satu([parameter]) // statement } Fungsi Rekursif Tak Langsung Rekursif tidak selalu lebih jelek daripada iteratif. Ada kalanya sebuah fungsi rekursif justru empermudah penyelesaian masalah yang ditemui pada kasus iterative (pengulangan). Kelemahan pada proses rekursif antar lain, memerlukan tempat penampungan stack yang cukup besar. Karena setiap kali pemanggilan fungsi, register register seperti cs ( untuk memory far ) dan ip harus disimpan, belum lagi untuk penanganan local variable serta parameter fungsi yang tentunya membutuhkan ruang untuk stack lebih banyak lagi. Selain itu karena setiap pemanggilan fungsi, register dan memory harus di push ke stack maka setelahselesai pemanggilan perlu diadakannya pop stack. untuk mengembalikan memory dan register kembali ke keadaan awal, ini sering disebut sebagai overhead. 62

67 Proses Rekursif marilah Untuk dapat memahami proses yang terjadi dalam sebuah fungsi rekursif, kita simak contoh fungsi rekursif berikut : void rekursi(int a,int b) if (b == 0) return; a++; Misalkan Fungsi tersebut dipanggil dengan nilai a = 3 dan b = 3 maka b--; pertama-tama printf("masuk di cek apakah -> a b = = %d 0 (if (b b == = 0) %d return), \n",a,b); jika sama maka keluar. rekursi(a,b); Ternyata printf("keluar nilai b tidak sama -> dengan a = %d 0 maka b tambahkan = %d \n",a,b); a dengan 1 dan kurangi b dengan } 1. Maka keadaan sekarang menjadi a = 4 dan b = 2. Baris berikutnya menampilkan nilai a dan b ke layar (printf("masuk -> a = %d b = %d \n",a,b)). Kemudian panggil fungsi rekursi dengan nilai a = 4 dan b = 2. Langkah langkah tersebut diulang terus sampai pemanggilan fungsi rekursi dengan nilai a = 6 dan b = 0. Pada saat ini kondisi if bernilai benar sehingga fungsi akan keluar (return) dan melanjutkan perintah setelah pemanggilan fungsi rekursi dengan a = 6 dan b = 0. Yaitu mencetak nilai a dan b (printf("keluar -> a = %d b = %d \n",a,b)). Setelah mencetak nilai a dan b maka fungsi rekursif akan keluar lagi, dan melanjutkan perintah setelah pemanggilan fungsi rekursif sebelumnya dimana nilai a = 5 dan b = 1. Demikian seterusnya sampai nilai a = 4 dan nilai b = 2. yang tidak lain pemanggilan fungsirekurif yang pertama. Proses pemanggilan fungsi rekursif dapat diilustrasikan : Untuk memperjelas lagi penggunaan fungsi rekursif dibawah ini akan di berikan contoh-contoh program dengan menggunakan rekursif. 63

68 Menghitung Nilai Faktorial Dengan Rekursif Untuk menghitung nilai faktorial bilangan bulat positif marilah kita daftarkan dulu nilai nilai faktorial untuk mempermudah pengambilan algoritma. Dari daftar diatas dapat dibuat fungsi rekursi untuk menghitung nilai faktorial ke-n yaitu: Jika di terjemahkan ke dalam bahasa C menjadi : int Fakt(int n) if (n == 1 n == 0) return 1; return n * Fakt(n-1); } 3.2 Struktur Data Struktur data adalah elemen-elemen data yang dikelompokkan dalam satu nama. Elemen-elemen data tersebut dapat memiliki tipe dan ukuran yang berbeda. Struktur data digunakan untuk merepresentasikan suatu record, misalkan kita akan mendata buku di perpustakaan. Kita mungkin ingin menyimpan atribut pada setiap buku. Misalkan ID, penulis, tema, & judul. 64

69 Mendefinisikan Struktur Data Untuk mendefinisikan suatu struktur data, kita perlu menggunakan suatu pernyataan (struct statement). Struct statement mendefinisikan sebuah tipe data baru, dengan lebih dari satu anggota pada program. Berikut adalah format penggunan struct statement : struct [structure tag] member definition 1; member definition 2;... member definition n; } [satu atau lebih variabel struktur] Penggunaan structure tag adalah pilihan, dan setiap member definition adalah definisi sebuah variable misalkan, int i; atau float f; atau definisi variabel valid lainnya. Pada akhir definisi struktur, sebelum titik koma akhir, kita dapat menggunakan satu atau lebih variabel struktur. Tetapi penggunaanya adalah suatu pilihan. Berikut adalah contoh pendeklarasian struktur data buku: struct buku int id_buku; char judul[50]; char penulis[50]; char tema[50]; }buku; 65

70 Mengakses Struktur Utuk mengakses anggota struktur, kita menggunakan operator akses member (.) (member access operator). Operator akses member pada kode berupa titik diantara variabel nama struktur dan anggota struktur yang akan kita akses. Kita mungkin menginginkan untuk menggunakan kata struct untuk mendefinisikan variabel tipe struktur. Berikut ini adalah contoh penggunaan struktur: #include"conio.h" #include"stdio.h" #include"iostream.h" #include <cstring> //using namespace std; struct buku int id_buku; char judul[50]; char penulis[50]; char tema[50]; }; int main() struct buku buku1; struct buku buku2; //deklarasi buku1 pada tipe buku //deklarasi buku2 pada tipe buku //spesifikasi buku 1 strcpy(buku1.judul, "Pembelajaran C++"); strcpy(buku1.penulis, "John Tampan"); strcpy(buku1.tema, "Pemrograman C++"); 66

71 buku1.id_buku=100001; //spesifikasi buku 2 strcpy(buku2.judul, "Basic Hardware"); strcpy(buku2.penulis, "C. George"); strcpy(buku2.tema, "Hardware"); buku2.id_buku=100002; //output informasi buku 1 cout<<"buku 1 - Judul : "<<buku1.judul<<endl; cout<<"buku 1 - Penulis : "<<buku1.penulis<<endl; cout<<"buku 1 - Tema : "<<buku1.tema<<endl; cout<<"buku 1 - ID : "<<buku1.id_buku<<endl; //output informasi buku 2 cout<<"buku 2 - Judul : "<<buku2.judul<<endl; cout<<"buku 2 - Penulis : "<<buku2.penulis<<endl; cout<<"buku 2 - Tema : "<<buku2.tema<<endl; cout<<"buku 2 - ID : "<<buku2.id_buku<<endl; getch(); } 67

72 Hasil dari coding di atas: Struktur Sebagai Fungsi Dari Agumen Kita dapat menggunakan suatu struktur sebagai fungsi dari argumen dengan cara yang sama dengan penggunaan pada variabel atau penunjuk (pointer) lainnya. Kita dapat mengakses struktur variabel dengan cara yang mirip dengan contoh diatas: #include"conio.h" #include"stdio.h" #include"iostream.h" #include <cstring> //using namespace std; void printbuku(struct buku0 buku); 68

73 struct buku0 int id_buku; char judul[50]; char penulis[50]; char tema[50]; }; int main() struct buku0 buku1; //deklarasi buku1 pada tipe buku struct buku0 buku2; //deklarasi buku2 pada tipe buku //spesifikasi buku 1 strcpy(buku1.judul, "Pembelajaran C++"); strcpy(buku1.penulis, "John Tampan"); strcpy(buku1.tema, "Pemrograman C++"); buku1.id_buku=100001; //spesifikasi buku 2 strcpy(buku2.judul, "Basic Hardware"); strcpy(buku2.penulis, "C. George"); strcpy(buku2.tema, "Hardware"); buku2.id_buku=100002; // Output info buku1 printbuku(buku1); // Output info buku2 printbuku(buku2); } void printbuku(struct buku0 buku) 69

74 cout<<"judul Buku\t : "<<buku.judul<<endl; cout<<"penulis Buku\t : "<<buku.penulis<<endl; cout<<"tema Buku\t : "<<buku.tema<<endl; cout<<"id Buku\t\t : "<<buku.id_buku<<endl; getch(); } Hasil dari coding di atas: Pointer pada Struktur Kita dapat mendefinisikan penunjuk (pointers) pada struktur dengan cara yang sama dengan mendefinisikan penunjuk pada variabel lain seperti : struct buku0 *penunjuk_struktur; Sekarang, kita dapat menyimpan alamat variabel struktur pada variabel penunjuk yang telah didefinisikan di atas. Untuk mencari alamat variabel struktur tersebut, gunakan operator (&) sebelum nama struktur seperti: 70

75 struct_pointer = &buku1; Untuk mengakses anggota struktur menggunakan penunjuk, kita perlu menggunakan operator (->) seperti: struct_pointer -> judul; Contoh penggunaan penunjuk (pointers): #include"conio.h" #include"stdio.h" #include"iostream.h" #include <cstring> //using namespace std; void printbuku(struct buku0 *buku); struct buku0 int id_buku; char judul[50]; char penulis[100]; char tema[50]; }; int main() struct buku0 buku1; //deklarasi buku1 pada tipe buku struct buku0 buku2; //deklarasi buku2 pada tipe buku //spesifikasi buku 1 71

76 strcpy(buku1.judul, "Pembelajaran C++"); strcpy(buku1.penulis, "John Tampan"); strcpy(buku1.tema, "Pemrograman C++"); buku1.id_buku=100001; //spesifikasi buku 2 strcpy(buku2.judul, "Basic Hardware"); strcpy(buku2.penulis, "C. George"); strcpy(buku2.tema, "Hardware"); buku2.id_buku=100002; //Output info buku1 printbuku(&buku1); //Output info buku2 printbuku(&buku2); } //fungsi ini agar penunjuk pada struktur dikenali sebagai parameter void printbuku(struct buku0 *buku) cout<<"judul Buku\t : "<<buku->judul<<endl; cout<<"penulis Buku\t : "<<buku->penulis<<endl; cout<<"tema Buku\t : "<<buku->tema<<endl; cout<<"id Buku\t\t : "<<buku->id_buku<<endl; getch(); } 72

77 Hasil dari coding di atas: Typedef There are no sources in the current document. (Tutorials Point Team, n.d.) (Rosihan Ari Yuana) Ada cara yang lebih mudah untuk mendefinisikan struktur atau kita dapat membuat tipe alias. Contohnya : typedef struct int id_buku; char judul[50]; char penulis[100]; char tema[50]; }buku0; Sekarang, kita dapat menggunakan buku0 untuk mendefinisikan variabel dari tipe buku0 tanpa menggunakan kata kunci struct. Contohnya: Buku0, buku1, buku2; 73

78 Kita juga dapat menggunakan typedef untuk hal selain struct : typedef long int *pint32; pint32 x, y, z; x, y, dan z adalah penunjuk (pointer) untuk long int. 74

79 BAB IV PENUTUP 4.1 KESIMPULAN C++ merupakan salah satu bahasa pemrograman yang mudah dipelajari dan berorientasikan pada objek. Bahasa C++ mempunyai struktur bahasa yang mudah dipahami. Dalam menjalankan program dari bahasa C++ dibutuhkan suatu compiler yang berguna untuk mengkompilasi kode yang kita tuliskan menjadi bentuk bahasa mesin sehingga program dapat berjalan. 4.2 SARAN Sebaiknya dalam membuat kode program perhatikan huruf besar dan huruf kecilnya, karena C++ bersifat case sensitive. Selain itu, kita juga harus memperhatikan compiler yang digunakan untuk menjalankan program tersebut agar program berjalan sesuai keinginan kita tanpa adanya kesalahan-kesalahan. 75

80 DAFTAR PUSTAKA Copyright PIK Unsri Agustus 2006 Frieyadie Panduan Pemrogramman C++. Penerbit Andi. Yogyakarta. Muhammad Fachrurrozi M. Fachrurrozi Dwi Rosa Indah. C++. LABORATORIUM DASAR KOMPUTER PROGRAM ILMU KOMPUTER. R.H. Sianipar Pemrograman C++ Untuk Pemula. Penerbit INFORMATIKA. Bandung Rosihan Ari Yuana S. Si. M.Kom Tutorial point team C++ data structures 76

81 BIOGRAFI TEAM PENYUSUN Nama saya Fadhli Umar Ali, saya lahir di Bandung tepatnya tanggal 10 Januari 1988, saya adalah anak ke lima dari lima bersaudara. Ayah saya seorang wiraswasta, sedangkan ibu saya adalah ibu rumah tangga. Dalam dunia pendidikan saya memulai pendidikan pada usia 5 Tahun di SDN 3 Melong Asih. Setelah lulus sekolah dasar pada usia 11 tahun saya memulai pendidikan di sekolah menengah pertama tepatnya SMPN 39 Bandung, setelah itu pada usia 14 tahun saya memulia pendidikan di sekolah menengah atas di SMA PASUNDAN 2 Kota Cimahi. Pada saat ini melanjutkan pendidikan tinggi di salah satu universitas swasta yang cukup terkenal dalam bidang teknologinya, yaitu di Universitas Bina Sarana Informatika dengan mengambil jurusan Teknik Informatika. Saya melanjutkan pendidikan tinggi pada umur 27 Tahun. Pada saat ini masih aktif sebagai mahasiswa Bina Sarana Informatika dan berada di tingkat satu. 77

82 Nama saya Fepi Priyatna, saya lahir di Bandung pada tanggal 25 Agustus1995.umur saya baru 20 tahun. Saya anak pertama dari 2 bersaudara. Adik perempuan saya bernama Devi.Orang tua saya bernama Tatang dan Neneng Nurhayati. Saya memulai pendidikan pada usia 7 tahun di Sekolah Dasar Negeri Sasaksaat. Setelah lulus dari SDN Sasaksaat, saya melanjutkan sekolah ke SMPN 2 Cipatat. 3 tahun berlalu saya melanjutkan sekolah tingkat atas ke SMKN 11 Bandung. Saya mengambil jurusan Tektik Komputer dan Jaringan. Setelah lulus dari SMK,saya melanjutkan pendidikan di universitas swasta di bandung, yaitu di Universitas Bina Sarana Informatika. Saya kuliah mengambil jurusan Teknik Informatika. Saya melanjutkan pendidikan di perguruan tinggi pada usia 20 Tahun, dan pada saat ini masih aktif sebagai mahasiswa Bina Sarana Informatika. 78

83 Nama saya Ary Indrawan lahir di Bandung pada 14 Oktober 1996,saya anak ke satu dari 3 bersaudara ayah saya berprofesi sebagai guru di SMA PASUNDAN dan ibu saya sebagai ibu rumah tangga. Dalam pendidikan pertama,saya memulai pendidikan pada usia 5 tahun di SDN PAMEUNGPEUK II,setelah lulus pada usia 11 tahun saya melanjutkan pada jenjang selanjutnya di SMPN 1 BALEENDAH,setelah lulus di usia 14 tahun saya melanjutkan pendidikan menengah atas di SMKN 4 BANDUNG dan lulus pada usia 17 tahun. Setelah lulus Sekolah Menengah Atas saya lanjut bekerja d PT.DALIATEX KUSUMA,kemudian saya melanjutkan pendidikan tinggi di Universitas Swasta tepatnya di Bina Sarana Informatika pada usia 18 tahun dan masih aktif sebagai mahasiswa sampai saat ini. 79

84 Saya, Irsam Mukarom. Kelahiran Bandung pada tahun Anak pertama dari 3 bersaudara. Ayah saya seorang wirausahawan dan ibu saya seorang ibu rumah tangga. Saya memulai pendidikan di SDN Dr. Cipto Bandung. Setelah lulus pada tahun 2003, saya melanjutkan ke SMPN 2 Bandung, dan SMAN 20 Bandung pada tahun Setelah lulus SMA, saya bekerja selama beberapa bulan sebagai operator/teknisi pada sebuah warnet di Bandung sebelum bekerja di sebuah konsultan di Bandung. Saat ini saya melanjutkan pendidikan di Universitas Bina Sarana Informatika, jurusan Teknik Informatika dengan harapan dapat melakukan pekerjaan yang jauh lebih variatif kedepannya. 80

85 Nama saya Andri Budi Santoso, saya lahir di Bandung tepatnya tanggal 6 Juni 1997, saya adalah anak ke satu dari dua bersaudara. Ayah saya seorang wiraswasta, sedangkan ibu saya adalah ibu rumah tangga. Dalam dunia pendidikan saya memulai pendidikan pada usia 6 Tahun di SDN Cempaka Arum. Setelah lulus sekolah dasar pada usia 12 tahun saya memulai pendidikan di sekolah menengah pertama tepatnya SMPN 30 Bandung, setelah itu pada usia 15 tahun saya memulai pendidikan di sekolah menengah kejuruan di SMK NEGERI 4 Kota Bandung. Pada saat ini melanjutkan pendidikan tinggi di salah satu universitas swasta yang cukup terkenal dalam bidang teknologinya, yaitu di Universitas Bina Sarana Informatika dengan mengambil jurusan Teknik Informatika. Saya melanjutkan pendidikan tinggi pada umur 18 Tahun. Pada saat ini masih aktif sebagai mahasiswa Bina Sarana Informatika dan berada di tingkat satu. 81

86 Nama saya Surya Sumirat, saya lahir di sumedang pada tanggal 27 september Saya anak ke tiga dari lima bersaudara. Ayah saya bernama Olib umur 53 tahun bekerja sebagai wiraswasta dan ibu saya bernama Heni Rohaeni bekerja sebagai ibu rumah tangga. Saya pertama kali masuk TK Alqur an Nurul Yakin pada usia 5 tahun dan belajar disana selama 2 tahun selanjutnya masuk Sekolah Dasar di SDN Cikoneng 1. Selama sekolah dasar saya mendapat beberapa piala penghargaan dari bidang akademik sains dan olahraga sepak bola, selain itu juga saya pernah mendapat penghargaan di bidang seni suara. Setelah lulus dari SD saya masuk SMPN 2 Sumedang, disana saya aktif di organisasi OSIS, Paskibra, dan pramuka. Selama di SMP saya mengikuti beberapa perlombaan namun prestasi terbaik saya yaitu Juara 1 lomba majalah diding sekabupaten Sumedang dan pernah menjadi perwakilan kabupaten sumedang di tingkat provinsi dalam acara pasinggiri basa sunda maca warta pada tahun 2009 di Garut. Pada tahun 2010 saya lulus SMP dan melanjutkan ke SMKN 1 Sumedang Jurusan Teknik Elektronika saya bangga bisa lulus disana karena dari 1400 pendaftar yang diterima hanya 500 orang mengalahkan banyak saingan pada saat testing masuk. Di SMK saya aktif di Organisasi Drum Band Gita Sena Praja, saya mendapat pretasi sebagai juara umum Sumedang Open Festival Drumband pada tahun Selain itu juga saya mendapat presatasi akademik rangking 1 di kelas selama 3 tahun. Tahun 2013 saya lulus SMK dan mendaftar Bidik Misi di perguruan tinggi Politeknik Manufaktur Negeri Bandung. Pada saat tes pertama saya lulus pada tes administrasi nilai raport namun pada saat tes psikotes saya tidak lulus. Pada saat itu saya memutuskan untuk mencari pekerjaan, dan ternyata tak semudah yang saya bayangkan. Namun pada akhirnya pada tanggal 19 Agustus 2013 saya di terima di PT Elektrindodaya Pakarnusa sampai dengan sekarang. Setelah bekerja selama 2 tahun saya masuk kuliah di Universitas Bina sarana Informatika jurusan Teknik Informatika. Disini saya sangat senang sekali karena teman-temannya sangat baik dan dosennya sangat membantu dalam meraih ilmu. 82

BAB III PENGAMBILAN KEPUTUSAN

BAB III PENGAMBILAN KEPUTUSAN BAB III PENGAMBILAN KEPUTUSAN Tujuan : 1 Menjelaskan tentang operator kondisi (operator relasi dan logika) 2 Menjelaskan penggunaan pernyataan if 3 Menjelaskan penggunaan pernyataan if- 4 Menjelaskan penggunaan

Lebih terperinci

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data..

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data.. OPERATOR BAHASA C Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data.. Operator adalah suatu tanda atau simbol yang digunakan untuk

Lebih terperinci

PENGENALAN C++ Bab 1

PENGENALAN C++ Bab 1 PENGENALAN C++ Bab 1 1.1 SEJARAH C++ Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American National Standard Institute). Pertama kali, prototype

Lebih terperinci

PENGENALAN C++ DADANG MULYANA 2012

PENGENALAN C++ DADANG MULYANA 2012 PENGENALAN C++ dadang mulyana 202 PENGENALAN C++ DADANG MULYANA 202 Bahasa C merupakan bahasa pendahulu dari bahasa C++. Pencipta C adalah Brian W. Kernighan dan Dennis M. Ritchie pada sekitar tahun

Lebih terperinci

BAB 4 PENGENALAN BAHASA C

BAB 4 PENGENALAN BAHASA C Bab 4 Pengenalan Bahasa C 35 BAB 4 PENGENALAN BAHASA C TUJUAN PRAKTIKUM 1. Mengetahui sejarah perkembangan bahasa C. 2. Mengerti struktur program bahasa C. 3. Mengerti konsep tipe data, variabel, & operator

Lebih terperinci

Bab 2. Dasar-Dasar Pemrograman C

Bab 2. Dasar-Dasar Pemrograman C Bab 2. Dasar-Dasar Pemrograman C Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 Overview Tipe Data Standar (Standart Data Type) Aturan Pendefinisian Identifier Variabel Mendeklarasikan

Lebih terperinci

TUGAS MATA KULIAH ALGORITMA PEMROGRAMAN 3

TUGAS MATA KULIAH ALGORITMA PEMROGRAMAN 3 TUGAS MATA KULIAH ALGORITMA PEMROGRAMAN 3 2 - IA02 DISUSUN OLEH : INDRA NUGRAHA ADI (53411603 ) ADE TRISMA (50411142 ) TATA ANUGRA (57411033 ) SYLVIA NUR KARTIKA (58411452) FAKULTAS TEKNOLOGI INDUSTRI

Lebih terperinci

Struktur Bahasa C dan C++

Struktur Bahasa C dan C++ Elemen Program Struktur Bahasa C dan C++ Bahasa C merupakan bahasa pendahulu dari bahasa C++. Pencipta C adalah Brian W. Kernighan dan Dennis M. Ritchie pada sekitar tahun 1972. C adalah bahasa pemrograman

Lebih terperinci

Struktur Program C++ Preprocessor directive : perintah dalam bahasa c++ yang akan membuat dan mengkompilasi file perantara dengan program utama

Struktur Program C++ Preprocessor directive : perintah dalam bahasa c++ yang akan membuat dan mengkompilasi file perantara dengan program utama Struktur Program C++ Bahasa C++ merupakan bahasa yang terstruktur, sehingga struktur penulisan program dalam bahasa c++ dirangkai dari kumpulan sejumlah fungsi, setidaknya memiliki sebuah fungsi utama,

Lebih terperinci

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER) MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER) I. TUJUAN 1. Mahasiswa mengenal struktur bahasa pemrograman C dan C++ 2. Mahasiswa mengenal perintah-perintah dasar C dan C++ 3. Mahasiswa

Lebih terperinci

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom DASAR PEMROGRAMAN PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom https://www.facebook.com/groups/dasarpemrogramanc TUJUAN Mengenal sejarah, struktur, sintaks

Lebih terperinci

Achmad Solichin.

Achmad Solichin. Pemrograman Bahasa C dengan Turbo C Sh-001@plasa.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit),

Lebih terperinci

Praktikum 4 PENGAMBILAN KEPUTUSAN

Praktikum 4 PENGAMBILAN KEPUTUSAN Praktikum 4 PENGAMBILAN KEPUTUSAN A TUJUAN 1 Menjelaskan tentang operator kondisi (operator relasi dan logika) 2 Menjelaskan penggunaan pernyataan if 3 Menjelaskan penggunaan pernyataan if- 4 Menjelaskan

Lebih terperinci

Pengambilan Keputusan DASAR PEMROGRAMAN

Pengambilan Keputusan DASAR PEMROGRAMAN Pengambilan Keputusan DASAR PEMROGRAMAN TUJUAN Menjelaskan tentang operator kondisi (operator relasi dan logika) Menjelaskan penggunaan pernyataan if Menjelaskan penggunaan pernyataan if-else Menjelaskan

Lebih terperinci

Tipe Data dan Operator

Tipe Data dan Operator Tipe Data dan Operator Dasar Algoritma dan Pemrogrman Eka Maulana, ST, MT, MEng. Klasifikasi Tipe Data 1 Tipe Data Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam

Lebih terperinci

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C 1. Pendahuluan Lingkungan Turbo C++ 4.5 Turbo C++ 4.5 adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C++ 4.5. 1 2 3 4 1 : Menu Utama

Lebih terperinci

MODUL IV OPERASI DASAR MASUKAN DAN KELUARAN

MODUL IV OPERASI DASAR MASUKAN DAN KELUARAN MODUL IV OPERASI DASAR MASUKAN DAN KELUARAN Perintah Keluaran Perintah standar output yang disediakan Borland C++ diantaranya adalah: cout() printf() puts() putchar() Fungsi cout() Fungsi cout() merupakan

Lebih terperinci

Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah: Perkalian Pembagian Sisa Pembagian (mod) Penjumlahan 6 2

Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah: Perkalian Pembagian Sisa Pembagian (mod) Penjumlahan 6 2 [Kristanto:2009] Operator merupakan simbol atau kata yang dapat digunakan dalam program untuk melakukan suatu operasi atau manipulasi, seperti menjumlahkan dua buah nilai, memberikan nilai kesuatu variabel,

Lebih terperinci

PEMOGRAMAN BAHASA C. Oleh: SALAHUDDIN, SST

PEMOGRAMAN BAHASA C. Oleh: SALAHUDDIN, SST PEMOGRAMAN BAHASA C Oleh: SALAHUDDIN, SST POLITEKNIK NEGERI LHOKSEUMAWE 2008 DAFTAR ISI Daftar Isi ii BAB I SEKILAS TENTANG C 1 1.1 Sejarah dan Ruang Lingkup C 1 1.2 Kelebihan dan Kelemahan C 2 1.3 Proses

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR 1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode

Lebih terperinci

Chapter 1 KONSEP DASAR C

Chapter 1 KONSEP DASAR C Chapter 1 KONSEP DASAR C Sejarah Dan Standar C Akar dari bahasa C adalah BCPL (dikembangkan oleh Martin Richard tahun 1967). Kemudian Tahun 1970, Ken Thompson mengembangkan bahasa tersebut yang di kenal

Lebih terperinci

PENGERTIAN VARIABEL, KONSTANTA DAN TIPE DATA

PENGERTIAN VARIABEL, KONSTANTA DAN TIPE DATA PENGERTIAN VARIABEL, KONSTANTA DAN TIPE DATA Haida Dafitri, ST, M.Kom Ta. 2016 2017 T. Informatika STT Harapan Medan TUJUAN PEMBELAJARAN Setelah menyelesaikan bab ini, anda diharapkan : Mengenal dan Mengetahui

Lebih terperinci

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 1 / 6 A. TUJUAN Setelah melakukan praktik mahasiswa diharapkan dapat: 1. Memahami beberapa tipe data dasar (jenis dan jangkauannya) 2. Menjelaskan tentang variabel

Lebih terperinci

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1 MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1 Disusun oleh : Tim Asisten JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SUNAN KALIJAGA YOGYAKARTA 2011 0 A. Pengantar

Lebih terperinci

PENGENALAN BAHASA C DAN C++

PENGENALAN BAHASA C DAN C++ PRAKTIKUM KE 1 PENGENALAN BAHASA C DAN C++ TUJUAN PRAKTIKUM 1. Praktikan mengetahui sejarah bahasa C dan C++. 2. Praktikan mengerti struktur program bahasa C / C++. 3. Praktikan mengerti konsep tipe data

Lebih terperinci

PENGENALAN PROGRAM C++

PENGENALAN PROGRAM C++ 1 PENGENALAN PROGRAM C++ SEJARAH BAHASA C C adalah bahasa pemrograman yang dapat dikatakan berada antara bahasa beraras rendah (bahasa yang berorientasi kepada mesin) dan bahasa beraras tinggi (bahasa

Lebih terperinci

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pertemuan 1 STRUKTUR DATA Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pemakaian Struktur Data yang

Lebih terperinci

Algoritma dan Pemrograman

Algoritma dan Pemrograman Algoritma dan Pemrograman bagian 2 2009 Modul ini menjelaskan tentang bahasa C dan apa saja yang dibutuhkan bila kita akan menulis suatu program dengan bahasa C. Editor yang dipakai adalah Turbo C++ 4.5.

Lebih terperinci

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++ I.PENDAHULUAN 1. 1. ALGORITMA Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapat dikerjakan

Lebih terperinci

3. Elemen Dasar C++ S. Indriani S. L., M.T L.,

3. Elemen Dasar C++ S. Indriani S. L., M.T L., 3. Elemen Dasar C++ S. Indrianii L., M.T Himpunan karakter Suatu pengenal berupa satu atau beberapa karakter Huruf A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q

Lebih terperinci

BAB II DASAR-DASAR PEMROGRAMAN C

BAB II DASAR-DASAR PEMROGRAMAN C BAB II DASAR-DASAR PEMROGRAMAN C Tujuan : 1. Menjelaskan tentang beberapa tipe data dasar (jenis dan jangkauannya) 2. Menjelaskan tentang Variabel 3. Menjelaskan tentang konstanta 4. Menjelaskan tentang

Lebih terperinci

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA No. EKA/EKA255 Revisi:02 30 Agu 2014 Hal 1 / 6 A. TUJUAN Setelah melakukan praktik mahasiswa diharapkan dapat: 1. Memahami beberapa tipe data dasar (jenis dan jangkauannya) 2. Menjelaskan tentang variabel

Lebih terperinci

BAHASA PEMROGRAMAN C

BAHASA PEMROGRAMAN C BAHASA PEMROGRAMAN C A. Pengenalan Bahasa C diciptakan oleh Dennis Ritchie tahun 1972 di Bell Laboratories. Kelebihan Bahasa C: - Bahasa C tersedia hampir di semua jenis computer. - Kode bahasa C sifatnya

Lebih terperinci

PERTEMUAN II Tipe Data, Variabel, Konstanta, Operator

PERTEMUAN II Tipe Data, Variabel, Konstanta, Operator PERTEMUAN II Tipe Data, Variabel, Konstanta, Operator 1. Tipe Data Dasar 2. Pengertian Variabel 3. Pengertian Konstanta 4. Operator Penugasan 5. Operator Operasi Bit 6. Operator Logika Pertemuan II ELEMEN

Lebih terperinci

elemen Dasar Bahasa Pemrograman C

elemen Dasar Bahasa Pemrograman C Elemen-elemen elemen Dasar Bahasa Pemrograman C Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN - 2008 Identifier : Elemen Dasar C Nama pengenal (identifier) adalah nama-nama yang ditentukan

Lebih terperinci

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pertemuan 1 STRUKTUR DATA Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pemakaian Struktur Data yang

Lebih terperinci

Pertemuan 04. Pemrograman Dasar 2012

Pertemuan 04. Pemrograman Dasar 2012 Pertemuan 04 Pemrograman Dasar 2012 1 Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Memahami tentang proses sederhana (simple process) berupa pemanggilan procedure (fungsi) dan ekspresi serta

Lebih terperinci

KONSEP DASAR BAHASA C

KONSEP DASAR BAHASA C . SEJARAH DAN STANDAR C KONSEP DASAR BAHASA C Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin Richard pada tahun 967. Bahasa ini memberkan ide kepada ken thompson yang kemudian mengembangkan

Lebih terperinci

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pertemuan 1 STRUKTUR DATA Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pemakaian Struktur Data yang

Lebih terperinci

Algoritma & Pemrograman #3

Algoritma & Pemrograman #3 Algoritma & Pemrograman #3 by antonius rachmat c, s.kom, m.cs Tentukan nama variabel yang benar : 1. 9kepala 2. _nilaimax 3. data nilai 4. _4445 5. a_b Review: Deklarasi Identifier Variabel Bentuk umum:

Lebih terperinci

Praktikum 3 PENGAMBILAN KEPUTUSAN

Praktikum 3 PENGAMBILAN KEPUTUSAN Praktikum 3 PENGAMBILAN KEPUTUSAN A. TUJUAN 1. Menjelaskan tentang operator kondisi (operator relasi dan logika) 2. Menjelaskan penggunaan pernyataan if 3. Menjelaskan penggunaan pernyataan if- 4. Menjelaskan

Lebih terperinci

Bahasa C. Dosen : Dhamayanti

Bahasa C. Dosen : Dhamayanti Bahasa C Dosen : Dhamayanti C dan C++ Bahasa C merupakan bahasa pendahulu dari bahasa C++. Pencipta C adalah Brian W. Kernighan dan Dennis M. Ritchie pada sekitar tahun 1972. C adalah bahasa pemrograman

Lebih terperinci

Dasar Pemrograman Java

Dasar Pemrograman Java Dasar Pemrograman Java Tessy Badriyah, SKom. MT. http://lecturer.eepis-its.edu/~tessy Tujuan Pembelajaran Penggunaan Komentar dalam program Memahami perbedaan identifier yang valid dan yang tidak valid

Lebih terperinci

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu : 1 Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu : Contoh Program : { int x; float y; char z; double w; clrscr(); /* untuk membersihkan layar */ x = 10; /* variable

Lebih terperinci

Bahasa C-M6 By Jamilah, Skom 1

Bahasa C-M6 By Jamilah, Skom 1 BAB 1 KONSEP DASAR BAHASA C 1.1 SEJARAH DAN STANDAR C Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin Richard pada tahun 1967. Bahasa ini memberkan ide kepada ken thompson yang kemudian

Lebih terperinci

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA Kata-Kata Cadangan Kata-kata cadangan (reserved words) adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksud tertentu. Kata-kata

Lebih terperinci

BAB 3. OPERATOR DALAM BHS C

BAB 3. OPERATOR DALAM BHS C BAB. OPERATOR DALAM BHS C. Assigment Operator Operator Assigment digunakan untuk memberikan nilai ke suatu variabel. Operator yang digunakan adalah opertor = A = 5; (memberi nilai 5 ke dalam variabel A)

Lebih terperinci

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2 VARIABEL, TIPE DATA DAN EKSPRESI Bab 2 2.1 IDENTIFIER Indentifier adalah nama yang diberikan untuk nama objek, nama fungsi, nama variable, dll ( sifatnya case sensitive ). Identifier pada C++ terdiri dari

Lebih terperinci

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Data bisa dinyatakan dalam bentuk konstanta atau variabel. Dasar Pemrograman C Objectives Menjelaskan tentang beberapa tipe data dasar Menjelaskan tentang Variabel Menjelaskan tentang konstanta Menjelaskan tentang berbagai jenis operator dan pemakaiannya Menjelaskan

Lebih terperinci

TIPE DATA, VARIABLE, dan OPERATOR DELPHI

TIPE DATA, VARIABLE, dan OPERATOR DELPHI TIPE DATA, VARIABLE, dan OPERATOR DELPHI A. TIPE DATA Delphi merupakan bahasa pemrograman tingkat tinggi yang mendukung perancangan terstruktur dan berorientasi Object. Bahasa pemrograman ini berdasarkan

Lebih terperinci

BUKU PETUNJUK PRAKTIKUM DASAR ALGORITMA DAN PEMROGRAMAN

BUKU PETUNJUK PRAKTIKUM DASAR ALGORITMA DAN PEMROGRAMAN BUKU PETUNJUK PRAKTIKUM DASAR ALGORITMA DAN PEMROGRAMAN BUKU PETUNJUK LABORATORIUM KOMPUTASI DAN JARINGAN JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS BRAWIJAYA MALANG PERATURAN PRAKTIKUM PERATURAN

Lebih terperinci

PRAKTIKUM 3 DASAR PEMROGRAMAN C

PRAKTIKUM 3 DASAR PEMROGRAMAN C PRAKTIKUM 3 DASAR PEMROGRAMAN C A. TUJUAN 1. Menjelaskan tentang beberapa tipe data dasar (jenis dan jangkauannya) 2. Menjelaskan tentang Variabel 3. Menjelaskan tentang konstanta 4. Menjelaskan tentang

Lebih terperinci

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator OPERATOR Operator digunakan untuk menyatakan suatu perhitungan/operasi. Operator yang digunakan untuk operasi yang melibatkan satu operand disebut unary operator. Jika melibatkan dua operand maka disebut

Lebih terperinci

KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C

KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C Disusun oleh: Bachtiar Maulana (58411782) Marlinda Dwi Cahya (54411318) Muh. Mahlani (5411622) Muzaky Bakri Salim (55411060) UNIVERSITAS GUNADARMA

Lebih terperinci

Pengambilan Keputusan. Konsep Pemrograman Oleh Tita Karlita

Pengambilan Keputusan. Konsep Pemrograman Oleh Tita Karlita Pengambilan Keputusan Konsep Pemrograman Oleh Tita Karlita Topik Menjelaskan tentang operator kondisi (operator relasi dan logika) Menjelaskan penggunaan pernyataan if Menjelaskan penggunaan pernyataan

Lebih terperinci

ALGORITHM 7 C++ Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

ALGORITHM 7 C++ Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com ALGORITHM 7 C++ Dahlia Widhyaestoeti, S.Kom dahlia.widhyaestoeti@gmail.com dahlia74march.wordpress.com Struktur program dalam C++ C sebagai bahasa pendahulunya C++ C merupakan termasuk bahasa pemrograman

Lebih terperinci

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA TUJUAN Menjelaskan tentang beberapa tipe data dasar Menjelaskan tentang Variabel Menjelaskan tentang konstanta Menjelaskan tentang berbagai jenis

Lebih terperinci

ELEMEN DASAR C++ C++ mempunyai cara untuk menyatakan karakter-karakter yang tidak mempunyai kode tombol (seperti karakter tombol) misalnya \n.

ELEMEN DASAR C++ C++ mempunyai cara untuk menyatakan karakter-karakter yang tidak mempunyai kode tombol (seperti karakter tombol) misalnya \n. 1 ELEMEN DASAR C++ HIMPUNAN KARAKTER Himpunan karakter pada C++ terdiri huruf, digit maupun simbol-simbol lainnya (termasuk spasi dan karakter kontrol). Huruf, contoh : A s/d Z dan a s/d z Digit, contoh

Lebih terperinci

Algoritme dan Pemrograman

Algoritme dan Pemrograman Kuliah #2 Struktur program C Tipe data Input / Output Algoritme dan Pemrograman Beberapa Catatan Lakukan KRS B jika: Belum mendaftar di KRS A Mendaftar di KRS A, tapi nama tidak muncul di absen Pindah

Lebih terperinci

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel. Dasar Pemrograman C Objectives Menjelaskan tentang beberapa tipe data dasar Menjelaskan tentang Variabel Menjelaskan tentang konstanta Menjelaskan tentang berbagai jenis operator dan pemakaiannya Menjelaskan

Lebih terperinci

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Ekspresi, Pernyataan & Operasi Aritmetika/Logika Ekspresi, Pernyataan & Operasi Aritmetika/Logika Ekspresi (expression) Pernyataan (statements) Operator Penugasan (assignment) Operator Aritmetika Operator Relasional Operator Logika Operator Bitwise 1

Lebih terperinci

PENGANTAR KOMPUTER DAN TEKNOLOGI INFORMASI 1A

PENGANTAR KOMPUTER DAN TEKNOLOGI INFORMASI 1A PENGANTAR KOMPUTER DAN TEKNOLOGI INFORMASI 1A REPRESENTASI DATA ALUR PEMROSESAN DATA SISTEM BILANGAN TEORI BILANGAN KOVERSI BILANGAN OPERASI ARITMATIKA Representasi Data Data adalah sesuatu yang belum

Lebih terperinci

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T PEMROGRAMAN BERORIENTASI OBJEK Operator Budhi Irawan, S.Si, M.T OPERATOR Operator adalah tanda yang digunakan untuk melakukan operasi operasi tertentu didalam program. Dengan adanya operator maka dapat

Lebih terperinci

PENGERTIAN C++ DAN FUNGSI-FUNGSINYA

PENGERTIAN C++ DAN FUNGSI-FUNGSINYA PENGERTIAN C++ DAN FUNGSI-FUNGSINYA Dany Setiawan dany.setiawan@windowslive.com Abstrak Perbedaan antara bahasa pemrograman C dan C++ meskipun bahasa-bahasa tersebut menggunakan sintaks yang sama tetapi

Lebih terperinci

PRAKTIKUM 3 DASAR PEMROGRAMAN C

PRAKTIKUM 3 DASAR PEMROGRAMAN C PRAKTIKUM 3 DASAR PEMROGRAMAN C A. TUJUAN 1. Menjelaskan tentang beberapa tipe data dasar (jenis dan jangkauannya) 2. Menjelaskan tentang Variabel 3. Menjelaskan tentang konstanta 4. Menjelaskan tentang

Lebih terperinci

DASAR PEMROGRAMAN. PENGENAL dan VARIABEL

DASAR PEMROGRAMAN. PENGENAL dan VARIABEL DASAR PEMROGRAMAN 1 PENGENAL dan VARIABEL Pengenal (identifier) merupakan nama yang biasa digunakan untuk variabel, konstanta, fungsi atau obyek yang lain yang didefinisikan oleh program. Variabel adalah

Lebih terperinci

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini: PENGENALAN BAHASA C A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini: Kebanyakan pemrogram jarang memberikan keterangan/

Lebih terperinci

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Ekspresi, Pernyataan & Operasi Aritmetika/Logika Ekspresi, Pernyataan & Operasi Aritmetika/Logika Ekspresi(expression) Pernyataan (statements) Operator Penugasan (assignment) Operator Aritmetika Operator Relasional Operator Logika Operator Bitwise 1

Lebih terperinci

Algoritma Pemrograman. Fery Updi,M.Kom

Algoritma Pemrograman. Fery Updi,M.Kom Algoritma Pemrograman Fery Updi,M.Kom 1 Kompetensi Detail Mampu menjelaskan Prinsip-prinsip Algoritma Mampu menjelaskan Konsep Bahasa Pemrograman Mampu membuat Flowchart dan Pseudocode Mampu menjelaskan

Lebih terperinci

BAB 2. FUNGSI INPUT OUTPUT

BAB 2. FUNGSI INPUT OUTPUT BAB 2. FUNGSI INPUT OUTPUT 2.1 Fungsi Input 1. Input Tanpa Format a. Memasukkan Nilai Karakter Fungsi yang digunakan : getche( ) : memasukkan karakter tanpa penekanan Enter getchar( ) : memasukkan karakter

Lebih terperinci

IT234 - Algoritma dan Struktur Data. Ramos Somya

IT234 - Algoritma dan Struktur Data. Ramos Somya IT234 - Algoritma dan Struktur Data Ramos Somya Asal kata Algoritma berasal dari nama seorang ilmuan Persian yang bernama Abu Ja far Mohammed lbn Musa al-khowarizmi, yang menulis kitab al jabr w al-muqabala

Lebih terperinci

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR BAB 3 TYPE DATA, VARIABLE DAN OPERATOR Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman

Lebih terperinci

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dalam tipe data dasar adalah bilangan logik, bilangan bulat,

Lebih terperinci

P 4 Bab 3 : Dasar Pemrograman C

P 4 Bab 3 : Dasar Pemrograman C Kampus II, Jl. Jembatan Merah, Nomor.C. Gejayan, Yogyakarta, Telp: (0), Fax (0) 00 P Bab : Dasar Pemrograman C. Tujuan Mahasiswa mampu mengetahui dan memahami identifier, keyword, variable, tipe data,

Lebih terperinci

INPUT DAN OUTPUT BAHASA C

INPUT DAN OUTPUT BAHASA C INPUT DAN OUTPUT BAHASA C FUNGSI INPUT TANPA FORMAT (MEMASUKKAN NILAI KARAKTER) Fungsi yang digunakan : getche( ) : memasukkan karakter tanpa penekanan Enter getchar( ) : memasukkan karakter dengan penekanan

Lebih terperinci

Pengenalan Bahasa C week 1

Pengenalan Bahasa C week 1 Desain dan Analisis Algoritma Pengenalan Bahasa C week 1 I Ketut Resika Arthana, S.T., M.Kom resika.arthana@gmail.com http://www.rey1024.com Perkenalan I Ketut Resika Arthana, M.Kom Resika Rey resika.arthana@gmail.com

Lebih terperinci

MENAMPILKAN HASIL Operasi Keluaran (Output)

MENAMPILKAN HASIL Operasi Keluaran (Output) MENAMPILKAN HASIL Operasi Keluaran (Output) 4.1 FUNGSI-FUNGSI YANG DIGUNAKAN Keunikan bahasa C untuk menampilkan hasil adalah semua prosesnya dilakukan oleh fungsi-fungsi. Fungsi-fungsi ini prototypenya

Lebih terperinci

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar Bahasa Pemrograman Pascal Page 1 / 11 Pengenalan Pascal Pascal merupakan salah satu bahasa pemrograman tingkat tinggi. Pemrograman

Lebih terperinci

PERTEMUAN 3 KONSEP TIPE DATA

PERTEMUAN 3 KONSEP TIPE DATA PERTEMUAN 3 KONSEP TIPE DATA KONSEP TIPE DATA C++ Pembagian tipe data : I. Tipe Sederhana (simple type) Int,Bool,Char Tipe Float II. Tipe String Operasi string III. Tipe Terstruktur (structured type) Array,

Lebih terperinci

SUMBER BELAJAR PENUNJANG PLPG

SUMBER BELAJAR PENUNJANG PLPG SUMBER BELAJAR PENUNJANG PLPG 2017 [TIK] BAB VIII PEMROGRAMAN BERORIENTASI OBJEK [Alfa Faridh Suni] KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN 2017 BAB VIII

Lebih terperinci

Pert 1 Struktur Data (mengajarkomputer.wordpress.com)

Pert 1 Struktur Data (mengajarkomputer.wordpress.com) Tugas Bentuk tugas yang harus dilakukan adalah : - Mahasiswa diharapkan mengerjakan tugas yang diberikan oleh dosen pada setiap pertemuan - Pembuatan dan presentasi project dilakukan pada pertemuan 10-12.

Lebih terperinci

BAB 1 KONSEP DASAR BAHASA C

BAB 1 KONSEP DASAR BAHASA C BAB 1 KONSEP DASAR BAHASA C 1. Sejarah dan Standar C Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin Richard pada tahun 1967. Bahasa ini memberikan ide kepada Ken Thompson yang kemudian

Lebih terperinci

KURSUS ONLINE JASA WEBMASTERS

KURSUS ONLINE JASA WEBMASTERS KURSUS ONLINE JASA WEBMASTERS C++ File Header JASA WEBMASTERS Jl. Ringin Raya No 124A Condong Catur, Sleman, Yogyakarta Apakah itu File Header? Bahasa pemrograman memiliki cara yang tersendiri untuk mendapatkan

Lebih terperinci

PENGANTAR KOMPUTER & SOFTWARE I REPRESENTASI DATA

PENGANTAR KOMPUTER & SOFTWARE I REPRESENTASI DATA PENGANTAR KOMPUTER & SOFTWARE I REPRESENTASI DATA Tim Pengajar KU1102 - Institut Teknologi Sumatera Data Data adalah sesuatu yang belum mempunyai arti bagi penerimanya dan masih memerlukan adanya suatu

Lebih terperinci

FUNGSI INPUT & OUTPUT

FUNGSI INPUT & OUTPUT FUNGSI INPUT & OUTPUT Fungsi Output 1. FUNGSI printf() Digunakan untuk menampilkan data. Bentuk umum : printf("string kontrol", argumen1, argumen2,...); printf ("%d",70); argumen berupa konstanta printf

Lebih terperinci

Tipe bentukan dan pointer selanjutnya akan kita pelajari pada modul pemrograman 1 (akhir semester).

Tipe bentukan dan pointer selanjutnya akan kita pelajari pada modul pemrograman 1 (akhir semester). TIPE DATA Penggunaan tipe data pada bahasa c++ erat kaitannya dengan penggunaan memori, perlu diperhatikan dalam penggunaanya. Terdapat tiga tipe data dalam bahasa C++ yaitu : 1. Tipe Data Dasar terdiri

Lebih terperinci

BAB 5 PERULANGAN DAN ARRAY

BAB 5 PERULANGAN DAN ARRAY Bab 5 Perulangan dan Array 66 BAB 5 PERULANGAN DAN ARRAY TUJUAN PRAKTIKUM 1. Praktikan mengerti apa yang dimaksud dengan perulangan 2. Praktikan mengerti apa yang dimaksud dengan seleksi kondisi 3. Praktikan

Lebih terperinci

Chapter 2 Tipe Data, Identifier, Operator dan Control Statement

Chapter 2 Tipe Data, Identifier, Operator dan Control Statement Chapter 2 Tipe Data, Identifier, Operator dan Control Statement Tipe Data dan Identifier Program adalah kumpulan instruksi yang disusun sedemikian rupa sehingga mempunyai urutan nalar yang tepat untuk

Lebih terperinci

Tipe Data dan Variabel. Dosen Pengampu Muhammad Zidny Naf an, M.Kom

Tipe Data dan Variabel. Dosen Pengampu Muhammad Zidny Naf an, M.Kom Tipe Data dan Variabel Dosen Pengampu Muhammad Zidny Naf an, M.Kom Format Pseudocode Lengkap Judul program/algoritma PROGRAM Euclidean Program untuk mencari GCD dari dua buah bilangan bulat positif m dan

Lebih terperinci

DASAR PEMROGRAMAN C BAB III 3.1 PENGENAL / IDENTIFIER

DASAR PEMROGRAMAN C BAB III 3.1 PENGENAL / IDENTIFIER 1 BAB III DASAR PEMROGRAMAN C 3.1 PENGENAL / IDENTIFIER Pengenal (identifier) merupakan nama yang biasa digunakan untuk variable, kontanta, fungsi atau obyek yang lain, yang didefenisikan oleh pembuat

Lebih terperinci

Pengenalan C++ Oleh : Dewi Sartika

Pengenalan C++ Oleh : Dewi Sartika Pengenalan C++ Oleh : Dewi Sartika Pendahuluan Bahasa Pemrograman C++ merupakan bahasa tingkat menengah dimana bahasa ini didasarkan atas bahasa C, keistimewaan dari bahasa C++ adalah bahasa ini mendukung

Lebih terperinci

LAPORAN PRAKTIKUM STRUKTUR DATA

LAPORAN PRAKTIKUM STRUKTUR DATA LAPORAN PRAKTIKUM STRUKTUR DATA Nama : Sarifudin Kelas / NIM : IK-1B / 3.34.11.1.22 Pengampu : Sukamto, S.Kom;M.T Jobs ke : 02 Pokok Bahasan : Operator Bahasa Java PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN

Lebih terperinci

BAB I SEKILAS TENTANG C

BAB I SEKILAS TENTANG C BAB I SEKILAS TENTANG C Tujuan : 1. Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C 2. Menjelaskan kelebihan dan kekurangan bahasa C 3. Menjelaskan proses kompilasi dan linking program C 4. Menjelaskan

Lebih terperinci

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id 1 MODUL PEMOGRAMAN WEB II Oleh: CHALIFA CHAZAR 2 MODUL 3 Tipe Data, Variable, dan Konstanta Tujuan: Mahasiswa mengenal tipe data dan mendeklarasikan variable di dalam pemrograman PHP sebagai pondasi dalam

Lebih terperinci

PEMROGRAMAN TERSTRUKTUR OLEH : IR. H. SIRAIT, MT

PEMROGRAMAN TERSTRUKTUR OLEH : IR. H. SIRAIT, MT PEMROGRAMAN TERSTRUKTUR C++ OLEH : IR. H. SIRAIT, MT PEMROGRAMAN C++ C sebagai bahasa pendahulunya C++ C merupakan termasuk bahasa pemrograman tingkat menengah. Pencipta C adalah Brian W. Kernighan dan

Lebih terperinci

OPERATOR DAN UNGKAPAN

OPERATOR DAN UNGKAPAN 1 OPERATOR DAN UNGKAPAN OPERATOR Operator merupakan simbol yang biasa dilibatkan dalam program untuk melakukan suatu operasi atau manipulasi, misalnya untuk : Menjumlahkan dua buah nilai Memberikan nilai

Lebih terperinci

9/9/2011 ILKOM IPB 1 ALGORITME DAN PEMROGRAMAN. Review: Algoritme dan Program. Bahasa tingkat rendah (low level language)

9/9/2011 ILKOM IPB 1 ALGORITME DAN PEMROGRAMAN. Review: Algoritme dan Program. Bahasa tingkat rendah (low level language) * * * * Masalah Review: Bagaimana memecahkan masalah dengan komputer????? ALGORITME DAN PEMROGRAMAN Kuliah #3 Implementasi algoritme Struktur program C Elemen program Logika Berpikir Implementasi Algortime

Lebih terperinci

Tipe Data dan Operator. Ekohariadi FT Unesa

Tipe Data dan Operator. Ekohariadi FT Unesa Tipe Data dan Operator Ekohariadi FT Unesa Tipe Data Tipe data variabel adalah penting sebab ia menentukan operasi yang diijinkan dan rentang nilai yang disimpan. C++ menentukan beberapa tipe data, dan

Lebih terperinci

1.4 Struktur Program Pada C++ Program C maupun C++ secara umum tersusun dari beberapa bagian utama, yaitu :

1.4 Struktur Program Pada C++ Program C maupun C++ secara umum tersusun dari beberapa bagian utama, yaitu : 1.2 Dasar Teori 1.2.1 Sejarah Bahasa C/C++ Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American National Standard Institute). Pertama kali

Lebih terperinci