Sabtu, 04 Maret 2023

Belajar Bahasa C untuk pemula | Part1 (fitur dan pemrograman c yang pertama)

Jika Anda ingat dalam pelajaran kami sebelumnya yaitu Pengantar Pemrograman dan Struktur Data, kami telah berbicara tentang fitur paling penting dari pemrograman C Yaitu Portabilitas dan lebih sedikit baris kode. 

Mari jelajahi lebih banyak fitur pemrograman C.
Pernahkah Anda bertanya-tanya, mengapa perusahaan seperti Google misalnya, memiliki departemen terpisah untuk melaksanakan tugas yang berbeda untuk pekerjaan yang sama?


Misalkan, jika pekerjaannya adalah mengembangkan perangkat lunak, maka mungkin ada departemen terpisah untuk analisis kebutuhan, departemen terpisah untuk fase perancangan, atau mungkin departemen terpisah untuk fase pengujian dll.


Menurut Anda, apa perlunya membuat begitu banyak departemen untuk pengembangan satu perangkat lunak?
Pikirkan tentang itu.
Suatu hari, saya mengetik di kotak pencarian Google tentang kebiasaan belajar yang sangat efektif.
Dan salah satu hasil yang muncul adalah ini.


Jangan mencoba menjejalkan semua pelajaran Anda ke dalam satu sesi.
Siswa yang sukses biasanya membagi pekerjaan mereka dalam waktu yang lebih singkat dan jarang mencoba menjejalkan semua pembelajaran mereka menjadi satu atau dua sesi.
Itulah yang ingin saya tekankan.
Kedua contoh ini memiliki kesamaan. Agar berhasil dalam beberapa tugas yang ingin kita selesaikan, ide terbaiknya adalah membagi tugas menjadi tugas yang lebih kecil dan kemudian mengerjakannya secara terpisah. Gagasan serupa diadopsi oleh penemu bahasa -C.
Dia mendefinisikan bahasa sebagai bahasa prosedural.


yang berarti membagi program raksasa Anda menjadi program yang jauh lebih kecil yang disebut prosedur atau fungsi sehingga kami dapat dengan mudah bekerja dengannya.
Jadi, semua yang ada di C tidak lain adalah serangkaian prosedur atau fungsi dan ini adalah fitur utama dari bahasa C.
Inilah perbedaan antara bahasa tingkat tinggi dan bahasa tingkat rendah.
Di sini, tinggi atau rendah hanya menunjuk ke Derajat Abstraksi.
Abstraksi berarti menyembunyikan detail level sistem.
Oleh karena itu, tingkat abstraksi yang tinggi berarti lebih sedikit upaya untuk pengguna atau Anda dapat mengatakan lebih ramah pengguna.
Karena kita tidak perlu khawatir tentang apa yang terjadi di dalam.
Contohnya bisa berupa editor teks sederhana.
Anda hanya mengetik teks dan setelah selesai menekan tombol simpan, bahkan tanpa khawatir tentang bagaimana cara menyimpannya? , di mana itu disimpan? dll.
Ini disebut tingkat abstraksi yang lebih tinggi.
Di sisi lain, tingkat abstraksi yang lebih rendah berarti lebih banyak upaya bagi pengguna.
Dalam hal ini Anda harus mengetahui setiap detail internal tentang komputer.
Contoh bahasa pemrograman tingkat tinggi adalah COBOL, FORTRAN, C++, LIPS, Pascal, Prolog dll.
Dan bahasa tingkat rendah adalah bahasa Assembly.


Ada satu tingkat lagi yang disebut tingkat menengah yang tidak tinggi maupun rendah.
Bahasa C disebut bahasa tingkat menengah. karena memang membuat pemrograman sederhana bagi manusia.


Tapi kemudian, di sisi lain itu juga memungkinkan kita untuk mengakses fitur level sistem seperti akses langsung ke memori melalui pointer, manipulasi Bit menggunakan operator bitwise, Menulis kode perakitan dalam kode C.


Karena fitur unik C ini, C menjadi bahasa yang populer atau Anda dapat mengatakan pilihan populer untuk mengembangkan aplikasi tingkat sistem seperti kernel, driver perangkat, sistem operasi, dll. Dan berbagai aplikasi perangkat lunak seperti game, editor, dan aplikasi kaya grafis lainnya.
Hal-hal ini disebut fitur tingkat sistem.


Sekarang, C menawarkan beragam fungsi bawaan, pustaka standar, dan file header.
Hal ini membuat pemrograman berjalan mulus bagi pemrogram dan itu jelas merupakan keuntungan besar.


Oke teman-teman, setelah perbincangan panjang tentang fitur pemrograman C yang kita miliki sampai sekarang
Mari kita lihat contoh untuk memberi Anda gambaran tentang bagaimana kode C terlihat.
Dan kami juga akan mengeksplorasi apa arti setiap baris yang kami tulis dalam kode.
Mari kita coba membuat sesi lebih dinamis.
Saya akan merekomendasikan Anda untuk mengunduh IDE Code Block atau DEVC++ untuk mengeksekusi kode Anda sendiri.
Karena seperti yang sudah saya katakan, pemrograman dan struktur data menjadi lebih menarik ketika tangan Anda sedikit kotor.
Code Blocks atau DEVC++ adalah lingkungan pengembangan terintegrasi yang membantu Anda membuat program C secara efisien.
Anda harus mengikuti tautan dalam uraian di bawah ini untuk mengetahui lebih lanjut tentang cara memasang IDE di komputer Anda.

Cara instalasi DevC++ Silahkan klik disini
Sekarang kita akan mengeksekusi kode C yang sangat mendasar dalam DEVC++.
Dan saya akan menjelaskan kepada Anda apa yang digambarkan oleh setiap baris dalam program ini.
Di baris pertama, saya telah menulis komentar menggunakan garis miring ganda.


Compiler biasanya mengabaikan komentar.
Mereka dimaksudkan untuk pengguna atau Anda dapat mengatakan pengembang (Developer) untuk pemahaman mereka yang lebih baik.
Seperti yang sudah saya tulis di atas bahwa program ini akan mencetak keluaran(output) People Power Academy ke jendela konsol.
Jendela konsol hanyalah layar hitam. Dan Anda akan melihat sebentar lagi.
Selanjutnya saya telah menulis #include
Mari kita coba mengerti apa artinya.
#include - perintah yang disebut ini ditulis di sini disebut sebagai pre-prosesor direktif.
Nah, pertanyaan umum yang langsung muncul adalah apa itu pre-processor?
Pekerjaan pre-processor adalah mengganti konten tekstual yang sebenarnya diikuti oleh simbol hash
( # ) dengan konten sebenarnya. Anda baru saja menulis #include dalam kode Anda.
Tapi pre-prosesor sebenarnya menggantikan baris ini dengan file stdio.h yang sebenarnya.
Sebenarnya, sebelum proses kompilasi dimulai, pre-processor melakukan tugasnya dengan mengganti teks-teks yang diikuti oleh simbol hash pada kode.
Seperti namanya sendiri pre-processor yang berarti pemrosesan dilakukan sebelum kompilasi sebenarnya Sebelumnya, yang Anda miliki adalah kode sumbernya.
Kode yang saya tulis disebut sebagai kode sumber yang sekarang diubah menjadi kode op yang dikembangkan atau Anda dapat mengatakan kode sumber yang dikembangkan karena pra-prosesor kami telah mengganti pernyataan yang diikuti oleh simbol hash dengan konten aktual dari file.
Ini jelas meningkatkan ukuran konten sebenarnya.
Dan karena itu disebut Kode sumber yang diperluas atau dikembangkan.

 


Setelah itu mengirimkan kode, ke kompiler dan kompiler melakukan pemrosesan normal mengubah kode sumber menjadi kode mesin.
Oleh karena itu #include
cukup meminta prosesor untuk menyertakan file stdio.h.
Sekarang apa artinya stdio.h?
Stdio.h adalah file output input standar,
dengan ekstensi dot h.
File ini, dengan ekstensi .h disebut file header.
File header biasanya terdiri dari prototipe atau bisa dikatakan deklarasi fungsi yang kita butuhkan. Misalnya- stdio.h terdiri dari deklarasi fungsi seperti printf dan scanf.


fungsi printf digunakan untuk mencetak konten, apa pun yang ada di dalam tanda kurung dan scanf digunakan untuk mengambil input pengguna saat dijalankan.
Termasuk file header itu penting.
Karena Anda perlu memberi tahu fungsi mana yang akan Anda gunakan dalam program Anda.
Selanjutnya saya telah menulis ekspresi yang tampak seperti terhubung int main diikuti dengan tanda kurung kurawal.

int main( )

Dan di dalamnya Anda memiliki beberapa pernyataan tertulis.
Sebelum menjelaskan kepada Anda apa arti sebenarnya, izinkan saya memberi Anda gambaran singkat tentang apa itu fungsi dan variabel.
Kode apa pun yang Anda tulis di C selalu terdiri dari dua elemen penting ini.
Fungsi C terdiri dari sekelompok pernyataan yang dimaksudkan untuk memecahkan masalah tertentu.
Di sisi lain, variabel adalah entitas yang digunakan untuk menyimpan nilai yang digunakan selama perhitungan.
Dalam contoh kita, kita memiliki fungsi bernama main Dan pernyataan dari main terlampir di dalam kurung kurawal ini.
Di sini maksud dari fungsi utama (main) adalah mencetak People power Academy sebagai output.
Catat satu hal.
Anda mungkin memiliki beberapa fungsi di dalam program Anda, tetapi titik masuk dari mana perhitungan sebenarnya dimulai adalah fungsi utama.
Kompiler benar-benar menantikan fungsi khusus ini dan ini adalah titik awal dari program Anda.
Sekarang sintaks dasar untuk mendefinisikan suatu fungsi terlihat seperti ini.


Anda memiliki tipe pengembalian (Return_Type).
Maka Anda memiliki nama fungsi (name_of_function).
Kemudian parameter_type name_of_parameter
parameter_type name_of_parameter
terlampir dalam tanda kurung ini ( ).
Ini disebut daftar parameter.
Dan di dalam Anda dapat mengatakan Anda memiliki beberapa pernyataan yang diikuti oleh kurung kurawal ini { }.
Di sini, di contoh kami, tipe kembalian dari fungsi utama ini adalah int (return type).
int adalah nama pendek dari bilangan bulat.
Artinya, fungsi Anda setelah menyelesaikan semua pernyataannya akan mengembalikan nilai integer.
Anda dapat melihat bahwa pernyataan terakhir yang saya tulis di sini adalah, kembalikan 0
Ini menunjukkan bahwa jika pernyataan Anda berhasil menyelesaikan eksekusi, maka kembalikan bilangan bulat 0 dan keluar dari fungsi.
Lain jika ada yang tidak beres, itu akan mengembalikan bilangan bulat lain selain 0. Saya akan menjelaskan kepada Anda secara rinci tentang fungsinya dalam kuliah yang akan datang. Untuk saat ini, ini cukup untuk diketahui.
Dalam sintaks fungsi, setelah tipe pengembalian Anda harus menentukan nama fungsi Itu bisa nama pilihan Anda.
Tapi menurut saya lebih baik memilih nama yang akan memberi Anda gambaran yang jelas tentang apa fungsi Anda sebenarnya.
Seperti jika suatu fungsi dimaksudkan untuk melakukan penambahan, maka nama add terlihat lebih masuk akal. Ini meningkatkan keterbacaan.
Tetapi tidak ada aturan yang ketat.
Anda dapat memilih nama pilihan Anda.
Fungsi utama sudah ditentukan sebelumnya.
OKE. Anda tidak dapat mengubah nama itu.
main sudah ditentukan sebelumnya.
Setelah nama fungsi, Anda dapat melihat beberapa daftar parameter yang terlampir di dalam kurung bulat.
Ini disebut input ke fungsi Anda.
Dalam contoh kita, fungsi utama tidak memiliki parameter apapun.
Sebagian besar didefinisikan seperti itu. Tetapi jika Anda mau, Anda dapat menambahkan parameter arcc dan arcv yang nilainya disediakan saat dijalankan menggunakan argumen baris perintah.
Anda tidak perlu khawatir tentang hal itu sekarang.
kita akan membicarakannya secara rinci nanti.
Sekarang, mari kita ke konten utama di sini.
printf("People power Academy"); dan mengembalikan 0;
Apa artinya itu sebenarnya?
Di sini, kami memiliki fungsi bernama printf yang memiliki satu parameter yang ditutup dengan tanda kutip.
Jika Anda melihat dengan hati-hati, saya belum memasukkan tanda kurung kurawal setelah fungsi printf ini.
Saya hanya meletakkan titik koma di sini.
Alasan di balik ini adalah bahwa fungsi ini telah ditentukan sebelumnya di suatu tempat di pustaka standar C yang merupakan pustaka yang berisi definisi dari banyak fungsi seperti printf.
Keuntungan dari perpustakaan semacam itu adalah kita tidak perlu menuliskan kode fungsi lagi dan lagi. Sebaliknya, kami cukup memanggil mereka kapan pun dibutuhkan. Jadi kita hanya perlu memanggil fungsi alih-alih mendefinisikan
sekali lagi. Catatan- Dibandingkan dengan definisi fungsi, semuanya apa adanya ketika Anda memanggil suatu fungsi.
Tapi di akhir braket penutup ( )Anda memiliki titik koma.
Dan tidak akan memiliki tanda kurung kurawal setelah itu.
Menggunakan fungsi printf, Anda akan dapat mencetak keluaran People Power Academy di jendela konsol.
OKE. mari kita jalankan kodenya.
Anda cukup mengklik tombol Bangun (build) dan Jalankan (run) di sini untuk mengeksekusi kode Anda.
Jika Anda menulis kode untuk pertama kali, maka Anda harus menggunakan Build and Run ini
Mari kita klik di atasnya.


Di sini Anda dapat melihat hasilnya.
People Power Akademi  dicetak.
Benar? 

Dengan proses informasi dikembalikan 0.


Yang berarti program Anda selesai dengan sukses.
Catatan- Di sini karena kami pertama kali menjalankan kode, maka Bangun dan Jalankan keduanya diperlukan.
Build sebenarnya meminta kompiler untuk membuat kode mesin untuk kode sumber yang telah kita tulis.
Dan Jalankan cukup jalankan kode dan hasilkan hasilnya.
Tombol Jalankan tersedia di sini.
Jika Anda mengeksekusi untuk kedua kalinya, Anda cukup menggunakan tombol jalankan ini.
Jika Anda tidak melakukan perubahan apa pun pada kode, maka mengklik tombol jalankan adalah hal yang masuk akal.
Jika Anda melakukan perubahan, maka Anda harus membangunnya lagi dan Jalankan.
Ada satu hal penting lagi yang ingin saya sebutkan.
Seperti yang telah kita pelajari bahwa kita menulis #include untuk menyertakan file header output input standar.
Dan saya memberi tahu Anda file header ini berisi prototipe atau deklarasi fungsi seperti printf.
Dan saya juga memberi tahu Anda bahwa pustaka standar C terdiri dari definisi sebenarnya dari fungsi-fungsi seperti printf.
Lalu satu pertanyaan penting, yang ingin saya sampaikan adalah Mengapa kita memerlukan file yang berbeda, satu untuk menyimpan prototipe fungsi dan lainnya untuk menyimpan kode yang sebenarnya?
Alasan di balik itu adalah file header stdio.h hanya terdiri dari deklarasi fungsi.
Itu memberi tahu kompiler Anda fungsi mana yang akan Anda gunakan dalam program Anda.
Dan prosesor awal Anda hanya menggabungkan deklarasi tersebut dengan kode sumber yang sebenarnya
dan menghasilkan kode sumber yang diperluas.
Di sisi lain, pustaka standar C terdiri dari definisi fungsi yang sebenarnya.
Sekarang, ada sebuah program bernama linker yang benar-benar memetakan prototipe yang disebutkan oleh pre-processor ke kode aktual yang ditulis dalam pustaka standar ini. Itu hanya memetakan dan tidak menyalin konten seperti pra-prosesor.
Proses penautan yang terpisah ini membuat perhitungan program sedikit lebih cepat.
Bayangkan jika pra-prosesor melakukan pekerjaan mendapatkan semua definisi sebenarnya dari fungsi ke kode sumber.
Betapa sibuknya tugas itu dan itu juga meningkatkan ukuran kode secara eksponensial.
Karena kali ini Anda menambahkan definisi aktual dan bukan prototipe.
Dan dengan demikian kompiler harus melakukan banyak pekerjaan untuk mengkompilasi program.
Dan karena itu kecepatan kompilasi turun drastis.
Oleh karena itu memelihara file header dan pustaka standar secara terpisah sangat penting.



Baiklah teman-teman, kita akhiri sesi ini sekarang Tapi sebelum Anda pergi, inilah latihan singkat untuk Anda.


Task 1. Instal code block atau DEVC++ dan coba jalankan sendiri kode yang telah kami tulis.
Task 2. Buat perubahan ini pada kode dan lihat apa yang terjadi.
Harap lakukan perubahan satu per satu dan jangan sekaligus.
Untuk benar-benar mengetahui apa yang terjadi pada kode tersebut dan kita akan dapat melihat kesalahannya dengan jelas.
1. Komentari #include<stdio.h>
Hal kedua, 

2. hapus titik koma setelah printf.
3. Hapus tipe kembalian (return type) int dari main
4. Alih-alih 0 sebagai gantinya, tulis nilai bilangan bulat apa pun yang Anda inginkan.
5. Ganti 0 dengan beberapa karakter.
Karakter biasanya ditulis dengan tanda kutip tunggal Ganti 0 dengan beberapa karakter. Karakter biasanya ditulis dengan tanda kutip tunggal Misalnya Anda dapat menulis kembali 'a'.
6. Hapus titik koma setelah return.
 

 Jalankan Tugas 1. Berikan komentar pada #include<stdio.h>

Di sini seperti yang Anda lihat.
Di bawah tab pesan bangun ini.
Jika ada kesalahan itu akan ditampilkan di sini. Seperti yang Anda lihat, build selesai 0 kesalahan, 0 peringatan, dan 0 menit 2 detik Benar?
Jadi kode Anda berhasil diselesaikan.
Silakan lihat pesan yang dihasilkan oleh kompiler dan coba pahami sendiri.

Kesalahan ditampilkan di jendela di bawah ini.


Pesan yang muncul saat memberikan komentar di #include<stdio.h> (Tugas1)

 

 


(peringatan) deklarasi implisit yang tidak kompatibel dari fungsi bawaan 'printf'.

Itu saja untuk pengantar Bahasa C.

Jalankan Tugas 2. Hapus titik koma setelah printf.


 (Error) diharapkan semi colon ( ; ) sebelum return.


3. Hapus tipe kembalian (return type) int dari main.


 int dihilangkan tidak terjadi error.

4. Alih-alih 0 sebagai gantinya, tulis nilai bilangan bulat apa pun yang Anda inginkan.


Tidak terjadi error.

5. Ganti 0 dengan beberapa karakter.
Karakter biasanya ditulis dengan tanda kutip tunggal Ganti 0 dengan beberapa karakter. Karakter biasanya ditulis dengan tanda kutip tunggal Misalnya Anda dapat menulis kembali 'a'.
 



 

Tugas 6. Hapus titik koma setelah return.


 Silakan lihat pesan yang dihasilkan oleh kompiler dan coba pahami sendiri.
Itu saja untuk materi pengantar C.

0 comments:

Posting Komentar