CONTOH TUGAS PRAKTIKUM ALGORITMA DAN PEMROGRAMAN SEMESTER I
DASAR TEORI
Bahasa Pemrograman C adalah sebuah
bahasa pemrograman komputer yang bisa digunakan untuk membuat berbagai aplikasi (general-purpose programming language), mulai dari sistem operasi (seperti Windows atau Linux), antivirus, software pengolah gambar (image processing), hingga compiler untuk bahasa pemrograman, dimana C banyak digunakan untuk membuat bahasa pemrograman lain yang salah satunya adalah PHP.
Meskipun termasuk general-purpose programming language, yakni bahasa pemrograman yang bisa membuat berbagai aplikasi, bahasa pemrograman C paling cocok merancang aplikasi yang berhubungan langsung dengan Sistem Operasi dan hardware. Ini tidak terlepas dari tujuan awal bahasa C dikembangkan.Bahasa pemrograman C dibuat pertama kali oleh Dennis M. Ritchie pada tahun 1972. Saat itu Ritchie bekerja di Bell Labs, sebuah pusat penelitian yang berlokasi di Murray Hill, New Jersey, Amerika Serikat.
Ritchie membuat bahasa pemrograman C untuk mengembangkan sistem operasi UNIX. Sebelumnya, sistem operasi UNIX dibuat menggunakan bahasa assembly (assembly language). Akan tetapi bahasa assembly sendiri sangat rumit dan susah untuk dikembangkan.Dengan tujuan mengganti bahasa assembly, peneliti di Bell Labs membuat bahasa pemrograman B. Namun bahasa pemrograman B juga memiliki beberapa kekurangan, yang akhirnya di lengkapi oleh bahasa pemrograman C.Dengan bahasa C inilah sistem operasi UNIX ditulis ulang. Pada gilirannya, UNIX menjadi dasar dari banyak sistem operasi modern saat ini, termasuk Linux, Mac OS (iOS), hingga sistem operasi Android.
Fitur dan Keunggulan Bahasa Pemrograman C
Berikut beberapa fitur serta keunggulan bahasa pemrograman C jika dibandingkan dengan bahasa pemrograman lain:
Bahasa C sebagai bahasa pemrograman prosedural
Konsep pemrograman prosedural adalah sebuah metode pemrograman yang setiap baris perintah diproses secara berurutan dari baris paling atas hingga baris paling bawah. Selain itu bisa terdapat fungsi tambahan (function) yang digunakan untuk menyelesaikan berbagai tugas. Bahasa pemrograman C termasuk ke dalam kelompok ini.
Selain konsep prosedural, terdapat juga konsep pemrograman object (object-oriented programming). Di dalam bahasa pemrograman object, setiap tugas akan dijalankan menggunakan class dan object. Contoh bahasa pemrograman object adalah JAVA.
Bagi pemula, sangat disarankan untuk mempelajari bahasa pemrograman prosedural terlebih dahulu, baru kemudian masuk ke dalam bahasa pemrograman object. Ini juga menjadi alasan untuk belajar bahasa C terlebih dulu baru kemudian masuk ke bahasa pemrograman object seperti JAVA. Beberapa bahasa pemrograman juga mendukung konsep prosedural dan object sekaligus, contohnya bahasa pemrograman C++ dan PHP.
Bahasa C sangat cepat dan efisien
Aplikasi yang dibuat menggunakan bahasa C bisa dieksekusi dengan sangat cepat serta berukuran kecil. Ini karena C bisa langsung berkomunikasi dengan hardware, sebuah fitur yang jarang tersedia di bahasa pemrograman modern seperti JAVA, PHP, maupun Phyton.Akan tetapi, hal ini juga memiliki kelemahan. Bahasa C relatif sederhana dan tidak memiliki fitur-fitur modern seperti garbage collection dan dynamic typing.
Bahasa C adalah portable language
Maksudnya, bahasa pemrograman C bisa di-compile ulang supaya berjalan di berbagai sistem operasi tanpa perlu mengubah kode-kode yang ada. Aplikasi yang dibuat di Windows dengan bahasa C, bisa dipindahkan ke Linux dengan sedikit atau tanpa modifikasi.
Bahasa C merupakan “induk” dari bahasa pemrograman modern
Bahasa pemrograman C banyak menginspirasi bahasa pemrograman lain, seperti C++, C#, Objective C, PHP, JAVA, JavaScript dan masih banyak lagi. Dengan mempelajari bahasa C, anda akan familiar dan lebih mudah saat berpindah ke bahasa pemrograman lain yang merupakan turunan dari C.
Pengertian Pointer
Pointer adalah suatu variabel yang menunjuk ke alamat memory variabel yang lainnya.
Suatu pointer bukan berisi dengan suatu nilai data seperti halnya pada variabel biasa, variabel pointer berisi dengan suatu alamat.
Untuk mendeklarasikan variabel pointer kita menggunakan tanda asterik / bintang (*) didepan variabel yang di deklarasikan pada tipe data tertentu.
Tanda ini juga dapat dipakai untuk mengakses nilai dari variabel yang telah ditunjuk.
Untuk mendapatkan alamat dari variabel pointer kita menggunakan tanda &
Deklarasi & Isi
Deklarasi variabel pointer seperti halnya deklarasi variabel lainnya hanya ditambahkan tanda * pada depan nama variabel.
int *b
Untuk mendapatkan alamat memori pointer (address of) maka perintah yang digunakan adalah menambahkan tanda & didepan variabel
&b
Untuk mendapatan Isi atau nilai dari variabel pointer maka perintah yang digunakan cukup nama variabelnya saja.
b
Untuk mendapatkan isi atau nilai dari alamat yang terdapat pada isi pointer (value pointed by) maka perintah yang digunakan adalah menambahkan tanda * didepan variabel
*b
Contoh program dengan pointer
#include <stdio.h>
main(){
int *ptr;
int k;
k=7;
printf("Isi variabel k = %d",k);
printf("\nAlamat variabel k = %d",&k);
printf("\nAlamat variabel *ptr = %d",&ptr);
printf("\nIsi variabel *ptr = %d",ptr);
ptr=&k;
printf("\nAlamat variabel *ptr = %d",&ptr);
printf("\nIsi variabel *ptr = %d",ptr);
printf("\nIsi dari alamat %d = %d",ptr,*ptr);
printf("\n");
}
Penerjemah Bahasa Pemrograman
Program yang ditulis dalam bahasa pemrograman seperti C dan C++ sebenarnya tidak dimengerti oleh computer secara langsung. Sebab computer hanya mengenali kode 0 dan 1 (binary digit ). Supaya program dapat dijalankan oleh computer, program tersebut harus diterjemahkan terlebih dahulu ke dalam bahasa mesin (atau biasa disebut kode objek). Proses penerjemahannya dilakukan oleh program yang disebut Translator.
Translator dapat berupa :
Interpreter
Interpreter menerjemahkan instruksi selama program diminta untuk dieksekusi. Jika seseorang bermaksud menjalankan program tersebut (agar dapat dijalankan oleh computer, mula-mula kode sumber (source code atau program asli yang diitulis olem pemrogram) ditermahkan dulu ke dalam bentuk kode mesin baris perbaris instruksi. Setelah satu baris instruksi tersebut difahami oleh computer, instruksi tersebut dijalankan. Interpreter kemudian kembali memproses baris instruksi berikutnya.
Kompiler
Kompiler menerjemahkan instruksi ke dalam kode objek secara keseluruhan (untuk semua instruksi). Setelah semua instruksi diterjemahkan, instruksi yang dimengerti oleh computer dijalankan. Proses penerjemahan seperti itu disebut kompilasi. Setelah kompilasi berakhir, compiler tidak diperlukan lagi, sebab sesudah kompilasi akan terbentuk program yang dapat dijalankan secara langsung tanpa melalui translator (executable).
Kerangka Program dalam Bahasa C / C++
Setiap program yang ditulis dengan menggunakan bahasa C harus mempunyai fungsi utama, fungsi tersebut bernama main(). Fungsi inilah yang akan dipanggil pertama kali pada saat eksekusi program. Apabila ada fungsi lain yang dibuat, maka fungsi tersebut akan dijankan ketika dipanggil di fungsi utama. Hal ini karena bahasa C/C++ merupakan bahasa procedural yang menerapkan konsep runtutan (program dieksekusi baris-perbaris dari atas ke bawah secara berurutan).
Ada dua bentuk kerangka fungsi utama yang sering digunakan :
Bentuk dengan tanpa pengembalian nilai ke system operasi (dengan menuliskan Void sebelum fungsi utama )
Contoh :
Void main(void)
{
Kode program yang di tulis
}
Kata kunci void dalam kurung bersifat opsional, artinya bias dituliskan atau juga tidak.
Bentuk dengan pengembalian nilai 0 ke system operasi (dengan menuliskan tipe data sebelum fungsi utama )
Contoh :
int main(void)
{
Kode program yang di tulis
Return 0;
}
Kata kunci void dalam kurung bersifat opsional, artinya bias dituliskan atau juga tidak.Fungsi return 0 pada konsep di atas adalah fungsi main() ini dapat mengembalikan nilai 0 ke system operasi yang menandakan bahwa program tersebut berjalan dengan baik tanpa adanya kesalahan.
Mengenal File Header ( *.h )Program dalam Bahasa C / C++
File header adalah file dengan eksetensi h ( *.h ) yaitu file bantuan yang digunakan untuk menyimpan daftar-daftar fungsi yang akan digunakan di dalam program.
File header di dalam C/C++ misalnya adalah <stdio.h> atau <iostream.h> untuk proses masukan dan keluaran (input/output). Tidak hanya dua file header tersebut karena masih banyak file header yang disediakan oleh C/C++ untuk menangani kerword-keyword yang lain.
Di bawah ini akan digambarkan bagaimana cara penulisan file header dengan mengacu pada konsep kerangka yang sudah dijelaskan di atas :
Contoh 1 : Penggunaan input/output dengan bahasa C
#include <stdio.h>
Int main()
{
Printf(“hello world\n”);
Return 0;
}
Contoh 2 : Penggunaan input/output dengan bahasa C
#include <stdio.h>
Void main()
{
Printf(“hello world \n”);
{
Mengenal Fungsi printf() dan scanf() dalam Bahasa C
Dalam pembuatan sebuah program computer, kita tidak akan lepas dari proses masukan (input) dan keluaran (output). Dalam bahasa C perintah tersebut dikenal dengan penulisan scanf() sebagai inputan dan printf() sebagai keluaran. Untuk file header yang diperlukan adalah stdio.h.
Contoh 1 : Memasukkan sebuah nilai bertipe integer
#include <stdio.h>
Int main()
{
Int x;
Printf(“masukkan bilangan bukat =”);
Scanf(“%d”,&x);
Printf(“nilai yang anda masukkan adalah=%d”,x);
Return 0;
}
kode program yang di dalamnya terdapat tanda %d, maksudnya adalah masukan tersebut membaca nilai bertipe int (format bilangan bulat) dari keyboard dan menyimpan nilai tersebut ke dalam alamat di dalam memori yang ditempati oleh variable x.
Ada beberapa format yang lain untuk menentukan format yang dapat dipakai pada scanf().
Ada beberapa format yang lain untuk menentukan format yang dapat dipakai pada printf().
Ada beberapa tambahan dalam penggunaan bilangan real misalnya :
%.3f mencetak bilangan real dengan 3 angka di belakang koma
%2.3 mencetak bilangan real dengan 2 angka sebelum koma dan 3 angka sesudah koma.
TUJUAN PRAKTIKUM
Mahasiswa dapat mengetahui apa itu bahasa C
Mahasiswa dapat mengetahui struktur dasar bahasa C
Mahasiswa dapat mengetahui pengertian kompilasi
Mahasiswa dapat mengetahui tipe kesalahan yang terjadi pada bahasa C
Mahasiswa dapat mengetahui tipe data bahasa C
Mahasiswa dapat mengetahui yang dimaksud dengan variable dan konstanta
Mahasiswa dapat mengetahui aturan penamaan variable
PENDAHULUAN
Perkembangan teknologi di era jaman sekarang tumbuh dan berkembang secara pesat. Kiprahnya hampir di semua kalangan dan instansi menggunakan teknologi informasi. Salah satunya, informasi di dalam sebuah perusahaan atau sebuah organisasi sangat penting untuk mendukung sebuah keputusan dan membantu dalam kegiatan pekerjaan mereka. Akibat kurangnya informasi yang didapat oleh sebuah perusahaan/organisasi dalam kurun waktu tertentu akan menimbulkan masalah dan ketidakmampuan dalam mengambil sumber daya sehingga di dalam mengambil keputusan sangat terganggu, sehingga mengalami kesulitan di dalam pekerjaan mereka.Selain itu, dalam rangka pencapaian program kerja dan meningkatkan kinerja perusahaan/ organisasi hampir semua perusahaan berupaya untuk melakukan perubahan terhadap sistem kerja yang ada, terlebih lagi terhadap sistem kerja yang bersifat ritinitas dan setiap hari. Sistem kerja itu di buat berdasarkan kegiatan yang mereka lakukan setiap harinya. Dalam sebuah perusahaan/organisasi merupakan hal yang wajib untuk memiliki sebuah sistem. Karena dengan sistem tersebut akan sangat membantu mereka dalam pengaksesan data akan lebih muda untuk mendapatkannya dan juga mudah untuk melakukan perhitungan dalam jumlah yang cukup banyak sehinnga informasi yang di peroleh lebih baik dan cepat.Dalam membangun sebuah sistem banyak sekali bahasa-bahasa pemograman yang bisa digunkan. Bahasa itu dibuat dan digunakan berdasarkan kemampuan si pembuat sistem dan berdasarkan untuk kegunaan sistem tersebut. Dalam bahasa komputer yang digunakan, misalnya saja Bahasa pemograman pascal, pemogramman C, pemogramman VB, dan masih banyak sekali bahasa pemogramman lainnya yang dapat digunakan.Dan dalam laporan praktikum ini kami akan mengambil pembahasan mengenai bahasa pemrograman C.
Komputer digital yang dapat diprogram pertama kali dibuat pada tahun 1930-an. Maksud dari "komputer digital" di sini adalah bahwa komputer-komputer tersebut bekerja dengan menggunakan angka-angka diskrit (yang memiliki batasan yang jelas), seperti halnya 0, 1, nilai π (3.14159) dan nilai-nilai angka lainnya. Sementara itu, maksud dari "komputer yang dapat diprogram" adalah komputer dapat melakukan operasi-operasi matematika dengan berdasarkan instruksi-instruksi yang disebut dengan program. Untuk beberapa tahun semenjak itu, program-program komputer ditulis di atas kertas yang dilubangi (disebut sebagai punched-card) atau medium-medium lainnya. Akhirnya, perangkat fisik komputer pun disebut sebagai perangkat keras (hardware), sementara instruksi-instruksi yang ditulis di atas punched card atau medium lainnya dikenal dengan perangkat lunak (software). Dinamai "perangkat lunak", karena memang memiliki sifat mudah diubah. Kita tidak harus membangun komputer secara keseluruhan untuk melakukan jenis perhitungan yang berbeda. Sementara itu, perangkat keras didesain untuk melakukan beberapa jenis operasi aritmetika dan logika. Operasi mana yang dapat dilakukan oleh perangkat keras dan bagaimana urutan operasi tersebut, diatur oleh kode-kode program. Pada saat program dijalankan, komputer juga disebut sedang "mengeksekusi program", yakni saat komputer membaca kode dan melakukan instruksi yang disuruhkan kepadanya.
Untuk dekade-dekade awal perkembangan komputer digital, hubungan antara perangkat keras dan perangkat lunak sangatlah erat. Setiap mesin memiliki instruksinya sendiri-sendiri yang kadang tidak cocok dengan mesin lainnya. Untuk mentransfer sebuah program dari satu mesin ke mesin lainnya yang lebih baru dan tentunya lebih cepat, program tersebut harus ditulis ulang dengan semua kode-kodenya yang baru. Nah, kode-kode yang hanya dimiliki oleh mesin tertentu ini dinamakan dengan kode mesin (machine code) atau bahasa mesin (machine language). Untuk lebih cepat mengingat instruksi-instruksi dalam kode mesin, para desainer pun kemudian membentuk sebuah cara dengan menyamakannya dengan sebuah kata tertentu (umumnya berupa singkatan dalam bahasa Inggris), yang kemudian berevolusi menjadi bahasa rakitan atau assembly language.
Bahasa pemrograman C merupakan salah satu bahasa pemrograman komputer yang bisa dikatakan mudah untuk dipelajari dan mudah untuk dipahami karena bahasanya merupakan bahasa tingkat tinggi yang dimengerti oleh manusia. Bahasa C dibuat pada tahun 1972 oleh Dennis Ritchie.Bahasa C++ dibuat oleh Bjarne Stroustrup di AT dan T Bell Laboratorium pada tahun 1980 yang merupakan pengembangan dari bahasa C. Pada awalnya bahasa ini disebut dengan C With Classes, sedangkan menggunakan nama C++ dimulai sejak 1983, yang diusulkan oleh Rick Mascitti.Bahasa C dikembangkan dari bahasa BPCL (Basic Combined Programming Language ) dan bahasa B. Bahasa BPCL di kembangkan oleh Martin Richard pada tahun 1967 sebagai bahasa system operasi dan compiler. Ken Thompson pada tahun 1970 telah merancang bahasa B dengan memasukkan feature BPCL. Bahasa B dirancang untuk membuat system operasi UNIX/LINUX untuk computer DEC PDP-7 pada Bell Laboratories.
Pada tahun 1978 Dennis Ritchie dan Brian W. Kerninghan mempublikasikan bahasa C melalui buku "The C Programming Language". Buku ini diterbitkan oleh Prentice Hall dan pada saat ini telah di terjemahkan dalam berbagai bahasa di dunia. Dan buku ini juga yang menjadikan legenda dan sejarah bagi bahasa C hingga di kenal dengan sebutan K&R C (K=Kerninghan | R=Ritchie).Seiring pesatnya perkembangan bahasa C, maka banyak vendor dan software developer mengembangkan bahasa C menurut versi mereka masing-masing. hal ini telah memicu ANSI (American National Standards Institute) pada tahun 1983 untuk membentuk komite teknis yang di sebut X3J11 untuk bekerja pada standard bahasa C yang bertujuan untuk membuat definisi standar bahasa C yang lebih modern dan komprehensif, dengan memperbaiki syntax dan grammar bahasa C. Pada akhir 1989 komite telah menyetujui standard ANSI untuk bahasa C yang kemudian terkenal dengan sebutan ANSI C.
Bahasa C termasuk high-level programming language. Pada kenyataannya bahasa C adalah salah satu bahasa yang paling populer untuk keperluan umum. Dikatakan high-level programming language karena kedekatannya dengan bahasa manusia. Semakin dekat dengan bahasa manusia, maka semakin tinggi bahasa tersebut. Namun, membawa pengaruh semakin berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa mesin. Tapi tidak sedikit yang mengatakan bahasa C adalah medium-level programming language karena bahasa C juga sanggup berinteraksi langsung dengan mesin. Lebih tepatnya bahasa C berada diantara High-level dan Low-level. Low-level language adalah bahasa mesin (contoh : assembler),
Dalam beberapa literatur, bahasa C digolongkan sebagai bahasa tingkat menengah (medium level language). Penggolongan ini bukan berarti bahasa C kurang ampuh atau lebih sulit dibandingkan dengan bahasa tingkat tinggi (high level language - seperti Pascal, Basic, Fortran, Java, dan lain-lain), namun untuk menegaskan bahwa bahasa C bukanlah bahasa yang berorientasi pada pada mesin yang merupakan ciri dari bahasa tingkat rendah (low level language). Pada kenyataannya, bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah, yaitu kemudahan dalam membuat program yang ditawarkan pada bahasa tingkat tinggi dan kecepatan eksekusi dari bahasa tingkat rendah. bahasa yang sanggup berinteraksi langsung dengan mesin.Bahasa C mempunyai 32 keywords yang telah di tetapkan oleh ANSI. Ke 32 keywords itu adalah : auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while.Bahasa C mempunyai kemampuan lebih dibanding dengan bahasa pemrograman.
Keuntungan pertama dari menggunakan bahasa C adalah dari segi portabilitasnya (portable). Program C yang kita tulis untuk satu platform bisa kita gunakan pada platformlain, dengan atau tanpa perubahan sedikitpun. Ini terwujud karena adanya standarisasi ANSI untuk C.
Keuntungan kedua dari menggunakan bahasa C adalah bahasa pemrograman yang fleksibel. Dengan menguasai bahasa C kita bisa menulis dan mengembangkan berbagai jenis program mulai dari operating system, word processor, graphic processor, ataupun compiler untuk satu bahasa pemrograman yang lain.
Keuntungan ketiga adalah reuse : bahasa pemrograman yang dapat di gunakan beberapa kali dalam program atau aplikasi lain. Di karenakan banyak bahasa-bahasa yang lain dibuat dengan menggunakan bahasa C, maka bahasa C cocok untuk di jadikan bahasa pemula untuk belajar programming. Seperti halnya bahasa PERL yang sangat popular di kalangan World Wide Web (WWW) juga banyak mengambil fitur dari bahasa C. contoh lain adalah C++ yang di perluasan dari bahasa C. Belajar JAVA pun akan sangat mudah jika anda mengetahui bahasa C.
Perbedaan Antara Bahasa pemrograman C dan C++ meskipun bahasa-bahasa tersebut menggunakan sintax yang sama tetapi mereka memiliki perbedaan, C merupakan bahasa pemrograman prosedural, dimana penyelesaian suatu masalah dilakukan dengan membagi-bagi masalah tersebut kedalam su-submasalah yang lebih kecil, Selain itu, C++ merupakan bahasa pemrograman yang memiliki sifat Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bahasa mesin. Oleh karena itu , jika suatu program ditulis dalam bahasa tingkat tinggi, maka program tersebut harus diproses dahulu sebelum bisa dijalankan dengan komputer.Proses untuk untuk mengubah dari bahasa tingkat tinggi ke bahasa tingkat rendah dalam bahasa pemrograman ada 2 tipe yaitu intrepenter dan compiler. Bahasa pemrograman seperti C dan C++ merupakan contoh dari tipe compiler.
DASAR TEORI
FOR DO-WHILE dan WHILE dalam Bahasa C digunakan untuk membuat perulangan proses dalam sebuah program. Perulangan proses atau yang lazim disebut loop dibutuhkan untuk membuat penulisan kode program lebih efisien. Misalnya kita akan mengulang sebuah tampilan sebanyak seratus kali maka sangat tidak efisien jika harus menulis kode yang sama sebanyak seratus kali. Dengan menggunakan logika perulangan proses atau loop cukup beberapa baris kode program saja. Pada bahasa C dikenal tiga buah perulangan proses yaitu WHILE, DO WHILE dan FOR. Kemudian untuk keluar dari perulangan proses digunakan beberapa pernyataan program seperti BREAK, GOTO dan CONTINUE. Berikut ini pembahasan mengenai masing-masing perulangan proses dalam bahasa C tersebut.
Perulangan FOR
Pada perulangan FOR, inisialisasi variabel, syarat dan operasi bilangan ditulis dalam satu kelompok dan terpisah dari statemen program yang akan dijalankan. Statemen program akan dijalankan berulang selama kondisi syarat masih terpenuhi atau bernilai benar. Perulangan FOR dilakukan untuk meringkas penulisan perulangan menggunakan WHILE bilamana telah diketahui atau ditentukan jumlah perulangannnya.
Cara Penulisan FOR dalam bahasa C
for (nilai awal; tes kondisi nilai; operasi perubahan nilai)
{
kode yang akan dijalankan jika kondisi bernilai benar;
}
Contoh penggunaan FOR dalam bahasa C
#include <stdio.h>
int main() {
int angka;
for (angka = 0; angka <= 10; angka++) {
printf("%d\n", angka);
}
return 0;
}
Pada program tampak perulangan FOR mengacu pada perubahan nilai variabel angka. Inisialisasi nilai awal untuk variabel angka sebesar 0 lalu tes kondisi perulangan jika angka kurang dari atau sama dengan 10 dengan operasi perubahan nilai berupa increnet angka dengan perintah angka++. Dengan demikian jika program dijalankan akan tampil angka 1 sampai 10.
Perulangan DO-WHILE
Pada perulangan menggunakan DO WHILE, statemen program akan dijalankan secara berulang selama kondisi syarat pada WHILE masih terpenuhi atau bernilai benar. Perulangan akan berhenti jika kondisi syarat pada WHILE bernilai salah. Pada perulangan DO WHILE, statemen program akan dijalankan setidaknya sekali sebelum mengecek kondisi syarat pada WHILE.
Cara penulisan DO-WHILE dalam bahasa C
do {
kode yang akan dijalankan jika kondisi bernilai benar;
} while (kondisi);
Contoh penggunaan DO...WHILE dalam bahasa C
#include <stdio.h>
int main ()
{
int angka = 0;
do {
printf("%d\n", angka);
angka ++;
} while(angka <= 10);
return 0;
}
Pertama kali dilakukan deklarasi variabel angka sekaligus diberi nilai 0 melalui perintah angka = 0. Kemudian perintah printf untuk menampilkan nilai angka lalu diikuti dengan perintah increment angka (angka++).
Selanjutnya dicek kondisi syarat pada WHILE, apakah nilai angka lebih kecil atau sama dengan 10. Jika ya maka akan diulang proses diatas sampai kondisi pada WHILE tercapai.Jika dijalankan program diatas akan menampilkan angka 0 sampai 10 secara vertikal, karena ada karakter \n yang berarti ganti baris baru.
Perulangan WHILE
Pada perulangan menggunakan WHILE, statemen program juga akan dijalankan secara berulang selama kondisi syarat pada WHILE masih bernilai benar. Perulangan akan berhenti jika syarat pada WHILE bernilai salah.
Cara penulisan WHILE dalam bahasa C
while (kondisi) {
kode yang akan dijalankan jika kondisi bernilai benar;
};
Contoh penggunaan WHILE dalam bahasa C
#include <stdio.h>
int main ()
{
int angka = 0;
while(angka<=10) {
printf("%d\n", angka);
angka ++;
};
return 0;
}
Pertama kali dilakukan inisialisasi variabel angka sekaligus diberi nilai 0 (angka = 0). Kemudian dilakukan pengecekan terhadap nilai angka apakah lebih kecil atau sama dengan 10. Jika benar maka dijalankan perintah printf untuk menampilkan nilai angka lalu diikuti dengan perintah increment angka (angka++).Selanjutnya dilakukan pengecekan kembali kondisi syarat pada while, apakah nilai angka masih lebih kecil atau sama dengan 10. Jika ya maka akan diulang proses diatas sampai kondisi pada while terca
PENDAHULUAN
Looping atau perulangan merupakan sebuah struktur perintah yang sering digunakan pada sebuah aplikasi atau program. Perulangan juga sangat berguna pada program karena dapat kita pakai dalam struktur-struktur rumit yang besar yang memiliki kumpulan algoritma yang kompleks.Struktur looping secara garis besar memiliki beberapa statement dan perintah yang digunakan dalam membuat sebuah program.
Hampir setiap program mutlak memerlukan suatu perulangan dan percabangan. Tujuan perulangan disini adalah untuk mengulang statement berulang kali sesuai jumlah yang ditentukan pemakai. Program perulangan terbagi atas beberapa bagian yang digunakan sesuai dengan kebutuhan. Setiap perulangan akan memberikan output sesuai dengan algoritma yang dikehendaki.Loop atau perulangan dalam C dapat dilakukan dengan 3 teknik:
Perulangan dengan for
for (inisialisasi ekspresi; kondisi loop; ekspresi penambahan){ // pernyataan }Perulangan dengan teknik ini dikontrol oleh tiga bagian yang ada dalam tanda kurung dan masing-masing bagian ini dipisahkan oleh titik-koma. Pada bagian pertama(inisialisasi ekspresi), sebuah variabel akan di deklarasikan sebagai sebuah titik awal dari perulangan, biasanya variable ini mempunyai tipe data integer atau float. Sementara pada bagian kedua disinilah perulangan akan diperiksa apakah masih memenuhi syarat atau tidak, jika masih memenuhi syarat maka statement dibawahnya akan di eksekusi. Sedangkan bagian ketiga adalah bagian dimana jika bagian kedua masih memenuhi syarat maka nilai variabel akan ditambahkan sesuai dengan syarat yang dituliskan. Bagian ketiga ini secara otomatis akan tidak dibaca oleh program jika kondisi pada bagian ke-dua sudah tidak lagi memenuhi syarat, dan perulangan pun menjadi terhenti. Untuk lebih jelasnya perhatikan potongan contoh berikut ini:
for (int i=0; i <=1000; i++)
{ System.out.println(“Saya manusia”); }
Jika digambarkan jalannya program akan seperti ini: variable i akan di inisialisasi pertama kali dan langsung diberi nilai 0, kemudian variable i tersebut akan diperiksa pada bagian kedua, apakah i lebih kecil atau sama dengan 1000, jika nilai I pertama kali adalah 0 maka pernyataan tersebut bernilai benar (true), sehingga bagian ketiga pun di eksekusi dan kali ini nilai i menjadi sama dengan 1. setelah nilai i bertambah menjadi 1 maka langkah selanjutnya program akan mengeksekusi baris pernyataan yang ada didalam tanda kurung, program akan menuliskan ke layar “Saya Ganteng”. Setelah itu kursor baris akan kembali lagi keatas ke posisi for lagi, namun inisialisasi variabel dilewatkan dan langsung ke bagian kedua yaitu memeriksa apakah i <=1000, dan jika masih memenuhi syarat maka bagian ketiga dan baris statement pun di eksekusi kembali, demikian seterusnya hinga nilai variabel i sudah menjadi sama dengan 1001. Jika nilai variabel i sudah tidak lagi memenuhi syarat bagian kedua maka program akan tidak mengeksekusi bagian ketiga dan baris statement, dan pada saat ini pula loop atau perulangan akan berhenti. Jika digambarkan dalam diagram maka seperti inilah perulangan dengan for itu tergambar
Perulangan dengan while.
Perulangan dengan menggunakan teknik while ini sebenarnya adalah suatu bentuk perulangan yang memodifikasi teknik pencabangan (branching) secara kasar. Pernyataan yang ada didalam blok perulangan akan dieksekusi dengan cara memeriksa ekspresi yang ada, sepanjang ekspresi bernilai true maka statement akan terus di eksekusi. Variabel sebagai kontrol perulangan bentuk ini diinisialisai di luar blok perulangan ini. Dan penambahan atau increment nilai variabel berada didalam blok perulangan ini. Kelebihan perulangan dengan bentuk ini adalah variabel yang dideklarasikan tidak hanya bertipe integer atau float saja namun bisa juga bertipe boolean atau string. Perhatikan contoh program perulangan dengan menggunakan bentuk ini yang memakai variabel bertipe integer sebagai kontrol perulangannya:
int i=0;
while(i<=10000)
{ System.out.println(“Saya manusia”);
i++; }
Sepanjang variable i bernilai lebih kecil sama dengan 1000 maka pernyataan mencetak ke layar “Saya Ganteng” akan tetap terus di eksekusi. Yang harus kita perhatikan jika kita menggunakan perulangan dengan teknik ini adalah bahwa incremental variabel i harus ada, sebab jika tidak yang terjadi adalah perulangan yang tidak pernah akan berhenti atau Invinitive Loop.
Kemudian mari kita lihat potongan kode yang variabel kontrolnya tidak menggunakan integer atau float, berikut ini:
boolean ctrl =false; int i = 0;
while(ctrl==false)
{ System.out.println(“Saya Ganteng”);
i++;
if (i == 1000){ ctrl = true; } }
Perhatikan pada potongan kode program tersebut. Pernyataan mencetak kelayar “Saya Ganteng” akan terus dieksekusi selama variabel kontrol perulangan tersebut masih bernilai false, sementara trigger untuk membuat variable bernilai true adalah nilai variable i yang harus sampai dengan 1000.
Jika digambarkan dalam diagram maka sketsa perulangan dengan bentuk ini seperti gambar berikut
Perulangan dengan do while
Perulangan dengan bentuk seperti ini adalah perulangan dengan membalikkan logika perulangan dengan teknik while. Dalam perulangan dengan bentuk ini, pernyataan dieksekusi dulu, baru kemudian kondisi variabel kontrol perulangannya diperiksa apakah memenuhi syarat atau tidak. Biar lebih mudah memahaminya mari kita lihat potongan code program berikut ini:
int i=0;
do
{ System.out.println(“Saya manusia”);
i++;
}while(i<=10000);
Variabel kontrol perulangan tetap diinisialisasi diluar blok perulangan dan harus tetap bersifat incremental/bertambah dan letak incrementalnya ada dalam blok perulangan. Secara logika maka diagram yang bisa menggambarkan proses perulangan tersebut adalah:
Adapun macam-macam Fungsi looping yang umumnya digunakan :
For
Gunanya untuk mengulang satu pernyataan sebanyak yang kita mau.
Script for(int i=0;i<=9;i++) { statement}
Pengulangan akan dilakukan dari 0-9, berarti ada 10x pengulangan.
Arti variable i=0 adalah nilai awal dari i adalah 0.
Arti i<=9 adalah maksimal pengulangan yang dilakukan adalah sampai 9.
Arti i++ adalah menambahkan nilai setiap pengulangan yang sudah di eksekusi, contoh nya jika kita sudah memasukkan nilai di i 0, maka akan langsung lanjut ke i [1] dan seterusnya hingga i [9].
While
Hampir sama dengan For, namun dalam while sistemnya hampir sama juga dengan If. Berikut contoh scriptnya :
Int i=1;
While(i<=4)
{
Cout<<;
I++;
}
Sebelum penggunaan while, nilai integer harus di deklarasikan terlebih dahulu (int i=1).
Penggunaannya hampir sama dengan if, tetapi di akhir statement harus ada tanda variable++ (i++) untuk menyatakan pengulangan hingga 4x
Do While
Merupakan statement pengulangan yang biasa digunakan untuk membuat menu dalam program. Secara umum proses do while sama dengan for ataupun while. Berikut contohnya :
do
{
Clrscr();
Cout<<”1. Jual“;
Cout<<”2. Beli “;
int i;
Cin>>i;
}while(i!=3);
Dalam statement di atas, ada 2 menu yang kita buat, yaitu menu jual dan beli. Dalam hal ini jika kita tidak menginput 3 (while(i!=3)) maka pengulangan terus berlangsung
DASAR TEORI
Bahasa Pemrograman C adalah sebuah
bahasa pemrograman komputer yang bisa digunakan untuk membuat berbagai aplikasi (general-purpose programming language), mulai dari sistem operasi (seperti Windows atau Linux), antivirus, software pengolah gambar (image processing), hingga compiler untuk bahasa pemrograman, dimana C banyak digunakan untuk membuat bahasa pemrograman lain yang salah satunya adalah PHP.
Meskipun termasuk general-purpose programming language, yakni bahasa pemrograman yang bisa membuat berbagai aplikasi, bahasa pemrograman C paling cocok merancang aplikasi yang berhubungan langsung dengan Sistem Operasi dan hardware. Ini tidak terlepas dari tujuan awal bahasa C dikembangkan.Bahasa pemrograman C dibuat pertama kali oleh Dennis M. Ritchie pada tahun 1972. Saat itu Ritchie bekerja di Bell Labs, sebuah pusat penelitian yang berlokasi di Murray Hill, New Jersey, Amerika Serikat.
Ritchie membuat bahasa pemrograman C untuk mengembangkan sistem operasi UNIX. Sebelumnya, sistem operasi UNIX dibuat menggunakan bahasa assembly (assembly language). Akan tetapi bahasa assembly sendiri sangat rumit dan susah untuk dikembangkan.Dengan tujuan mengganti bahasa assembly, peneliti di Bell Labs membuat bahasa pemrograman B. Namun bahasa pemrograman B juga memiliki beberapa kekurangan, yang akhirnya di lengkapi oleh bahasa pemrograman C.Dengan bahasa C inilah sistem operasi UNIX ditulis ulang. Pada gilirannya, UNIX menjadi dasar dari banyak sistem operasi modern saat ini, termasuk Linux, Mac OS (iOS), hingga sistem operasi Android.
Fitur dan Keunggulan Bahasa Pemrograman C
Berikut beberapa fitur serta keunggulan bahasa pemrograman C jika dibandingkan dengan bahasa pemrograman lain:
Bahasa C sebagai bahasa pemrograman prosedural
Konsep pemrograman prosedural adalah sebuah metode pemrograman yang setiap baris perintah diproses secara berurutan dari baris paling atas hingga baris paling bawah. Selain itu bisa terdapat fungsi tambahan (function) yang digunakan untuk menyelesaikan berbagai tugas. Bahasa pemrograman C termasuk ke dalam kelompok ini.
Selain konsep prosedural, terdapat juga konsep pemrograman object (object-oriented programming). Di dalam bahasa pemrograman object, setiap tugas akan dijalankan menggunakan class dan object. Contoh bahasa pemrograman object adalah JAVA.
Bagi pemula, sangat disarankan untuk mempelajari bahasa pemrograman prosedural terlebih dahulu, baru kemudian masuk ke dalam bahasa pemrograman object. Ini juga menjadi alasan untuk belajar bahasa C terlebih dulu baru kemudian masuk ke bahasa pemrograman object seperti JAVA. Beberapa bahasa pemrograman juga mendukung konsep prosedural dan object sekaligus, contohnya bahasa pemrograman C++ dan PHP.
Bahasa C sangat cepat dan efisien
Aplikasi yang dibuat menggunakan bahasa C bisa dieksekusi dengan sangat cepat serta berukuran kecil. Ini karena C bisa langsung berkomunikasi dengan hardware, sebuah fitur yang jarang tersedia di bahasa pemrograman modern seperti JAVA, PHP, maupun Phyton.Akan tetapi, hal ini juga memiliki kelemahan. Bahasa C relatif sederhana dan tidak memiliki fitur-fitur modern seperti garbage collection dan dynamic typing.
Bahasa C adalah portable language
Maksudnya, bahasa pemrograman C bisa di-compile ulang supaya berjalan di berbagai sistem operasi tanpa perlu mengubah kode-kode yang ada. Aplikasi yang dibuat di Windows dengan bahasa C, bisa dipindahkan ke Linux dengan sedikit atau tanpa modifikasi.
Bahasa C merupakan “induk” dari bahasa pemrograman modern
Bahasa pemrograman C banyak menginspirasi bahasa pemrograman lain, seperti C++, C#, Objective C, PHP, JAVA, JavaScript dan masih banyak lagi. Dengan mempelajari bahasa C, anda akan familiar dan lebih mudah saat berpindah ke bahasa pemrograman lain yang merupakan turunan dari C.
Pengertian Pointer
Pointer adalah suatu variabel yang menunjuk ke alamat memory variabel yang lainnya.
Suatu pointer bukan berisi dengan suatu nilai data seperti halnya pada variabel biasa, variabel pointer berisi dengan suatu alamat.
Untuk mendeklarasikan variabel pointer kita menggunakan tanda asterik / bintang (*) didepan variabel yang di deklarasikan pada tipe data tertentu.
Tanda ini juga dapat dipakai untuk mengakses nilai dari variabel yang telah ditunjuk.
Untuk mendapatkan alamat dari variabel pointer kita menggunakan tanda &
Deklarasi & Isi
Deklarasi variabel pointer seperti halnya deklarasi variabel lainnya hanya ditambahkan tanda * pada depan nama variabel.
int *b
Untuk mendapatkan alamat memori pointer (address of) maka perintah yang digunakan adalah menambahkan tanda & didepan variabel
&b
Untuk mendapatan Isi atau nilai dari variabel pointer maka perintah yang digunakan cukup nama variabelnya saja.
b
Untuk mendapatkan isi atau nilai dari alamat yang terdapat pada isi pointer (value pointed by) maka perintah yang digunakan adalah menambahkan tanda * didepan variabel
*b
Contoh program dengan pointer
#include <stdio.h>
main(){
int *ptr;
int k;
k=7;
printf("Isi variabel k = %d",k);
printf("\nAlamat variabel k = %d",&k);
printf("\nAlamat variabel *ptr = %d",&ptr);
printf("\nIsi variabel *ptr = %d",ptr);
ptr=&k;
printf("\nAlamat variabel *ptr = %d",&ptr);
printf("\nIsi variabel *ptr = %d",ptr);
printf("\nIsi dari alamat %d = %d",ptr,*ptr);
printf("\n");
}
Penerjemah Bahasa Pemrograman
Program yang ditulis dalam bahasa pemrograman seperti C dan C++ sebenarnya tidak dimengerti oleh computer secara langsung. Sebab computer hanya mengenali kode 0 dan 1 (binary digit ). Supaya program dapat dijalankan oleh computer, program tersebut harus diterjemahkan terlebih dahulu ke dalam bahasa mesin (atau biasa disebut kode objek). Proses penerjemahannya dilakukan oleh program yang disebut Translator.
Translator dapat berupa :
Interpreter
Interpreter menerjemahkan instruksi selama program diminta untuk dieksekusi. Jika seseorang bermaksud menjalankan program tersebut (agar dapat dijalankan oleh computer, mula-mula kode sumber (source code atau program asli yang diitulis olem pemrogram) ditermahkan dulu ke dalam bentuk kode mesin baris perbaris instruksi. Setelah satu baris instruksi tersebut difahami oleh computer, instruksi tersebut dijalankan. Interpreter kemudian kembali memproses baris instruksi berikutnya.
Kompiler
Kompiler menerjemahkan instruksi ke dalam kode objek secara keseluruhan (untuk semua instruksi). Setelah semua instruksi diterjemahkan, instruksi yang dimengerti oleh computer dijalankan. Proses penerjemahan seperti itu disebut kompilasi. Setelah kompilasi berakhir, compiler tidak diperlukan lagi, sebab sesudah kompilasi akan terbentuk program yang dapat dijalankan secara langsung tanpa melalui translator (executable).
Kerangka Program dalam Bahasa C / C++
Setiap program yang ditulis dengan menggunakan bahasa C harus mempunyai fungsi utama, fungsi tersebut bernama main(). Fungsi inilah yang akan dipanggil pertama kali pada saat eksekusi program. Apabila ada fungsi lain yang dibuat, maka fungsi tersebut akan dijankan ketika dipanggil di fungsi utama. Hal ini karena bahasa C/C++ merupakan bahasa procedural yang menerapkan konsep runtutan (program dieksekusi baris-perbaris dari atas ke bawah secara berurutan).
Ada dua bentuk kerangka fungsi utama yang sering digunakan :
Bentuk dengan tanpa pengembalian nilai ke system operasi (dengan menuliskan Void sebelum fungsi utama )
Contoh :
Void main(void)
{
Kode program yang di tulis
}
Kata kunci void dalam kurung bersifat opsional, artinya bias dituliskan atau juga tidak.
Bentuk dengan pengembalian nilai 0 ke system operasi (dengan menuliskan tipe data sebelum fungsi utama )
Contoh :
int main(void)
{
Kode program yang di tulis
Return 0;
}
Kata kunci void dalam kurung bersifat opsional, artinya bias dituliskan atau juga tidak.Fungsi return 0 pada konsep di atas adalah fungsi main() ini dapat mengembalikan nilai 0 ke system operasi yang menandakan bahwa program tersebut berjalan dengan baik tanpa adanya kesalahan.
Mengenal File Header ( *.h )Program dalam Bahasa C / C++
File header adalah file dengan eksetensi h ( *.h ) yaitu file bantuan yang digunakan untuk menyimpan daftar-daftar fungsi yang akan digunakan di dalam program.
File header di dalam C/C++ misalnya adalah <stdio.h> atau <iostream.h> untuk proses masukan dan keluaran (input/output). Tidak hanya dua file header tersebut karena masih banyak file header yang disediakan oleh C/C++ untuk menangani kerword-keyword yang lain.
Di bawah ini akan digambarkan bagaimana cara penulisan file header dengan mengacu pada konsep kerangka yang sudah dijelaskan di atas :
Contoh 1 : Penggunaan input/output dengan bahasa C
#include <stdio.h>
Int main()
{
Printf(“hello world\n”);
Return 0;
}
Contoh 2 : Penggunaan input/output dengan bahasa C
#include <stdio.h>
Void main()
{
Printf(“hello world \n”);
{
Mengenal Fungsi printf() dan scanf() dalam Bahasa C
Dalam pembuatan sebuah program computer, kita tidak akan lepas dari proses masukan (input) dan keluaran (output). Dalam bahasa C perintah tersebut dikenal dengan penulisan scanf() sebagai inputan dan printf() sebagai keluaran. Untuk file header yang diperlukan adalah stdio.h.
Contoh 1 : Memasukkan sebuah nilai bertipe integer
#include <stdio.h>
Int main()
{
Int x;
Printf(“masukkan bilangan bukat =”);
Scanf(“%d”,&x);
Printf(“nilai yang anda masukkan adalah=%d”,x);
Return 0;
}
kode program yang di dalamnya terdapat tanda %d, maksudnya adalah masukan tersebut membaca nilai bertipe int (format bilangan bulat) dari keyboard dan menyimpan nilai tersebut ke dalam alamat di dalam memori yang ditempati oleh variable x.
Ada beberapa format yang lain untuk menentukan format yang dapat dipakai pada scanf().
Ada beberapa format yang lain untuk menentukan format yang dapat dipakai pada printf().
Ada beberapa tambahan dalam penggunaan bilangan real misalnya :
%.3f mencetak bilangan real dengan 3 angka di belakang koma
%2.3 mencetak bilangan real dengan 2 angka sebelum koma dan 3 angka sesudah koma.
TUJUAN PRAKTIKUM
Mahasiswa dapat mengetahui apa itu bahasa C
Mahasiswa dapat mengetahui struktur dasar bahasa C
Mahasiswa dapat mengetahui pengertian kompilasi
Mahasiswa dapat mengetahui tipe kesalahan yang terjadi pada bahasa C
Mahasiswa dapat mengetahui tipe data bahasa C
Mahasiswa dapat mengetahui yang dimaksud dengan variable dan konstanta
Mahasiswa dapat mengetahui aturan penamaan variable
PENDAHULUAN
Perkembangan teknologi di era jaman sekarang tumbuh dan berkembang secara pesat. Kiprahnya hampir di semua kalangan dan instansi menggunakan teknologi informasi. Salah satunya, informasi di dalam sebuah perusahaan atau sebuah organisasi sangat penting untuk mendukung sebuah keputusan dan membantu dalam kegiatan pekerjaan mereka. Akibat kurangnya informasi yang didapat oleh sebuah perusahaan/organisasi dalam kurun waktu tertentu akan menimbulkan masalah dan ketidakmampuan dalam mengambil sumber daya sehingga di dalam mengambil keputusan sangat terganggu, sehingga mengalami kesulitan di dalam pekerjaan mereka.Selain itu, dalam rangka pencapaian program kerja dan meningkatkan kinerja perusahaan/ organisasi hampir semua perusahaan berupaya untuk melakukan perubahan terhadap sistem kerja yang ada, terlebih lagi terhadap sistem kerja yang bersifat ritinitas dan setiap hari. Sistem kerja itu di buat berdasarkan kegiatan yang mereka lakukan setiap harinya. Dalam sebuah perusahaan/organisasi merupakan hal yang wajib untuk memiliki sebuah sistem. Karena dengan sistem tersebut akan sangat membantu mereka dalam pengaksesan data akan lebih muda untuk mendapatkannya dan juga mudah untuk melakukan perhitungan dalam jumlah yang cukup banyak sehinnga informasi yang di peroleh lebih baik dan cepat.Dalam membangun sebuah sistem banyak sekali bahasa-bahasa pemograman yang bisa digunkan. Bahasa itu dibuat dan digunakan berdasarkan kemampuan si pembuat sistem dan berdasarkan untuk kegunaan sistem tersebut. Dalam bahasa komputer yang digunakan, misalnya saja Bahasa pemograman pascal, pemogramman C, pemogramman VB, dan masih banyak sekali bahasa pemogramman lainnya yang dapat digunakan.Dan dalam laporan praktikum ini kami akan mengambil pembahasan mengenai bahasa pemrograman C.
Komputer digital yang dapat diprogram pertama kali dibuat pada tahun 1930-an. Maksud dari "komputer digital" di sini adalah bahwa komputer-komputer tersebut bekerja dengan menggunakan angka-angka diskrit (yang memiliki batasan yang jelas), seperti halnya 0, 1, nilai π (3.14159) dan nilai-nilai angka lainnya. Sementara itu, maksud dari "komputer yang dapat diprogram" adalah komputer dapat melakukan operasi-operasi matematika dengan berdasarkan instruksi-instruksi yang disebut dengan program. Untuk beberapa tahun semenjak itu, program-program komputer ditulis di atas kertas yang dilubangi (disebut sebagai punched-card) atau medium-medium lainnya. Akhirnya, perangkat fisik komputer pun disebut sebagai perangkat keras (hardware), sementara instruksi-instruksi yang ditulis di atas punched card atau medium lainnya dikenal dengan perangkat lunak (software). Dinamai "perangkat lunak", karena memang memiliki sifat mudah diubah. Kita tidak harus membangun komputer secara keseluruhan untuk melakukan jenis perhitungan yang berbeda. Sementara itu, perangkat keras didesain untuk melakukan beberapa jenis operasi aritmetika dan logika. Operasi mana yang dapat dilakukan oleh perangkat keras dan bagaimana urutan operasi tersebut, diatur oleh kode-kode program. Pada saat program dijalankan, komputer juga disebut sedang "mengeksekusi program", yakni saat komputer membaca kode dan melakukan instruksi yang disuruhkan kepadanya.
Untuk dekade-dekade awal perkembangan komputer digital, hubungan antara perangkat keras dan perangkat lunak sangatlah erat. Setiap mesin memiliki instruksinya sendiri-sendiri yang kadang tidak cocok dengan mesin lainnya. Untuk mentransfer sebuah program dari satu mesin ke mesin lainnya yang lebih baru dan tentunya lebih cepat, program tersebut harus ditulis ulang dengan semua kode-kodenya yang baru. Nah, kode-kode yang hanya dimiliki oleh mesin tertentu ini dinamakan dengan kode mesin (machine code) atau bahasa mesin (machine language). Untuk lebih cepat mengingat instruksi-instruksi dalam kode mesin, para desainer pun kemudian membentuk sebuah cara dengan menyamakannya dengan sebuah kata tertentu (umumnya berupa singkatan dalam bahasa Inggris), yang kemudian berevolusi menjadi bahasa rakitan atau assembly language.
Bahasa pemrograman C merupakan salah satu bahasa pemrograman komputer yang bisa dikatakan mudah untuk dipelajari dan mudah untuk dipahami karena bahasanya merupakan bahasa tingkat tinggi yang dimengerti oleh manusia. Bahasa C dibuat pada tahun 1972 oleh Dennis Ritchie.Bahasa C++ dibuat oleh Bjarne Stroustrup di AT dan T Bell Laboratorium pada tahun 1980 yang merupakan pengembangan dari bahasa C. Pada awalnya bahasa ini disebut dengan C With Classes, sedangkan menggunakan nama C++ dimulai sejak 1983, yang diusulkan oleh Rick Mascitti.Bahasa C dikembangkan dari bahasa BPCL (Basic Combined Programming Language ) dan bahasa B. Bahasa BPCL di kembangkan oleh Martin Richard pada tahun 1967 sebagai bahasa system operasi dan compiler. Ken Thompson pada tahun 1970 telah merancang bahasa B dengan memasukkan feature BPCL. Bahasa B dirancang untuk membuat system operasi UNIX/LINUX untuk computer DEC PDP-7 pada Bell Laboratories.
Pada tahun 1978 Dennis Ritchie dan Brian W. Kerninghan mempublikasikan bahasa C melalui buku "The C Programming Language". Buku ini diterbitkan oleh Prentice Hall dan pada saat ini telah di terjemahkan dalam berbagai bahasa di dunia. Dan buku ini juga yang menjadikan legenda dan sejarah bagi bahasa C hingga di kenal dengan sebutan K&R C (K=Kerninghan | R=Ritchie).Seiring pesatnya perkembangan bahasa C, maka banyak vendor dan software developer mengembangkan bahasa C menurut versi mereka masing-masing. hal ini telah memicu ANSI (American National Standards Institute) pada tahun 1983 untuk membentuk komite teknis yang di sebut X3J11 untuk bekerja pada standard bahasa C yang bertujuan untuk membuat definisi standar bahasa C yang lebih modern dan komprehensif, dengan memperbaiki syntax dan grammar bahasa C. Pada akhir 1989 komite telah menyetujui standard ANSI untuk bahasa C yang kemudian terkenal dengan sebutan ANSI C.
Bahasa C termasuk high-level programming language. Pada kenyataannya bahasa C adalah salah satu bahasa yang paling populer untuk keperluan umum. Dikatakan high-level programming language karena kedekatannya dengan bahasa manusia. Semakin dekat dengan bahasa manusia, maka semakin tinggi bahasa tersebut. Namun, membawa pengaruh semakin berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa mesin. Tapi tidak sedikit yang mengatakan bahasa C adalah medium-level programming language karena bahasa C juga sanggup berinteraksi langsung dengan mesin. Lebih tepatnya bahasa C berada diantara High-level dan Low-level. Low-level language adalah bahasa mesin (contoh : assembler),
Dalam beberapa literatur, bahasa C digolongkan sebagai bahasa tingkat menengah (medium level language). Penggolongan ini bukan berarti bahasa C kurang ampuh atau lebih sulit dibandingkan dengan bahasa tingkat tinggi (high level language - seperti Pascal, Basic, Fortran, Java, dan lain-lain), namun untuk menegaskan bahwa bahasa C bukanlah bahasa yang berorientasi pada pada mesin yang merupakan ciri dari bahasa tingkat rendah (low level language). Pada kenyataannya, bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah, yaitu kemudahan dalam membuat program yang ditawarkan pada bahasa tingkat tinggi dan kecepatan eksekusi dari bahasa tingkat rendah. bahasa yang sanggup berinteraksi langsung dengan mesin.Bahasa C mempunyai 32 keywords yang telah di tetapkan oleh ANSI. Ke 32 keywords itu adalah : auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while.Bahasa C mempunyai kemampuan lebih dibanding dengan bahasa pemrograman.
Keuntungan pertama dari menggunakan bahasa C adalah dari segi portabilitasnya (portable). Program C yang kita tulis untuk satu platform bisa kita gunakan pada platformlain, dengan atau tanpa perubahan sedikitpun. Ini terwujud karena adanya standarisasi ANSI untuk C.
Keuntungan kedua dari menggunakan bahasa C adalah bahasa pemrograman yang fleksibel. Dengan menguasai bahasa C kita bisa menulis dan mengembangkan berbagai jenis program mulai dari operating system, word processor, graphic processor, ataupun compiler untuk satu bahasa pemrograman yang lain.
Keuntungan ketiga adalah reuse : bahasa pemrograman yang dapat di gunakan beberapa kali dalam program atau aplikasi lain. Di karenakan banyak bahasa-bahasa yang lain dibuat dengan menggunakan bahasa C, maka bahasa C cocok untuk di jadikan bahasa pemula untuk belajar programming. Seperti halnya bahasa PERL yang sangat popular di kalangan World Wide Web (WWW) juga banyak mengambil fitur dari bahasa C. contoh lain adalah C++ yang di perluasan dari bahasa C. Belajar JAVA pun akan sangat mudah jika anda mengetahui bahasa C.
Perbedaan Antara Bahasa pemrograman C dan C++ meskipun bahasa-bahasa tersebut menggunakan sintax yang sama tetapi mereka memiliki perbedaan, C merupakan bahasa pemrograman prosedural, dimana penyelesaian suatu masalah dilakukan dengan membagi-bagi masalah tersebut kedalam su-submasalah yang lebih kecil, Selain itu, C++ merupakan bahasa pemrograman yang memiliki sifat Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bahasa mesin. Oleh karena itu , jika suatu program ditulis dalam bahasa tingkat tinggi, maka program tersebut harus diproses dahulu sebelum bisa dijalankan dengan komputer.Proses untuk untuk mengubah dari bahasa tingkat tinggi ke bahasa tingkat rendah dalam bahasa pemrograman ada 2 tipe yaitu intrepenter dan compiler. Bahasa pemrograman seperti C dan C++ merupakan contoh dari tipe compiler.
DASAR TEORI
FOR DO-WHILE dan WHILE dalam Bahasa C digunakan untuk membuat perulangan proses dalam sebuah program. Perulangan proses atau yang lazim disebut loop dibutuhkan untuk membuat penulisan kode program lebih efisien. Misalnya kita akan mengulang sebuah tampilan sebanyak seratus kali maka sangat tidak efisien jika harus menulis kode yang sama sebanyak seratus kali. Dengan menggunakan logika perulangan proses atau loop cukup beberapa baris kode program saja. Pada bahasa C dikenal tiga buah perulangan proses yaitu WHILE, DO WHILE dan FOR. Kemudian untuk keluar dari perulangan proses digunakan beberapa pernyataan program seperti BREAK, GOTO dan CONTINUE. Berikut ini pembahasan mengenai masing-masing perulangan proses dalam bahasa C tersebut.
Perulangan FOR
Pada perulangan FOR, inisialisasi variabel, syarat dan operasi bilangan ditulis dalam satu kelompok dan terpisah dari statemen program yang akan dijalankan. Statemen program akan dijalankan berulang selama kondisi syarat masih terpenuhi atau bernilai benar. Perulangan FOR dilakukan untuk meringkas penulisan perulangan menggunakan WHILE bilamana telah diketahui atau ditentukan jumlah perulangannnya.
Cara Penulisan FOR dalam bahasa C
for (nilai awal; tes kondisi nilai; operasi perubahan nilai)
{
kode yang akan dijalankan jika kondisi bernilai benar;
}
Contoh penggunaan FOR dalam bahasa C
#include <stdio.h>
int main() {
int angka;
for (angka = 0; angka <= 10; angka++) {
printf("%d\n", angka);
}
return 0;
}
Pada program tampak perulangan FOR mengacu pada perubahan nilai variabel angka. Inisialisasi nilai awal untuk variabel angka sebesar 0 lalu tes kondisi perulangan jika angka kurang dari atau sama dengan 10 dengan operasi perubahan nilai berupa increnet angka dengan perintah angka++. Dengan demikian jika program dijalankan akan tampil angka 1 sampai 10.
Perulangan DO-WHILE
Pada perulangan menggunakan DO WHILE, statemen program akan dijalankan secara berulang selama kondisi syarat pada WHILE masih terpenuhi atau bernilai benar. Perulangan akan berhenti jika kondisi syarat pada WHILE bernilai salah. Pada perulangan DO WHILE, statemen program akan dijalankan setidaknya sekali sebelum mengecek kondisi syarat pada WHILE.
Cara penulisan DO-WHILE dalam bahasa C
do {
kode yang akan dijalankan jika kondisi bernilai benar;
} while (kondisi);
Contoh penggunaan DO...WHILE dalam bahasa C
#include <stdio.h>
int main ()
{
int angka = 0;
do {
printf("%d\n", angka);
angka ++;
} while(angka <= 10);
return 0;
}
Pertama kali dilakukan deklarasi variabel angka sekaligus diberi nilai 0 melalui perintah angka = 0. Kemudian perintah printf untuk menampilkan nilai angka lalu diikuti dengan perintah increment angka (angka++).
Selanjutnya dicek kondisi syarat pada WHILE, apakah nilai angka lebih kecil atau sama dengan 10. Jika ya maka akan diulang proses diatas sampai kondisi pada WHILE tercapai.Jika dijalankan program diatas akan menampilkan angka 0 sampai 10 secara vertikal, karena ada karakter \n yang berarti ganti baris baru.
Perulangan WHILE
Pada perulangan menggunakan WHILE, statemen program juga akan dijalankan secara berulang selama kondisi syarat pada WHILE masih bernilai benar. Perulangan akan berhenti jika syarat pada WHILE bernilai salah.
Cara penulisan WHILE dalam bahasa C
while (kondisi) {
kode yang akan dijalankan jika kondisi bernilai benar;
};
Contoh penggunaan WHILE dalam bahasa C
#include <stdio.h>
int main ()
{
int angka = 0;
while(angka<=10) {
printf("%d\n", angka);
angka ++;
};
return 0;
}
Pertama kali dilakukan inisialisasi variabel angka sekaligus diberi nilai 0 (angka = 0). Kemudian dilakukan pengecekan terhadap nilai angka apakah lebih kecil atau sama dengan 10. Jika benar maka dijalankan perintah printf untuk menampilkan nilai angka lalu diikuti dengan perintah increment angka (angka++).Selanjutnya dilakukan pengecekan kembali kondisi syarat pada while, apakah nilai angka masih lebih kecil atau sama dengan 10. Jika ya maka akan diulang proses diatas sampai kondisi pada while terca
PENDAHULUAN
Looping atau perulangan merupakan sebuah struktur perintah yang sering digunakan pada sebuah aplikasi atau program. Perulangan juga sangat berguna pada program karena dapat kita pakai dalam struktur-struktur rumit yang besar yang memiliki kumpulan algoritma yang kompleks.Struktur looping secara garis besar memiliki beberapa statement dan perintah yang digunakan dalam membuat sebuah program.
Hampir setiap program mutlak memerlukan suatu perulangan dan percabangan. Tujuan perulangan disini adalah untuk mengulang statement berulang kali sesuai jumlah yang ditentukan pemakai. Program perulangan terbagi atas beberapa bagian yang digunakan sesuai dengan kebutuhan. Setiap perulangan akan memberikan output sesuai dengan algoritma yang dikehendaki.Loop atau perulangan dalam C dapat dilakukan dengan 3 teknik:
Perulangan dengan for
for (inisialisasi ekspresi; kondisi loop; ekspresi penambahan){ // pernyataan }Perulangan dengan teknik ini dikontrol oleh tiga bagian yang ada dalam tanda kurung dan masing-masing bagian ini dipisahkan oleh titik-koma. Pada bagian pertama(inisialisasi ekspresi), sebuah variabel akan di deklarasikan sebagai sebuah titik awal dari perulangan, biasanya variable ini mempunyai tipe data integer atau float. Sementara pada bagian kedua disinilah perulangan akan diperiksa apakah masih memenuhi syarat atau tidak, jika masih memenuhi syarat maka statement dibawahnya akan di eksekusi. Sedangkan bagian ketiga adalah bagian dimana jika bagian kedua masih memenuhi syarat maka nilai variabel akan ditambahkan sesuai dengan syarat yang dituliskan. Bagian ketiga ini secara otomatis akan tidak dibaca oleh program jika kondisi pada bagian ke-dua sudah tidak lagi memenuhi syarat, dan perulangan pun menjadi terhenti. Untuk lebih jelasnya perhatikan potongan contoh berikut ini:
for (int i=0; i <=1000; i++)
{ System.out.println(“Saya manusia”); }
Jika digambarkan jalannya program akan seperti ini: variable i akan di inisialisasi pertama kali dan langsung diberi nilai 0, kemudian variable i tersebut akan diperiksa pada bagian kedua, apakah i lebih kecil atau sama dengan 1000, jika nilai I pertama kali adalah 0 maka pernyataan tersebut bernilai benar (true), sehingga bagian ketiga pun di eksekusi dan kali ini nilai i menjadi sama dengan 1. setelah nilai i bertambah menjadi 1 maka langkah selanjutnya program akan mengeksekusi baris pernyataan yang ada didalam tanda kurung, program akan menuliskan ke layar “Saya Ganteng”. Setelah itu kursor baris akan kembali lagi keatas ke posisi for lagi, namun inisialisasi variabel dilewatkan dan langsung ke bagian kedua yaitu memeriksa apakah i <=1000, dan jika masih memenuhi syarat maka bagian ketiga dan baris statement pun di eksekusi kembali, demikian seterusnya hinga nilai variabel i sudah menjadi sama dengan 1001. Jika nilai variabel i sudah tidak lagi memenuhi syarat bagian kedua maka program akan tidak mengeksekusi bagian ketiga dan baris statement, dan pada saat ini pula loop atau perulangan akan berhenti. Jika digambarkan dalam diagram maka seperti inilah perulangan dengan for itu tergambar
Perulangan dengan while.
Perulangan dengan menggunakan teknik while ini sebenarnya adalah suatu bentuk perulangan yang memodifikasi teknik pencabangan (branching) secara kasar. Pernyataan yang ada didalam blok perulangan akan dieksekusi dengan cara memeriksa ekspresi yang ada, sepanjang ekspresi bernilai true maka statement akan terus di eksekusi. Variabel sebagai kontrol perulangan bentuk ini diinisialisai di luar blok perulangan ini. Dan penambahan atau increment nilai variabel berada didalam blok perulangan ini. Kelebihan perulangan dengan bentuk ini adalah variabel yang dideklarasikan tidak hanya bertipe integer atau float saja namun bisa juga bertipe boolean atau string. Perhatikan contoh program perulangan dengan menggunakan bentuk ini yang memakai variabel bertipe integer sebagai kontrol perulangannya:
int i=0;
while(i<=10000)
{ System.out.println(“Saya manusia”);
i++; }
Sepanjang variable i bernilai lebih kecil sama dengan 1000 maka pernyataan mencetak ke layar “Saya Ganteng” akan tetap terus di eksekusi. Yang harus kita perhatikan jika kita menggunakan perulangan dengan teknik ini adalah bahwa incremental variabel i harus ada, sebab jika tidak yang terjadi adalah perulangan yang tidak pernah akan berhenti atau Invinitive Loop.
Kemudian mari kita lihat potongan kode yang variabel kontrolnya tidak menggunakan integer atau float, berikut ini:
boolean ctrl =false; int i = 0;
while(ctrl==false)
{ System.out.println(“Saya Ganteng”);
i++;
if (i == 1000){ ctrl = true; } }
Perhatikan pada potongan kode program tersebut. Pernyataan mencetak kelayar “Saya Ganteng” akan terus dieksekusi selama variabel kontrol perulangan tersebut masih bernilai false, sementara trigger untuk membuat variable bernilai true adalah nilai variable i yang harus sampai dengan 1000.
Jika digambarkan dalam diagram maka sketsa perulangan dengan bentuk ini seperti gambar berikut
Perulangan dengan do while
Perulangan dengan bentuk seperti ini adalah perulangan dengan membalikkan logika perulangan dengan teknik while. Dalam perulangan dengan bentuk ini, pernyataan dieksekusi dulu, baru kemudian kondisi variabel kontrol perulangannya diperiksa apakah memenuhi syarat atau tidak. Biar lebih mudah memahaminya mari kita lihat potongan code program berikut ini:
int i=0;
do
{ System.out.println(“Saya manusia”);
i++;
}while(i<=10000);
Variabel kontrol perulangan tetap diinisialisasi diluar blok perulangan dan harus tetap bersifat incremental/bertambah dan letak incrementalnya ada dalam blok perulangan. Secara logika maka diagram yang bisa menggambarkan proses perulangan tersebut adalah:
Adapun macam-macam Fungsi looping yang umumnya digunakan :
For
Gunanya untuk mengulang satu pernyataan sebanyak yang kita mau.
Script for(int i=0;i<=9;i++) { statement}
Pengulangan akan dilakukan dari 0-9, berarti ada 10x pengulangan.
Arti variable i=0 adalah nilai awal dari i adalah 0.
Arti i<=9 adalah maksimal pengulangan yang dilakukan adalah sampai 9.
Arti i++ adalah menambahkan nilai setiap pengulangan yang sudah di eksekusi, contoh nya jika kita sudah memasukkan nilai di i 0, maka akan langsung lanjut ke i [1] dan seterusnya hingga i [9].
While
Hampir sama dengan For, namun dalam while sistemnya hampir sama juga dengan If. Berikut contoh scriptnya :
Int i=1;
While(i<=4)
{
Cout<<;
I++;
}
Sebelum penggunaan while, nilai integer harus di deklarasikan terlebih dahulu (int i=1).
Penggunaannya hampir sama dengan if, tetapi di akhir statement harus ada tanda variable++ (i++) untuk menyatakan pengulangan hingga 4x
Do While
Merupakan statement pengulangan yang biasa digunakan untuk membuat menu dalam program. Secara umum proses do while sama dengan for ataupun while. Berikut contohnya :
do
{
Clrscr();
Cout<<”1. Jual“;
Cout<<”2. Beli “;
int i;
Cin>>i;
}while(i!=3);
Dalam statement di atas, ada 2 menu yang kita buat, yaitu menu jual dan beli. Dalam hal ini jika kita tidak menginput 3 (while(i!=3)) maka pengulangan terus berlangsung
Komentar
Posting Komentar