Algorithms and Programming C/C++ SYS Course 1
Pengantar
Sebelum Mempelajari Bahasa Pemrograman C/C++, Umumnya anda harus mempelajari beberapa hal sebagai pengantar kedepannya agar mempermudah dalam mempelajari bahasa pemrograman C/C++.
Pendahuluan
Pendekatan yang digunakan di awal, siswa diajak untuk mengenali program-program kecil yang isinya adalah elemen pembangun program: ekspresi, assignment, kondisional dan loop. Pada kenyataannya, sebuah program mengandung campuran dari elemen pembangun tersebut. Siswa perlu meramu dan mengintegrasikan pengetahuan dengan “membongkar” sebuah program contoh dan mengambil elemennya untuk diadaptasi kemudian mengkonstruksi kembali sebuah program utuh untuk menyelesaikan persoalan yang dihadapinya.
Ini adalah hakekat dari Computational Thinking (Berpikir secara Komputasi). Dekomposisi persoalan dilakukan dengan memecah program menjadi bagian kecil elemen sintaktikal, untuk membentuk solusi yang utuh. Pattern (pola) diharapkan dapat terbentuk mulai dari elemen dasar sintaktikal yang dipelajari melalui program kecil, menuju pola solusi untuk jenis-jenis persoalan pembangun persoalan lebih besar.
Dengan dasar pemikiran dan pendekatan tersebut, Memulai Pemrograman Dasar dengan Bahasa C/C++ ini terdiri atas beberapa modul.
- Pendahuluan: Memperkenalkan sejarah C/C++, contoh aplikasi, dan istilah-istilah yang dipakai. Juga dibahas IDE yang disarankan.
- Program Kecil dalam Bahasa C/C++: Mengenalkan bahasa C/C++ dengan program terkecil yaitu Halo Dunia.
- Inisialisasi dan Assignment: Mengenalkan apa itu variabel dan tipe dasar yang ada, seperti integer (bilangan bulat), bilangan riil (bilangan pecahan), dan karakter/string (huruf). Serta memahami dua cara yang dapat dilakukan untuk mengisi nilai dari sebuah variabel, yakni inisialisasi dan assignment.
- Konstanta: Mengenalkan arti konstanta, yakni variabel yang tidak dapat diubah. Serta Mengenalkan perbedaan antara konstanta dengan variabel.
- Baca-Tulis: Bagaimana cara membaca alur program yang benar dan menulis code program yang benar secara terstruktur.
- Operasi Sederhana dengan Komputer: Mengajarkan operasi-operasi yang ada di dalam C/C++, seperti aritmatika, boolean, perbandingan, dll.
- Instruksi Kondisional: Mengenalkan instruksi kondisional agar program dapat berjalan sesuai alur yang ditetapkan.
- Instruksi Perulangan: Mengenalkan instruksi perulangan agar program dapat mengulangi instruksi secara berulang, seperti for, while-do, do-while, dan for.
- Array-Tabel: Mengenalkan array untuk menyimpan banyak nilai dalam suatu bentuk matriks.
- Subprogram: Mengenalkan subprogram fungsi dan prosedur, yaitu sebuah abstraksi suatu proses komputasi yang dapat dipanggil oleh sebuah program.
- Penutup: Menguji pemahaman mengenai bahasa pemrograman C/C++ melalui latihan-latihan untuk memperdalam konsep pemrograman C/C++ dalam sebuah program sederhana, seperti operasi komputasi, instruksi kondisional, instruksi perulangan, tabel atau array, serta fungsi dan prosedur.
Pembelajaran Algoritma pemrograman akan lebih banyak melakukan praktik dengan komposisi persentase kelas sebagai berikut, 20% Materi & Teori dan 80% merupakan praktik. Sehingga waktu untuk menulis kode lebih banyak daripada teori atau materi.
Pengenalan C/C++
C (dibaca /si:/ seperti membaca huruf C dalam bahasa inggris) adalah bahasa pemrograman gerneral-purpose dan imprative yang mendukung pemrograman terstruktur dan rekursif. Bahasa C menggunakan static typing yang artinya tipe datanya harus ditentukan secara manual.
General-purpose artinya bisa digunakan untuk berbagai kebutuhan. Seperti aplikasi CLI, Desktop, Sistem Operasi, IoT, Game, dan sebagainya. Bahasa C menggunakan paradigma imperative artinya penulisan kode program di bahasa C menggunakan statament atau perintah-perintah. Paradigma pemrograman adalah cara atau teknik dalam penulisan kode program. Bisa juga dibilang sebagai sudut padang dalam menyelesaikan masalah. Karena manggunakan paradigma imperative, bahasa C juga tentunya mendukung paradigma struktural dan prosedural. Namun C belum mendukung Object Oriented Programming (Pemrograman Berorientasi Object). Jika ingin menggunakan OOP, sebaiknya Anda menggunakan C++ karena di sana sudah ditambahkan fitur OOP seperti Class, Object, Interface, dan sebagainya.
Bahasa C dikembangkan oleh Dennis M. Ritchie dan Brian W. Kernighan pada awal tahun 1970. Bahasa C berkembang di lingkungan UNIX (±90% sistem operasi UNIX ditulis dalam bahasa C). Terdapat beberapa standar untuk bahasa C, standar di sini dapat diartikan sebagai guideline dalam menuliskan bahasa C. Beberapa Standar yang ada yaitu:
• Definisi Kernighan & Ritchie (K&R),
• Definisi Allman
• ANSI-C (X-3.159 -1989-), [Standar yang akan Digunakan Dalam Pembelajaran]
• Definisi AT&T (untuk superset C, C++), dan
• GNU Coding Standards.
Versi pada PC misalnya:
• Lattice C,
• Microsoft C/Microsoft QuickC, dan
• Turbo C/Borland C++.
Bahasa C banyak dipakai untuk:
• Membuat sistem operasi dan program-program sistem.
• Pemrograman yang “dekat” ke perangkat keras (misalnya untuk kontrol peralatan).
• Membuat tool kit.
• Menulis program aplikasi.
Kelebihan bahasa C, sehingga terpilih untuk aplikasi-aplikasi tersebut, adalah kemampuannya untuk membuat kode yang compact, efisien tanpa mengorbankan readability (beda dengan bahasa assembly yang efisien namun susah dibaca, atau bahasa tingkat tinggi lain yang enak dibaca namun tidak efisien). Walaupun tak dapat diingkari bahwa program dalam bahasa C lebih sulit dibaca (karena compact) dibandingkan dengan bahasa tingkat tinggi yang lain.
Pada tahun 1986, dikembangkan superset C (kompatibel dengan C, namun dilengkapi dengan kemampuan pemrograman berorientasi objek) oleh Bjarne Stroustrup [Stroustrup-86], yaitu bahasa C++ (C with Class). Seperti namanya, Simbol “++” pada huruf C berarti increment dari C. Sebenarnya C++ sama seperti bahasa C, tapi memiliki fitur yang lebih banyak dibandingkan C seperti Class, Object, Interface, dan sebagainya. Karena itulah dinamakan C++ (dibaca si plus plus).
Pengantar Dasar Algoritma Pemrograman
Untuk memulai memahami algoritma pemrograman serta menulis sebuah kode program, kita perlu memahami dasar sebagai pengantar agar kedepannya kita dapat dengan mudah mempelajari dan mengikuti materi yang ada.
Cara Menulis dan Membaca
Dalam menulis program, hal pertama yang perlu diperhatikan ialah cara membaca dan menulis kode program. Sama seperti kita membaca dan menulis pada umumnya. Dalam membaca dan menulis kode program, konsep yang digunakan ialah konsep membaca dan menulis dari atas menuju kebawah. Terkadang hal tersebut disepelekan dan justru berakibat fatal dalam menulis kode program, karena akan mengakibatkan error pada program. Hal itu disebabkan oleh urutan program yang tidak sesuai dalam mengikuti kaidah/konsep penulisan dari atas kebawah. Komputer akan membaca kode program kita secara berurutan dari atas hingga kebawah sehingga jika cara menulisnya tidak berurutan dan tidak beraturan akan mengakibatkan error yang fatal. Hal yang sederhana namun terbilang sangat penting. Itulah sebabnya diperlukan pemahaman dasar dalam menulis kode program.
Pentingnya Dokumentasi
Dalam mempelajari bahasa pemrograman kita perlu membaca dokumentasi resmi agar meminimalisir kesalahan serta error yang terjadi nantinya. Setiap bahasa pemrograman pasti memiliki standar berbeda-beda dalam penulisannya, oleh sebab itu dokumentasi sangat wajib, penting serta perlu dibaca. Anda bisa mencari dokumentasi resmi setiap bahasa pemrograman yang Anda pelajari di internet.
Indentasi & Blok Program
Indentasi merupakan memulai teks dengan spasi kosong di antara teks dan margin. Tab digunakan sebagai indentasi, dan jumlah karakter dalam tab adalah 4 karakter spasi. Biasanya indentasi akan digunakan di dalam blok program. Terkadang beberapa programmer di seluruh dunia menggunakan indentasi yang berbeda-beda menyesuaikan dari setiap standar proyeknya. Biasanya dalam proyek individual sering ditemui programmer yang menggunakan indentasi dengan 2 karakter spasi. dan dalam beberapa kasus seperti proyek pembuatan kernel linux yang diinisiasi oleh Linus Torvalds menggunakan standar indentasi dengan 8 karakter dengan tujuan untuk mempermudah keterbacaan blok kode program. Dan untuk yang paling umum serta paling banyak digunakan ialah indentasi dengan 4 karakter spasi dengan menyesuaikan jumlah karakter dalam tab.
Dalam bahasa pemrograman blok program ialah sebuah pendekatan pemrograman yang memungkinkan pengguna untuk membuat program dengan menyusun balok-balok kode yang saling berhubungan. Blok program dalam bahasa pemrograman umumnya diawali dengan tanda buka kurung kurawal “{“ serta diakhiri dengan tutup kurung kurawal “}”. Dalam beberapa kasus bahasa pemrograman lain seperti Python, kurung kurawal tidak merepresentasikan/mewakilkan keadaan blok program, tetapi menggunakan simbol lain seperti “:”.
Untuk mendeklarasikan blok program (dari { ke } ) adalah seperti yang ditunjukkan dalam contoh berikut, dan sintaksnya dijelaskan setelah indentasi “{“ “}”.
C/C++:1
2
3
4
5for ( i = 0; i < MSG_MAX; i++ )
{ //Memasuki Blok Program
[Tab]<Code>
[Tab]<Code>
} //Mengakhiri Blok Program
Berikut ini contoh blok program yang terdapat didalam blok program (blok program bersarang):
C/C++:1
2
3
4
5
6
7
8
9
10bool fs_tf_analizeFileUpCommand( char *cmd, int size )
{ //Memasuki Blok Program 1
[Tab]int i;
[Tab]for ( i = 0; i < size; i++ )
[Tab]{ //Memasuki Blok Program 2
[Tab][Tab]<Code>
[Tab][Tab]<Code>
[Tab]} //Mengakhiri Blok Program 2
[Tab]return OK_CMD;
} //Mengakhiri Blok Program 1
Komentar
Dalam menulis kode program, terkadang kita perlu menambahkan komentar dalam beberapa bagian tertentu sebagai keterangan. Mengapa demikian? Coba pikirkan jika Anda bekerja dalam tim dan tim Anda mengerjakan program yang cukup rumit dan kompleks tetapi Anda justru hanya menulis program tanpa adanya keterangan komentar. Bagaimana dengan teman tim Anda yang nantinya meneruskan pekerjaan Anda? Tentu saja akan menyulitkan tim Anda dalam meneruskan pekerjaan Anda nantinya. Itulah pentingnya sebuah komentar dalam menulis sebuah program. Komentar dalam bahasa pemrograman dapat dibuat hanya untuk sebaris atau lebih dari satu baris. Jika hanya sebaris, umumnya komentar dapat diawali dengan “//“ tanpa ada akhiran. Tetapi jika Anda ingin memasukkan komentar lebih dari satu baris, umumnya komentar diawali dengan “/“ dan diakhiri dengan “/“. Dalam bahasa pemrograman lain terkadang terdapat perbedaan, diantaranya python yang menggunakan awalan komentar “#” untuk komentar sebaris. Jadi jika Anda berniat mempelajari bahasa pemrograman lain harap baca kembali setiap dokumentasi bahasa pemrograman lain agar tidak salah menuliskan sintaksis komentar.
Berikut Contoh penggunaan komentar:1
2
3
4
5
6
7
8
9
10if( filePtr == null )
{ //Komentar Sebaris
/* Komentar
Lebih
Dari
Satu Baris */
return ERR_CMD;
}
Note: Komentar sebaris “//“ tidak dapat digunakan dalam Bahasa C, jadi untuk membuat komentar sebaris dalam bahasa C gunakan “/ /“. Komentar sebaris “//“ masih dapat digunakan dalam bahasa pemrograman C++.
Aturan Penamaan
Dalam mempelajari bahasa pemrograman kita perlu memperhatikan dalam aturan penulisan nama variabel, fungsi, kelas, dsb. Aturan penamaan sebagian besar sama serta untuk mempermudah kita dalam membaca kode programnya nanti. Ada tiga hal penting yang perlu diperhatikan dalam aturan penamaan:
- Beri penamaan yang dapat membedakan setiap jenis tipe data.
- Gunakan katakunci tipe data sebagai parameter penamaan untuk mengetahui isi tipe data setelah sebuah variabel/fungsi/kelas dideklarasikan, selain itu akan meminimalisir terjadinya kesalahan.
- Beri penamaan yang mudah dikenali dan dipahami (jangan gunakan singkatan yang hanya diketahui oleh Anda dan Tuhan Anda seperti x = 5).
Ada hal penting lain yang harus Anda ketahui saat membuat nama:
- Gunakan aturan penamaan ini sebagai acuan umum dan bila perlu sesuaikan aturan penamaan dengan bahasa pemrograman yang Anda gunakan, karena setiap bahasa pemrograman juga memiliki aturan penamaan yang berbeda (Baca Dokumentasi Resmi!).
- Jangan menuliskan nama yang sama dengan kata kunci (if, else, for, while, dll), karena akan menimbulkan error dan tidak dapat dibaca oleh suatu program.
- Hindari penggunaan inisial seperti penggunaan satu huruf saja pada penamaan variabel/fungsi/kelas pada program yang rumit, karena akan membingungkan dan sulit dibedakan.
- Jangan mengawali nama variabel/fungsi/kelas dengan angka, karena ini akan membuat kompiler membacanya sebagai nilai, bukan variabel/fungsi/kelas. Oleh karena itu, jika variabel/fungsi/kelas kita memerlukan angka di dalamnya, maka angka tersebut tidak boleh diletakkan di awal.
- Hindari memberi nama variabel/fungsi/kelas dengan istilah umum seperti “data”. Menamakannya “data” tidak menjelaskan apa pun. Namanya akan membuat Anda bingung ketika melakukan pemeliharaan kode ataupun membuat fitur baru nantinya. Sebagai gantinya, gunakan nama yang menggambarkan nilai variabel/fungsi/kelas itu sendiri.
- Variabel dalam Bahasa Pemrograman seperti JavaScript dan lain-lain hanya boleh diawali dengan huruf atau garis bawah. Anda tidak dapat membuat variabel dengan awalan angka atau menggunakan simbol selain garis bawah.
- Nama variabel/fungsi/kelas tidak boleh mengandung spasi. Jika nama variabel/fungsi/kelas lebih dari dua kata, maka gunakan format camelCase seperti ini: NamaDepan, NamaBelakang, NamaKucing atau Anda bisa menggunakan underscore “_” sebagai pengganti spasi jika tidak ingin menggunakan metode camelCase seperti: Nama_Depan, Nama_Belakang.
- Nama variabel/fungsi/kelas tidak boleh mengandung karakter khusus (!,/,+,*,= dan lain-lain).
- Hindari kebiasaan membuat nama/menamai variabel/fungsi/kelas menggunakan huruf kapital semua seperti: NAMA, TEMPAT, NYAWA, dsb. Umumnya nama variabel dengan huruf kapital seperti pada contoh tadi digunakan untuk membuat variabel yang bersifat constant/mutlak (nilai yang tidak dapat diubah).
Berikut beberapa aturan untuk membuat fungsi/kelas:
- Hindari membuat banyak parameter dalam sebuah fungsi jika tidak diperlukan. Karena jika argumen terlalu banyak maka akan sulit untuk diuji atau digunakan. Jika diperlukan lebih dari tiga argumen fungsi maka dapat dikonsolidasikan/didiskusikan dengan tim Anda. Daripada membuat banyak parameter fungsi, manfaatkan objek sebagai parameter.
- Jadikan sebuah fungsi hanya melakukan satu hal, karena jika fungsi yang kita buat melakukan banyak hal, maka fungsi tersebut akan sulit untuk dikompilasi dan diuji. Fungsi yang melakukan banyak hal juga tidak memiliki tujuan yang jelas. Saat membuat fungsi yang melakukan lebih dari satu hal, cobalah memecahnya. Hingga setiap fungsi benar-benar melakukan satu hal. Tentu saja, ini juga membuat kode dalam fungsi menjadi lebih bersih dan mudah dibaca.
- Nama fungsi harus mewakili tujuannya. kita juga perlu memperhatikan penamaan fungsinya. Pastikan nama yang diberikan mewakili maksud atau tugas fungsi tersebut. Hal ini juga dapat membantu pengembang/Programmer lain dengan mudah mengetahui tujuan dari fungsi yang Anda buat.
- Buat fungsi untuk menghindari duplikasi kode. Jika Anda merasa sering menulis kode yang berulang-ulang. Anda harus memperhatikan kodenya. Karena kode berulang adalah kandidat kuat untuk membuat sebuah fungsi. Tujuannya tak lain agar kode tersebut bisa digunakan kembali, hanya dengan memanggil fungsinya saja.
Running Program
Untuk menjalankan kode program kita perlu mencari tahu terlebih dahulu apakah bahasa pemrograman yang kita pelajari tersebut dijalankan menggunakan metode compiler atau interpreter.
- Compiler: Compiler menerjemahkan kode dari bahasa pemrograman tingkat tinggi ke dalam kode mesin sebelum program dijalankan. Compiler akan membaca keseluruhan file dan akan menjalankan keseluruhannya serta mengeluarkan hasilnya (Berjalan dengan baik atau menghasilkan error) meskipun terdapat code yang error didalam code programnya. Contoh Bahasa Pemrograman yang menggunakan compiler ialah C/C++, dan Java.
- Interpreter: Interpreter menerjemahkan kode yang ditulis dalam bahasa pemrograman tingkat tinggi ke dalam kode mesin baris demi baris saat kode dijalankan. Interpreter akan membaca baris perbaris lalu jika terjadi error program akan langsung berhenti tepat di baris yang mengalami error tersebut. Contoh bahasa pemrograman yang menggunakan interpreter ialah Python.
Type of Error
Belum lengkap kalo tidak membahas error dalam algoritma pemrograman. Error merupakan sebuah kesalahan yang terjadi dalam penulisan kode program. Umumnya error terdapat banyak macam jenisnya tergantung setiap masing-masing bahasa pemrograman. Berikut ini beberapa tipe error yang berkemungkinan akan terjadi kedepannya ketika mempelajari bahasa pemrograman:
- Logical error atau kesalahan logika merupakan error yang paling sulit untuk dideteksi. Hal itu disebabkan error yang satu ini terjadi bukan karena adanya kesalahan penulisan atau kesalahan pada proses runtime. Namun, juga karena adanya kesalahan dari programmer dalam menuliskan algoritma pada program. Saat logikanya salah, pasti output yang dihasilkan juga akan ikut salah. Kemudian untuk mendeteksinya cukup sulit dan memakan waktu. Sebagian besar dari logical error terjadi karena adanya kesalahan dalam perhitungan atau menggunakan variabel yang salah. Saat terjadi logical error biasanya tidak akan membuat program berhenti secara total. Pasalnya, program akan tetap bisa berjalan normal, tapi tidak bisa berfungsi seperti yang diharapkan.
- Selain logical error, salah satu jenis error pada programming yang paling sering terjadi adalah syntax errors atau kesalahan tata bahasa. Jenis error yang satu ini disebut paling banyak terjadi dalam programming. Meski begitu, mendeteksinya ternyata cukup mudah dan tidak serumit seperti logical error. Syntax error bisa terjadi saat ada kesalahan ejaan pada salah satu kata kunci atau saat ada kesalahan dengan struktur kodenya. Ketika terjadi syntax error maka kode tidak akan berjalan dengan normal karena komputer tidak dapat memahaminya. Untuk memperbaiki jenis error yang satu ini hanya membutuhkan ketelitian untuk mencari adanya kesalahan penulisannya.
- Runtime error adalah kesalahan yang terjadi saat sedang menjalankan suatu program. Ada beberapa penyebab terjadinya jenis error yang satu ini. Misalnya, kesalahan dalam proses input, kesalahan perhitungan, dan proses output. Saat terjadi runtime error, potensi terjadinya crash pada program menjadi cukup besar. Jika ingin memperbaiki jenis error yang satu ini, programmer mau tidak mau harus kembali lagi ke fase pengembangan/development untuk mencari kesalahannya.
- Compilation error terjadi saat proses di mana program yang ditulis dalam bahasa tingkat tinggi dikonversi ke bentuk yang dapat dibaca oleh mesin. Dalam proses tersebut dapat muncul beberapa jenis error seperti syntax error. Bahkan, terkadang meskipun kode syntax sudah benar, tapi compilation error masih bisa tetap terjadi. Hal itu dikarenakan adanya masalah di compiler itu sendiri. Namun, jangan khawatir karena jenis error ini bisa diperbaiki pada fase development.
- Interfacing error kemungkinan besar dapat terjadi karena adanya ketidaksesuaian program software dengan interface perangkat keras yang digunakan. Sementara itu, pada kasus aplikasi web biasanya terjadi karena penggunaan protokol web yang salah.
- Arithmetic error adalah salah satu jenis error pada programming yang tergolong logical error. Namun, kesalahan ini melibatkan perhitungan matematika, bukan pada penulisan bahasa pemrograman. Hal ini umumnya terjadi karena komputer tidak bisa mengerjakan perhitungan yang dimasukkan oleh si programmer. Sebagai contoh, ketika kamu meminta komputer untuk melakukan pembagian dengan angka 0 (nol). Karena tidak bisa dilakukan secara matematis, hal tersebut dapat menyebabkan error yang mencegah program untuk berjalan semestinya. Untuk mengatasinya, kamu bisa melakukan hal-hal seperti:
- Memahami operasi matematika dasar.
- Menghindari kesalahan dalam menggunakan tanda kurung atau urutan operasi.
- Menggunakan angka negatif dalam melakukan perhitungan.
- Menggunakan metode error handling seperti try, catch, except, dsb
- Resource error adalah jenis error pada programming ketika nilai variabel yang kamu masukkan terlalu besar sehingga membuatnya melebihi batas maksimal pemrograman. Sebuah program akan menggunakan sejumlah sumber daya yang disediakan komputer untuk membuatnya bisa berjalan. Ketika program membutuhkan sumber daya lebih banyak dari yang bisa disediakan komputer, hal ini akan menyebabkan resource error. Untuk mengatasinya, kamu bisa menggunakan aplikasi load-testing untuk mengetahui apa yang akan terjadi ketika kamu menjalankan program yang sama secara bersamaan.
- Semantic error adalah jenis error pada programming yang serupa dengan logical error. Meski begitu, perbedaannya adalah logical error menghasilkan data yang salah. Sementara, semantic error menghasilkan suatu hal yang tidak memiliki makna sama sekali.
Terjadinya kesalahan atau error di atas sebenarnya bisa dihindari jika kamu lebih teliti dan melakukan perencanaan yang baik saat di tahap menulis code program.
Flowchart & Pseudocode
Diagram Alur (Flowchart) dan Pseudocode merupakan sebuah dasar untuk mempelajari algoritma dan pemrograman dasar sebelum menulis sebuah kode. Umumnya untuk mengetahui sebuah alur program, kita perlu memahami gambaran bagaimana alur program itu berjalan. Untuk mempermudah maka anda dapat menggambarkannya menggunakan diagram alur. cara lainnya selain menggambar diagram alur ialah dengan menulis sebuah pseudocode atau sebuah kalimat yang mewakilkan kode program yang akan kamu tulis nanti.
Flowchart
Flowchart atau diagram alur adalah alat visual yang digunakan untuk merepresentasikan alur kerja atau proses dalam bentuk diagram. Dalam ranah IT sendiri biasanya diagram alur dipergunakan untuk menggambarkan alur program sebelum melakukan eksekusi (menulis kode) program. Secara umumnya diagram alur digunakan untuk merencanakan, menganalisis, dan memahami langkah-langkah yang diperlukan dalam menyelesaikan suatu tugas atau masalah. Diagram alur memiliki beberapa aturan dalam pembuatannya, aturan tersebut berlaku pada setiap simbol alur yang akan dibuat. berikut ini adalah aturan setiap simbol dalam pembuatan diagram alur.
Aturan Setiap Simbol dalam Diagram Alur
Simbol Flowchart dan Fungsinya
Simbol-simbol dalam flowchart memiliki makna dan fungsi tertentu yang membantu dalam pemahaman alur kerja. Beberapa simbol dasar flowchart meliputi:
Simbol Awal (Start/End):
Simbol ini menandakan awal dan akhir dari suatu proses atau algoritma. Biasanya direpresentasikan dengan bentuk oval atau persegi panjang dengan tepi melengkung.Simbol Proses:
Simbol ini digunakan untuk menunjukkan langkah-langkah atau tindakan yang harus dilakukan dalam proses. Umumnya direpresentasikan dengan bentuk persegi panjang.Simbol Keputusan (Decision):
Simbol ini menunjukkan titik keputusan dalam alur kerja yang memerlukan pilihan ya atau tidak. Biasanya direpresentasikan dengan bentuk diamond.Simbol Input/Output:
Simbol ini digunakan untuk menunjukkan input atau output data dalam proses. Biasanya direpresentasikan dengan bentuk paralelogram.Simbol Penghubung (Connector):
Simbol ini digunakan untuk menghubungkan bagian-bagian flowchart yang terpisah. Biasanya direpresentasikan dengan garis lurus atau panah.
Fungsi Flowchart dalam Ranah IT
Flowchart memiliki beberapa fungsi penting dalam ranah IT, antara lain:
Merencanakan Proses:
Flowchart membantu dalam merencanakan langkah-langkah yang diperlukan dalam menyelesaikan suatu tugas atau masalah dengan jelas dan terstruktur.Menganalisis Algoritma:
Dengan menggunakan flowchart, kita dapat menganalisis algoritma secara visual dan memahami logika yang digunakan dalam proses pemrograman.Memudahkan Komunikasi:
Flowchart menjadi alat komunikasi yang efektif antara programmer, analis, dan pengguna dalam memahami alur kerja suatu sistem atau program.Memperbaiki Kesalahan:
Dengan melihat flowchart, kita dapat mengidentifikasi dan memperbaiki kesalahan atau bug dalam algoritma dengan lebih cepat dan efisien.
Contoh Flowchart dalam Pemrograman
Berikut adalah contoh sederhana flowchart dalam pemrograman:
Flowchart Menghitung Luas Segitiga:
Contoh ini menunjukkan alur kerja dalam sebuah program sederhana untuk menghitung luas segitiga.[{"url":"https://azizahijzah.wordpress.com/wp-content/uploads/2014/03/azizah.gif","alt":"FlowChart Mengitung Luas Segitiga","title":""}]Algoritma Menghitung Luas Segitiga
Flowchart Filtering Ganjil Genap
Contoh ini menunjukkan alur dari apakah angka yang diinput apakah ganjil atau genap.[{"url":"https://dicoding-assets.sgp1.cdn.digitaloceanspaces.com/blog/wp-content/uploads/2021/07/Contoh-flowchart.jpg","alt":"FlowChart Ganjil Genap","title":""}]Algoritma Kategorisasi Biangan Ganjil Genap
Flowchart memungkinkan Anda untuk dengan lebih mudah menjelaskan alur suatu program, karena tujuannya adalah untuk menguraikan proses-proses menggunakan simbol-simbol. Selain itu, flowchart juga dapat berfungsi sebagai alat untuk menyampaikan informasi tentang program kepada orang lain.
Pseudocode
Pseudocode adalah sebuah metode yang digunakan untuk menggambarkan algoritma atau logika dari suatu program tanpa harus menggunakan bahasa pemrograman tertentu. Metode ini menjadi alat yang sangat berguna bagi para pengembang, terutama untuk mempermudah perencanaan dan pemahaman alur program.
Ciri-ciri Pseudocode
Menggunakan Bahasa Natural
Pseudocode umumnya ditulis dalam bahasa sehari-hari atau bahasa yang mendekati bahasa natural, sehingga lebih mudah dipahami oleh siapa saja, baik oleh programmer maupun orang non-teknis.Struktur yang Jelas
Pseudocode harus memiliki struktur yang terorganisir dengan baik, seperti memiliki urutan instruksi yang jelas dan terstruktur.Tidak Tergantung pada Sintaks
Tidak seperti bahasa pemrograman, pseudocode tidak memiliki aturan sintaksis yang ketat sehingga lebih fleksibel dalam penulisannya.Detail Algoritma
Meskipun tidak detail seperti bahasa pemrograman, pseudocode tetap menyertakan langkah-langkah utama dalam sebuah algoritma yang perlu dipahami.Konsistensi
Menjaga konsistensi dalam penulisan pseudocode penting untuk memastikan pembaca dapat mengikuti logika dari awal hingga akhir.Menggunakan Simbol
Terkadang, simbol-simbol dasar seperti tanda “=” atau operator logika digunakan untuk memperjelas langkah dalam pseudocode.Dapat Digunakan untuk Pemrograman
Pseudocode sering digunakan sebagai dasar untuk mengkonversi langkah-langkah menjadi kode program pada bahasa pemrograman tertentu.
Fungsi Pseudocode
Mempermudah Pemahaman
Salah satu fungsi utama pseudocode adalah untuk memudahkan pemahaman tentang bagaimana algoritma atau program seharusnya berjalan.Perencanaan Program
Sebelum menulis kode pada bahasa pemrograman tertentu, pseudocode membantu dalam merencanakan setiap langkah secara logis.Alat Dokumentasi Penyelesaian Masalah
Pseudocode dapat dijadikan alat dokumentasi untuk menggambarkan solusi dari suatu masalah, sehingga dapat diacu kembali di masa depan.Komunikasi
Pseudocode berfungsi sebagai alat komunikasi antar programmer atau antar anggota tim untuk mendiskusikan solusi secara lebih mudah.Membantu Menerjemahkan Bahasa Pemrograman
Pseudocode memberikan gambaran umum yang dapat diterjemahkan ke berbagai bahasa pemrograman.Lebih Ringkas dan Praktis
Pseudocode lebih sederhana dan ringkas dalam penulisan dibandingkan kode program, namun tetap memuat langkah-langkah penting.
Struktur Pseudocode
Judul
Biasanya, judul pada pseudocode menunjukkan tujuan dari algoritma yang dibuat, seperti “Menghitung Luas Lingkaran”.Deklarasi
Bagian ini berisi deklarasi variabel atau parameter yang digunakan dalam algoritma.Implementasi
Langkah-langkah atau instruksi yang harus dijalankan dalam algoritma ditulis di bagian ini.
Kelebihan Pseudocode
Mudah Dipahami
Karena ditulis dalam bahasa yang lebih umum, pseudocode dapat dipahami oleh berbagai kalangan, baik yang ahli maupun yang masih belajar.Fleksibel
Pseudocode tidak terikat oleh sintaks tertentu sehingga dapat lebih bebas dalam penulisannya.Dokumentasi yang Baik
Sebagai dokumentasi, pseudocode memudahkan dalam memahami kembali algoritma di masa depan.
Kekurangan Pseudocode
Tidak Standar
Karena tidak memiliki aturan baku, pseudocode terkadang bervariasi antar penulis, yang bisa menyebabkan kebingungan.Tidak Dapat Dieksekusi
Pseudocode hanya berfungsi sebagai deskripsi dan tidak dapat dijalankan pada komputer.Kurang Detail
Karena hanya memberikan gambaran umum, beberapa detail dari algoritma mungkin tidak dicantumkan.Subjektivitas
Penulisan pseudocode bersifat subjektif, sehingga interpretasinya bisa berbeda.
Contoh Algoritma Pseudocode
Mencari Luas Segitiga
1
2
3
4
5
6
7Judul: Mencari luas segitiga
Deklarasi: alas, tinggi
Implementasi:
Input alas
input tinggi
luas = 1/2 * alas * tinggi
Tampilkan luasMenentukan Sebuah Bilangan adalah Ganjil atau Genap
Pseudocode:1
2
3
4
5
6
7
8Judul: Menentukan bilangan ganjil/genap
Deklarasi: bilangan
Implementasi:
Input bilangan
Jika bilangan % 2 == 0
Tampilkan "Genap"
Jika tidak
Tampilkan "Ganjil"Contoh Bentuk Lain Pseudocode dan Implementasinya dalam Code
Pseudocode:1
2
3
4
5
6Judul: Cetak Hal berikut
Deklarasi:
Implementasi:
CETAK nama saya
CETAK asal saya
CETAK pekerjaan sayaC/C++ Code:
1
2
3
4
5
6
7
8
9
10
int main() {
// Write C++ code here
printf("Zulma\n");
printf("Bintaro\n");
printf("Software Quality Assurance\n");
}
Pseudocode adalah alat yang sangat penting dalam pemrograman untuk mempermudah perencanaan dan pemahaman algoritma sebelum dikodekan. Dengan menggunakan pseudocode, kita dapat mendesain solusi masalah secara jelas, terstruktur, dan mudah dipahami oleh berbagai kalangan. Kendati memiliki beberapa kekurangan, seperti sifatnya yang tidak dapat dieksekusi, pseudocode tetap menjadi dasar yang kuat dalam perancangan algoritma yang baik.
Tipe Data
Dalam bahasa pemrograman, tipe data merupakan sebuah jenis yang mewakili setiap data. Setiap data memiliki jenis tipe data yang berbeda. seperti data angka, data karakter/huruf dan juga data lainnya. Tipe data yang umum dalam bahasa pemrograman disebut sebagai tipe data dasar (artinya tipe data yang paling sering ditemui dalam bahasa pemrograman dan juga merupakan tipe data yang paling tua dari setiap tipe data yang ada saat ini). C/C++ merupakan bahasa pemrograman yang merupakan pionir/pelopor tipe data dasar dan menginspirasi pembuatan bahasa pemrograman lain. Berikut ini adalah tipe data dasar yang dapat digunakan dalam bahasa pemrograman C:
- Boolean = merupakan tipe data logika yang hanya berisi Ekspresi Boolean (Benar/True/1 dan Salah/False/0).
- Integer = merupakan tipe data yang berisi angka/bilangan bulat.
- Floating point = merupakan tipe data yang berisi angka/bilangan desimal.
- String = merupakan tipe data yang berisi karakter/huruf.
- List/Array = merupakan tipe data yang berisi daftar data yang memiliki banyak data didalamnya. Array hanya bisa memiliki daftar data yang memiliki tipe data yang sama.
Bilangan & Angka
C/C++ mengenal beberapa jenis bilangan dan angka yaitu bilangan bulat (integer) dan bilangan pecahan (floating point). Untuk tipe data bilangan bulat dan pecahan masih dapat dibagi lagi menjadi beberapa jenis tipe data baru tergantung dari jangka/range jumlah angka yang ditampungnya.
Tipe Data Bilangan Bulat (Integer) dalam C/C++:
Character (Dapat diisi dengan Angka bilangan bulat)
Char memiliki ruang penyimpanan sebesar 1 byte (8 bits) yang berarti char dapat menyimpan nilai dari jangka/range nilai -128 sampai 127 atau 0 sampai 255.
Short
Short memiliki ruang penyimpanan sebesar 2 byte (16 bits) yang berarti short dapat menyimpan nilai dari jangka/range nilai -32768 sampai 32767 atau 0 sampai 65,535.
Long
Long memiliki ruang penyimpanan sebesar 4 byte (32 bits) yang berarti long dapat menyimpan nilai dari jangka/range nilai -2147483648 sampai 2147483647 atau 0 sampai 4294967295.
Integer
Integer memiliki ruang penyimpanan sebesar 4 byte (32 bits) yang berarti integer dapat menyimpan nilai dari jangka/range nilai -2147483648 sampai 2147483647 atau 0 sampai 4294967295.
Long Long
Long Long memiliki ruang penyimpanan sebesar 8 byte (64 bits) yang berarti long long dapat menyimpan nilai dari jangka/range nilai -9223372036854775808 sampai 9223372036854775807 atau 0 sampai 18446744073709551615.
Tipe Data Bilangan Pecahan (Floating Point) dalam C/C++:
Float
Float memiliki ruang penyimpanan sebesar 4 byte (32 bits) yang berarti float dapat menyimpan nilai dari jangka/range nilai 1.2E-38 sampai 3.4E+38.
Double
Double memiliki ruang penyimpanan sebesar 8 byte (64 bits) yang berarti double dapat menyimpan nilai dari jangka/range nilai 2.3E-308 to 1.7E+308.
Long Double
Long Double memiliki ruang penyimpanan sebesar 10 byte (80 bits) yang berarti long double dapat menyimpan nilai dari jangka/range nilai 3.4E-4932 sampai 1.1E+4932.
Tipe data numerik juga memiliki kategorisasi untuk memuat bilangan positif dan negatif. Kategorisasi tersebut adalah signed dan unsigned.
Unsigned
Unsigned merupakan tipe data yang hanya dapat menyimpan nilai positif saja. Unsigned dapat digunakan pada tipe data char, short, long, dan long long.
Signed
Signed merupakan tipe data yang dapat menyimpan nilai positif dan negatif. Signed dapat digunakan pada tipe data char, short, long, dan long long.
Berikut ini adalah contoh penerapan tipe data numerik pada bahasa pemrograman C/C++:
Source Code:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
using namespace std;
int main() {
unsigned char variabel_char = 255;
signed short variabel_short = 32767;
int variabel_int = 2147483647;
float variabel_float = 10.5;
double variabel_double = 23230204.5;
printf("%d\n", variabel_char);
printf("%d\n", variabel_short);
printf("%d\n", variabel_int);
printf("%g\n", variabel_float);
printf("%g\n", variabel_double);
return 0;
}
Output:1
2
3
4
5255
32767
2147483647
10.5
2.32302e+07
Ekspresi Boolean
Eskpresi Boolean merupakan ekspresi yang mengembalikan nilai True atau False, menggunakan operator relasional/operator perbandingan, dan juga operator logika. Selain itu Ekspresi Boolean juga dapat menggunakan operator keanggotaan (membership operator) dan juga operator identitas dalam beberapa kasus. Dalam bahasa C boolean dapat digunakan dengan 0 sebagai False dan 1 sebagai True.
List/Array
List/Array merupakan daftar yang memiliki banyak data didalamnya. Umumnya list memiliki index (sebuah urutan dalam kumpulan data list) yang dimulai dari 0. Untuk mendeklarasikan sebuah list dapat menambahkan kurung siku “[]” setelah nama variabel lalu dideklarasikan dengan kurung kurawal “{}” dan setiap data dalam list dipisahkan dengan koma “,”.
Contoh dasar penggunaan list:
1 |
|
String
String dalam C berbentuk List/Array dari banyak karakter (Tipe data Character), jika anda mencoba menjalankan code perintah untuk list dalam variable yang bertipe data string, maka hasilnya akan sama dengan hasil yang dikeluarkan dalam list seperti pada contoh dibawah:
1 |
|
Variable
Variable merupakan sebuah tempat untuk menyimpan sebuah data. Jika di ibaratkan dengan sesuatu, maka sebuah variable merupakan sebuah Kotak. Kotak tersebut memiliki atribut berupa, nama kotak tersebut, catatan jenis isi kotak tersebut, dan juga isi kotak tersebut. Maka dapat disimpulkan bila sebuah variable juga memiliki nama, jenis/tipe data dari isi variable, dan juga isi variablenya.
Dalam Bahasa Pemrograman pada umumnya variable memiliki 2 jenis umum yaitu variable immutable/mutlak/constant dan variable mutable.
Untuk mendeklarasikan variable mutable dalam bahasa C, Anda perlu menuliskan tipe data didepan nama variabel lalu mengisikan nilai pada sebuah variabel dengan nilai tipe data yang sebelumnya anda tulis. Operator pengisian adalah tanda sama-dengan (=).
Contoh mendeklarasikan variable mutable dalam C/C++:1
2
3
4int int_iniLima = 5;
string str_iniNama = "Namamu";
float flt_ini5koma7 = 5.7;
int tf_iniStatus = 0;
Sedangkan untuk mendeklarasikan variable immutable, Anda perlu menamai variable dengan huruf kapital semua.
Contoh mendeklarasikan variable immutable/constant dalam C/C++:1
2
3
4
5
6
const int TRUE = 1;
const int TIGA = 3;
Tipe data variabel juga dapat dikonversikan ke tipe data lainnya, tetapi anda harus tetap memperhatikan kecocokan antara tipe data awal dengan tipe data yang ingin dikonversikan. seperti anda ingin mengkonversikan tipe data numerik integer dengan tipe data numerik float, hal tersebut dapat dilakukan dengan mempertibangkan jaangka nilai antara tipe data integer awal sebelum dikonversikan dengan tipe data float yang ingin dikonversikan.
Hati-hati jika ingin mengkonversikan tipe data variabel dan selaalu petimbangkan kesamaan jenis tipe data dan juga ruang penyimpanan setiap tipe data.
berikut ini adalah contoh mengkonversi tipe data:
1 |
|
Selain 2 jenis umum diatas, ada pula jenis penggunaannya. Jenis penggunaan variable umumnya dibedakan menjadi 2 yaitu variable lokal dan variable global.
Variable global merupakan variable yang dapat diakses diblok program manapun. Sedangkan variable lokal ialah variable yang hanya diakses dalam blok proggram tertentu seperti dalam fungsi, kelas, dsb.
Untuk contoh dari variable global dan lokal akan kita bahas di pertemuan selanjutnya.
Operator
Operator Aritmatika
Operasi Aritmatika adalah bagian dari pengolahan bilangan dari sebuah komputer untuk melakukan operasi hitung. Selain melakukan operasi hitung, operasi aritmatika juga bisa dilakukan untuk operasi logika. Dasar melakukan operasi hitung dalam aritmatika komputer adalah penjumlahan atau yang disebut adder.
Berikut ini adalah Operator Aritmatika pada Bahasa Pemrograman C/C++.
Operator | Symbol |
---|---|
Penjumlahan | + |
Pengurangan | - |
Perkalian | * |
Pembagian | / |
Sisa Hasil Bagi | % |
Berikut ini adalah contoh sederhana program operasi aritmatika:
1 | cout<<3 + 2<<endl; |
Operator aritmatika berfungsi dengan normal di C/C++ seperti dalam bahasa pemrograman yang lain. Ada beberapa catatan yang harus diperhatikan.
- Operasi pengisian beberapa variabel dengan nilai yang sama dapat dilakukan sekali jalan.
- Tanda () dipakai untuk mengelompokkan operasi yang harus dilakukan terlebih dahulu.
- Pembagian bilangan integer dengan bilangan integer akan dibulatkan ke bawah.
- Hasil Pembagian akan dikonversikan menjadi bilangan Integer dalam operasi yang melibatkan bilangan integer dengan bilangan integer.
- Bilangan integer akan dikonversikan menjadi bilangan floating point dalam operasi yang melibatkan bilangan integer dan bilangan floating point.
Operator Penugasan
Seperti namanya, operator ini digunakan untuk memberikan tugas pada variabel. Misalnya:
umur = 18
Maka variabel umur telah kita berikan tugas untuk menyimpan angka 18. Selain menyimpan atau pengisian nilai, ada juga menjumlahkan, mengurangi, perkalian, pembagian, dsb. Selengkapnya bisa dilihat di tabel berikut.
Operator | Symbol |
---|---|
Pengisian | = |
Penjumlahan | += |
Pengurangan | -= |
Perkalian | *= |
Pembagian | /= |
Sisa Bagi | %= |
Operator Increment & Decrement merupakan operator yang dapat menambahkan/mengurangi 1 nilai pada sebuah variabel. Operator ini sering digunakan dalam perulangan dan juga dalam operasi aritmatika. Selengkapnya dapat dilihat dalam tabel berikut.
Operator | Symbol |
---|---|
Increment | ++ |
Decrement | -- |
Operator Perbandingan
Operator Perbandingan adalah operator yang melakukan perbandingan antara dua buah nilai. Operator ini juga dikenal dengan operator relasional dan sering digunakan untuk membuat sebuah logika atau kondisi. Berikut ini adalah daftar Operator Perbandingan dalam C/C++:
Operator | Symbol |
---|---|
Lebih Besar | > |
Lebih Kecil | < |
Sama Dengan | == |
Tidak Sama Dengan | != |
Lebih Besar Sama Dengan | >= |
Lebih Kecil Sama Dengan | <= |
Operator Logika
Operator Logika merupakan sebuah operator yang digunakan untuk membuat logika dalam program yang kita buat. Operator logika juga sering disebut juga sebagai Operator Aljabar Boolean, biasanya operator logika ini digunakan untuk membuat operasi percabangan pada program. Operator Logika diantaranya seperti logika AND, OR, dan NOT.
Operator logika terdiri dari:
Operator | Symbol |
---|---|
Logika AND | && |
Logika OR | || |
Logika Negasi/Kebalikan | ! |
Operator Bitwise
Sesuai dengan namanya operator bitwise adalah operator yang digunakan untuk melakukan operasi nilai bit pada komputer. berikut ini adalah operator bitwise yang terdapat pada C/C++:
Operator | Symbol |
---|---|
Bitwise AND | & |
Bitwise OR | | |
Bitwise NOT | ~ |
Bitwise XOR | ^ |
Bitwise Right Shift | >> |
Bitwise Left Shift | << |
Fungsi Input dan Output
Output
Fungsi Output adalah Fungsi untuk mengeluarkan sesuatu yang sering digunakan untuk menampilkan sebuah nilai agar dapat dibaca dan dilihat oleh user. Umumnya fungsi Output menggunakan perintah “printf()” Dan cout. Penggunaanya dapat dilihat dalam code dibawah ini:
Code:1
2
3
4
5
6
7
8
9
10
11
using namespace std;
int main() {
printf("Ini Merupakan Fungsi Output Printf\n");
cout<<"Ini Merupakan Fungsi Output C Out"<<endl;
return 0;
}
Output:1
2Ini Merupakan Fungsi Output Printf
Ini Merupakan Fungsi Output C Out
Bagaimana jika kita ingin memasukkan variable kedalam fungsi output printf? Untuk memasukkan sebuah variable dalam printf anda perlu menambahkan kode % sebagai identifikasi tipe data dan jika anda menggunaakan cout hanya perlu memasukkan nama variabelnya saja.
Berikut ini adalah contohnya:
Code:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
using namespace std;
int main() {
int x = 5;
string y = "contoh";
float z = 5.5;
// Hanya Variable Tanpa String
printf("%d\n", x); //%d digunakan untuk memasukkan tipe data integer kedalam printf seperti berikut ini
printf("%c\n", x); //%c digunakan untuk memasukkan tipe data character kedalam printf seperti berikut ini
printf("%g\n", z); //%g digunakan untuk memasukkan tipe data float kedalam printf seperti berikut ini
printf("%s\n", y); //%s digunakan untuk memasukkan tipe data string kedalam printf seperti berikut ini
cout<<x<<endl;
cout<<y<<endl;
cout<<z<<endl;
// Menggabungkan String dengan Variable
printf("ini adalah %d\n", x); //%d digunakan untuk memasukkan tipe data integer kedalam printf seperti berikut ini
cout<<"Ini adalah "<<y<<endl;
return 0;
}
Output:1
2
3
4
5
6
7
8
95
5.5
pq�J�
5
contoh
5.5
ini adalah 5
Ini adalah contoh
Input
Input
Fungsi Input adalah fungsi untuk memasukkan sebuah request/permintaan nilai dari user kedalam sebuah program. Umumnya Fungsi Input menggunakan perintah scanf() dan juga cin. Berikut adalah contoh penggunaan fungsi input pada bahasa pemrograman C/C++:
Code:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using namespace std;
int main() {
// Menginput String
// scanf() tidak dapat digunakan untuk menginput string
// cin
string x;
cout<<"Masukkan Kata Bebas: ";
cin>>x;
// Menginput String dengan Spasi
// scanf() tidak dapat digunakan untuk menginput string
// cin
string c;
cout<<"Masukkan Kalimat Bebas: ";
getline(cin, c);
// Menginput Bilangan Bulat
// scanf()
int y;
printf("Masukkan Angka Bebas: ");
scanf("%d", &y);
// cin
int z;
cout<<"Masukkan Angka Bebas: ";
cin>>z;
// Menginput Bilangan Desimal
// scanf()
float a;
printf("Masukkan Angka Desimal Bebas: ");
scanf(“%g”, &a);
// cin
float b;
cout<<"Masukkan Angka Desimal Bebas: ";
cin>>b;
cout<<x<<endl;
cout<<y<<endl;
cout<<z<<endl;
cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
return 0;
}
Output:1
2
3
4
5
6
7
8
9
10
11
12Masukkan Kata Bebas: test (Diinput User)
Masukkan Kalimat Bebas: Saya Pergi ke Pasar (Diinput User)
Masukkan Angka Bebas: 5 (Diinput User)
Masukkan Angka Bebas: 2 (Diinput User)
Masukkan Angka Desimal Bebas: 2.3 (Diinput User)
Masukkan Angka Desimal Bebas: 2.2 (Diinput User)
test
5
2
2.3
2.2
Saya Pergi ke Pasar
Package & Library
Package dan Library merupakan sebuah bundle atau pengelompokan dari banyak fungsi serta kelas (source code) menjadi satu kesatuan unit tunggal dalam library yang dapat digunakan serta dipanggil pada source code yang sedang anda kembangkan untuk mendapatkan sebuah fungsi tanpa harus mengetikkan source codenya secara berulang. C/C++ sendiri menyediakan package/library untuk menyediakan operasi-operasi standar. Untuk operasi-operasi yang lebih khusus, perlu menggunakan fungsi dari package lain. Dalam praktikum kali ini kita akan belajar operasi aritmatika dan belajar tentang menggunakan package untuk memanggil fungsi operasi trigonometri yang packagenya sudah disediakan pada C/C++ yaitu dalam package Math.
contoh penggunaan Library/Package:1
2
3
4
5
6
7
8
9
10
11
12
13
using namespace std;
int main() {
float flt_akar = sqrt(9);
cout<<flt_akar<<endl;
return 0;
}
Latihan
Kerjakan Latihan Berikut ini untuk mengetes pemahamanmu tentang materi yang telah diajarkan diatas.
Latihan Flowchart & Pseudocode
Latihan Flowchart & Pseudocode 1
Buat diagram alur serta pseudocode untuk menghitung luas lapangan sepak bola. (estimasi 10 Menit)
Latihan Flowchart & Pseudocode 2
Buat diagram alur serta pseudocode untuk menghitung luas lingkaran. (estimasi 10 Menit)
Latihan Flowchart & Pseudocode 3
Buat diagram alur serta pseudocode untuk menentukan kelulusan siswa/mahasiswa. (estimasi 10 Menit)
Latihan Flowchart & Pseudocode 4
Buat diagram alur serta pseudocode untuk mengkonversi suhu. (estimasi 30 Menit)
- Celcius ke Fahrenheit
- Celcius ke Kelvin
- Fahrenheit ke Celcius
- Fahrenheit ke Kelvin
- Kelvin ke Celcius
- Kelvin ke Fahrenheit
Latihan Dasar
Ubah pseudocode dibawah ini menjadi sebuah program yang ditulis dalam bahasa Pemrograman C/C++. (estimasi 5 menit)
1 | Judul: Cetak Hal berikut |
Latihan Operator Aritmatika
Latihan Operator Aritmatika 1
Buatlah Program untuk menghitung Volume Balok, setiap sisi panjang, lebar dan tinggi diinput oleh user, serta konversikan rumus volumenya menggunakan operator aritmatika. (estimasi 5 menit)
INPUT:
- Panjang
- Lebar
- Tinggi
PROCESS:
Mengkalkulasikan volume balok berdasarkan setiap sisi.
OUTPUT:
Tampilkan volume balok beserta meter kubiknya.
Latihan Operator Aritmatika 2
Buatlah Program untuk menghitung Volume Bola, jari-jari diinput oleh user, serta konversikan rumus volumenya menggunakan operator aritmatika. (estimasi 10 menit)
INPUT:
Jari-jari
PROCESS:
Mengkalkulasikan volume bola berdasarkan jari-jari.
OUTPUT:
Tampilkan volume bola beserta meter kubiknya.
Latihan Operator Aritmatika 3
Buatlah Program untuk menghitung Volume Tabung, jari-jari beserta tinggi diinput oleh user, serta konversikan rumus volumenya menggunakan operator aritmatika. (estimasi 10 menit)
INPUT:
- Jari-jari
- Tinggi
PROCESS:
Mengkalkulasikan volume tabung berdasarkan jari-jari dan tinggi.
OUTPUT:
Tampilkan volume tabung beserta meter kubiknya.
Latihan Operator Aritmatika 4
Buatlah program untuk menghitung diskriminan. (estimasi 10 menit)
INPUT:
- Nilai A
- Nilai B
- Nilai C
PROCESS:
Kalkulasi Diskriminan
OUTPUT:
Hasil Kalkulasi Diskriminan
Latihan Operator Aritmatika 5
Buatlah program untuk menghitung jarak antara dua titik pada permukaan bumi. (estimasi 20 menit)
INPUT:
- Longitude Titik A
- Latitude Titik A
- Longitude Titik B
- Latitude Titik B
PROCESS:
Kalkulasi Jarak
OUTPUT:
Hasil Kalkulasi antara 2 titik