Dasar-dasar C/C++ - · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda...

24
Dasar-dasar C/C++ Ekohariadi FT Unesa

Transcript of Dasar-dasar C/C++ - · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda...

Page 1: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Dasar-dasar C/C++

EkohariadiFT Unesa

Page 2: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Program yang baik dibuat dengan filosofi rancanganseperti membuat bangunan yang baik. Ia bergantungpada perencaaan yang cermat. Program yangterstruktur terdiri dari bagian-bagian (modul) yangsaling terkait, yang ditata secara logis, dan mudahdipahami, untuk membentuk unit yang terintegrasi.Ini disebut program modular. Program modularmudah dikembangkan, dibetulkan, dan dimodifikasi.

Program Modular

Page 3: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Program Modular

Page 4: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Setiap modul didesain dan dikembangkan untukmelakukan tugas tertentu dan kenyataannyamerupakan subprogram yang kecil. Program C++ yanglengkap dibuat dengan menggabungkan banyakmodul. Dalam C++, modul dapat berupa fungsimaupun klas. Fungsi dapat dianggap sebagai satu unitatau subprogram yang melakukan tugas tertentu.Nama fungsi harus selalu diikuti oleh tanda kurung.Juga nama fungsi yang baik hendaknya merupakanmnemonic.

Program Modular

Page 5: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Marilah kita mulai mempelajari program sederhana sepertiberikut:/*Ini adalah program C++ sederhana.File ini bernama contoh.cpp.*/#include <iostream>using namespace std;// Program C++ diawali main()int main(){

cout << "Mari belajar C++.";system ("PAUSE");return 0;

}Anda akan mengikuti tiga langkah: (1) memasukkan program, (2)mengompil program, dan (3) menjalankan program.

Program Pertama Sederhana

Page 6: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Memasukkan programKetikan program di atas. Anda dapat menggunakan pengolah katamaupun notepad, atau editor yang ada di compiler C++. Beri namafile contoh.cpp. Simpan di folder yang Anda sukai.Mengompilasi programBagaimana Anda mengompilasi contoh.cpp bergantung padacompiler Anda. Jika Anda menggunakan Dev C++, pilih menuExecuteà Compile, maka proses kompilasi berjalan secaraotomatis.Menjalankan programSetelah program C++ dikompilasi, maka ia siap dijalankan dengancara memilih menu Executeà RunKetika program dijalankan, layar menampilkan

Mari belajar C++.

Program Pertama Sederhana

Page 7: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Meskipun program coba.cpp singkat, ia mengandung beberapafitur yang umum di semua program C++. Program dimulai denganbaris

/*Ini adalah program C++ sederhana.File ini bernama contoh.cpp.*/

Ini adalah komentar. Isi komentar diabaikan oleh komputer. Tujuankomentar adalah menjelaskan operasi program ke pembaca.Komentar dimulai dengan /* dan diakhiri dengan */.Kode berikutnya adalah:

#include <iostream>Program ini memerlukan header iostream yang mendukung sistemI/O C++. Header menggunakamn direktif #include.

Penjelasan Program

Page 8: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Baris berikutnya adalahusing namespace std;

Ini memberitahu komputer untuk menggunakan std namespace.Namespaces tambahan relatif baru di C++. Namespace adalahtempat dimana seluruh pustaka Standard C++ dideklarasikan.Dengan menggunakan std namespace, Anda diijinkan mengaksespustaka standar. (Karena namespaces relatif baru, compiler lamamungkin tidak mendukungnya).Baris berikutnya adalah

// Program C++ diawali main()Baris ini memperlihatkan komentar satu baris. Komentar dimulaidengan // dan berhenti pada akhir baris.

Penjelasan Program

Page 9: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Baris berikutnyaint main()

Semua program C++ terdiri dari satu atau lebih fungsi. Fungsi adalahsebuah subprogram. Setiap fungsi C++ harus mempunyai sebuahnama. Fungsi main() adalah awal program. Tanda kurung pembuka ({)yang mengikuti main() menandai permulaan fungsi main(). Huruf intyang mendahului main() menentukan tipe data yang dikembalikanoleh main(). Int berarti tipe data integer.Baris berikutnya adalah

cout << "Mari belajar C++.";Ini merupakan pernyataan console ouput. Ini menyebabkan pesanMari belajar C++. ditampilkan di layar. Ia dilaksanakan denganmenggunakan operator output <<. Semua pernyataan diakhiridengan semicolon (;).

Penjelasan Program

Page 10: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Pesan "Mari belajar C++.” adalah string. Pada C++ string adalahserangkaian karakter yang ditutup antara tanda petik dobel.Baris berikutnya adalah

system ("PAUSE");Baris ini menyebabkan program behenti. Untuk melanjutkanpengguna menekan tombol Enter.Baris berikutnya adalah

return 0;Baris ini mengakhiri fungsi main() dan menyebabkan iamengembalikan nilai 0 ke sistem operasi. Untuk sebagian sistemoperasi, pengembalian nilai 0 menunjukkan bahwa program berakhirsecara normal.Tanda kurung penutup (}) pada akhir program mengakhiri program.

Penjelasan Program

Page 11: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Variabel adalah lokasi memori yang dapat diberi suatunilai. Nilai variabel dapat diubah selama eksekusiprogram. Yaitu isi variabel dapat berubah-ubah tidaktetap. Program berikut membuat variabel yangdisebut panjang, memberinya nilai 8, lalumenampilkan pesan “Panjang adalah 8” pada layar.

Program Sederhana Kedua

Page 12: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

// Penggunaan variabel#include <iostream>using namespace std;// Program C++ diawali main().int main(){

int panjang; // mendeklarasikan variabelpanjang = 8; // memberi 8 ke panjangcout << "Panjang adalah ";cout << panjang; // menampilkan 8system ("PAUSE");return 0;

}

Program Sederhana Kedua

Page 13: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Program ini memperkenalkan dua konsep baru. Pertama,pernyataanint panjang; // mendeklarasikanMendeklarasikan variabel panjang yang bertipeinteger. Pada C++, semua variabel harusdideklarasikan sebelum ia digunakan. Juga tipe nilaiyang disimpan variabel harus ditentukan. Ini disebuttipe variabel. Dalam hal ini, panjang menyimpan nilaiinteger. Nilai bilangan bulat ini mempunyai rentang-32768 sampai 32767.

Program Sederhana Kedua

Page 14: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Fitur baru kedua adalahpanjang = 8; // memberi 8 ke panjangIni memberi nilai 8 ke panjang. Operator penugasanadalah tanda sama dengan. Ia mengutip (copy) nilaisebelah kanan ke variabel sebelah kiri. Setelahpenugasan, variabel panjang akan berisi nilai 8.Pernyataan berikut menampilkan nilai panjang:cout << panjang; // menampilkan 8

Jika Anda ingin menampilkan nilai variabel,letakkannya pada sebelah kanan << di pernyataancout.

Program Sederhana Kedua

Page 15: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

C++ mendukung semua operator aritmatika yangmemungkinkan Anda memanipulasi nilai numerik yangdigunakan di program. Operator aritmatika seperti dibawah.

+ Penjumlahan- Pengurangan* Perkalian/ Pembagian

Operator ini bekerja seperti pada aljabar. Program berikutmenggunakan operator * untuk menghitung luassegiempat jika diketahui panjang dan lebar.

Penggunaan Operator

Page 16: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

// Penggunaan operator#include <iostream>using namespace std;int main(){

int panjang; // mendeklarasikan variabelint lebar;//mendeklarasikan variabel lainint luas; // ini jugapanjang = 8; // memberi 8 ke panjanglebar = 6; // menetapkan 6 ke lebarluas = panjang * lebar;// menghitung luascout << "Luas adalah ";cout << luas; // menampilkan 48system ("PAUSE");return 0;

}Program ini mendeklarasikan tiga variabel: panjang, lebar, dan luas. Iamemberi nilai 8 ke panjang dan 6 ke lebar. Lalu menghitung hasil kalidan memberi nilai ke luas. Program mengeluarkan:

#)$( $%$’$& !"

Page 17: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Untuk memungkinkan pengguna memasukkan datake program dari keyboard, Anda harus menggunakanoperator >>. Ini adalah operator input C++. Untukmembaca dari keyboard, gunakan bentuk umum ini

cin >> var;Disini cin berarti console input. Cin berkatian dengankeyboard. Variabel menerima input yang ditetapkanoleh var. Program berikut memungkinkan penggunamemasukkan ukuran segiempat.

Membaca Input dari Keyborad

Page 18: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

/* Program interaktif yangmenghitung luas segiempat */#include <iostream>using namespace std;int main(){

int panjang; // mendeklarasikan variabelint lebar; // mendeklarasikan variabel laincout << "Masukkan panjang: ";cin >> panjang; // memasukkan panjangcout << "Masukkan lebar: ";cin >> lebar; // memasukkan lebarcout << "Luas adalah ";cout << panjang * lebar; // menampilkan luassystem ("PAUSE");return 0;

}

Membaca Input dari Keyborad

Page 19: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Berikut adalah contoh hasil:Masukkan panjang: 8Masukkan lebar: 5Luas adalah 40 Press any key to continue ...

Perhatikan baris-baris berikut:cout << "Masukkan panjang: ";cin >> panjang; // memasukkan panjang

Pernytaan cout memberi prompt ke pengguna. Pernyataan cinmembaca respons pengguna, yang menyimpan nilai dipanjang. Dengan demikian nilai yang dimasukkan penggunadiletakkan di variabel sebelah kanan >> . Setelah pernyataancin dieksekusi, panjang berisi panjang segiempat.

Membaca Input dari Keyborad

Page 20: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Pada program terdahulu, digunakan variabel tipe int. Tetapivariabel tipe int hanya dapat menyimpan bilangan bulat. Ia tidakdapat digunakan ketika diperlukan komponen pecahan. Misalvariabel int dapat menyimpa nilai 19, tetapi tidak 19.4. Int hanyasatu dari banyak tipe dat di C++. Untuk mengolah bilangandengan komponen pecahan, C++ menentukan dua tipe floating-point utama: float dan double, yang mewakili nilai single dandouble precision. Double paling banyak digunakan. Untukmendeklarasikan variabel tipe double, gunakan pernyataanseperti berikut:

double hasil;Disini hasil adalah nama variabel, yang bertipe double. Cobalahprogram berikut:

Tipe Data Lain

Page 21: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

/* Program mengilustrasikan perbedaanantara int dan double */#include <iostream>using namespace std;int main(){

int var_i; // mendeklarasikan variabel intdouble var_d; // mendeklarasikan variabel doublevar_i = 10; // memberi nilai 10 ke var_ivar_d = 10.0; // memberi nilai 10.0 ke var_dcout << "Nilai awal var_i: " << var_i << "\n";cout << "Nilai awal var_d: " << var_d << "\n";cout << "\n"; // cetak baris kosong// membagi dengan 3var_i = var_i / 3;var_d = var_d /3;cout << "var_i setelah pembagian: " << var_i <<"\n";cout << "var_d setelah pembagian: " << var_d <<"\n";system ("PAUSE");return 0;

}

Page 22: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Output program tersebut adalah berikut ini:Nilai awal var_i: 10Nilai awal var_d: 10

var_i setelah pembagian: 3var_d setelah pembagian: 3.33333Press any key to continue . . .

Tipe Data Lain

Page 23: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

Meskipun contoh program terdahulu mengilustrasikan ciripenting C++, mereka tidak sangat berguna. Anda dapatbelajar bagaimana membuat program yang praktis. Padaproyek ini kita membuat program untuk mengubah feetke meter. Program mengijinkan pengguna memasukkanpanjang dalam feet lalu menampilkan nilai dalam meter.Satu meter sama dengan 3,28 feet. Kita memerlukan datafloating-point. Untuk melakukan konversi, programmendeklarasikan dua variabel. Satu menyimpan panjangdalam feet, yang lain menyimpan nilai konversi dalammeter.

Proyek: Mengubah Feet ke Meter

Page 24: Dasar-dasar C/C++ -   · PDF fileDasar-dasar C/C++ Ekohariadi FT Unesa. ... Jika Anda menggunakan Dev C++, pilih menu Execute àCompile, maka proses kompilasi berjalan secara

/*Program ini mengubah feet ke meter*/#include <iostream>using namespace std;int main(){

double f; // menyimpan panjang dalam feetdouble m; // menyimpan panjang dalam metercout << "Masukkan panjang dalam feet: ";cin >> f; // membaca nilai feetm = f / 3.28; // mengubah ke metercout << f << " feet adalah " << m << " meter.";system ("PAUSE");return 0;

}