Halo dan selamat datang.
Saya ingin memberi Anda solusi
untuk tantangan kami dalam menghitung gaji mingguan.
Jadi saya akan memberikan demonstrasi yang bagus di sini. Memunculkan blok kode, dan mari
kita tutup proyek kita yang saat ini telah kita
buka dan buka dan buat proyek baru untuk
aplikasi ini.
Jadi saya akan membuat aplikasi konsol jadi saya akan berada di c.
Dan saya akan memberi nama ini menghitung gaji mingguan.
Jadi saya akan memiliki utama saya. c yang akan
memberi saya beberapa titik awal yang bagus.
Tetapi ada beberapa hal yang akan saya lakukan dalam solusi ini yang mungkin sedikit berbeda.
Tapi itu akan memperkenalkan Anda pada beberapa konsep.
Kita akan membicarakannya, tetapi kita akan menggunakan banyak konstanta dalam program
ini, terutama untuk tingkat pembayaran dan tarif pajak kita.
Jadi saya akan menggunakan sesuatu yang belum kita lihat yang disebut define.
Ini adalah arahan preprocessor untuk membuat konstanta.
Dan cara kita mengetahui arahan pra-prosesornya adalah kita memiliki simbol pound.
Jadi saya hanya akan mengatakan pound define. Ini adalah cara untuk membuat konstanta.
Saya akan membuat 5 konstanta untuk semua data kita dalam
program ini. Kami memiliki tingkat pembayaran yang 12. 00.
Jadi cara kerja define adalah menggunakan kata
kunci yang ditentukan diikuti setelah pound dan kemudian biasanya Anda memberikan
nama, biasanya huruf besar semua. Itu konvensi standar dan kemudian spasi dan kemudian nilainya.
Tidak ada tugas yang setara di sini. Dan ini pada dasarnya menciptakan variabel konstan.
Jadi kita akan membuat satu untuk tarif pembayaran, tarif pajak untuk 300.
Sebenarnya kami akan mengatakan tarif pajak untuk 150 atau 300 ke bawah dan itu
akan menjadi tarif pajak 0. 15.
Anda akan melihat bahwa data yang Anda tetapkan dapat berupa bilangan bulat
floating point, Anda bahkan dapat menetapkan string. Tidak masalah jenis data di sini.
Tarif pajak untuk 150
bisa 0. 20. dan saya biasanya melakukan definisi di luar main di bagian atas file.
Dan juga jangan lupa untuk menambahkan komentar Anda di bagian atas dan di seluruh kode sumber.
Dan kemudian saya akan membuat tarif pajak terakhir untuk sisanya
yaitu 0. 25.
Hal terakhir yang ingin saya lakukan adalah saya akan membuat konstanta untuk lembur saya,
hanya akan menelepon lembur dan mengatakan 40. Ini hanya akan mewakili
ketika kita ingin memeriksa lebih dari 40.
Tidak pernah merupakan ide yang baik untuk memiliki angka
ajaib di dalam variabel karena sekarang
jika ada perubahan katakanlah perubahan lembur menjadi 45, saya hanya perlu mengubahnya di satu tempat.
tepat di atas dan program saya akan bekerja sama persis.
jika saya tidak memiliki konstanta ini dan saya
menggunakan angka ajaib dalam perbandingan atau variabel saya, saya harus
mengubahnya di mana pun saya menggunakan 40.
Jadi biasakan menggunakan konstanta dan tidak menggunakan sesuatu yang disebut angka ajaib.
Saya juga suka mendeklarasikan variabel saya tepat di atas file utama.
Ini adalah variabel lokal untuk fungsi utama kami.
Jadi saya ingin memberikan komentar yang mendeklarasikan variabel.
Variabel yang saya butuhkan secara lokal Saya akan membuat bilangan bulat selama berjam-jam,
saya akan menginisialisasi ke 0.
Jam akan dimasukkan oleh pengguna, dan kemudian
saya akan membuat beberapa ganda yang akan ditampilkan sebagai output, terutama
pembayaran kotor yang akan saya inisialisasi ke 0. 0 karena itu ganda.
Dan kemudian pajak, saya juga akan menginisialisasi 0. 0 diakhiri dengan titik
koma, jangan lupa titik koma dan kemudian pembayaran bersih.
Karena ini adalah 3 output yang saya inginkan.
Jadi saya akan membuat 3 output saya di bagian atas bersama dengan jam input saya.
Hal pertama yang ingin saya lakukan adalah saya ingin mendapatkan masukan saya, jadi saya
akan memberitahu pengguna untuk memasukkan sesuatu. Saya akan
mengatakan enter, katakan silakan masukkan jumlah
jam kerja minggu ini, beri titik
dua, sedikit spasi, dan titik koma.
Lalu saya akan menggunakan fungsi scanf saya untuk mendapatkan input.
Saya hanya akan mengatakan scanf. Saya ingin membaca bilangan bulat. Jadi saya akan mengatakan persen d.
Saya akan memberi koma, dan saya akan melakukan berjam-jam dan
kemudian karena itu bukan string atau
karakter, saya harus meletakkan ampersand di depannya dan mengakhirinya dengan titik koma.
Itu akan membaca. Dan pada titik ini apa
yang harus saya lakukan adalah saya harus menguji, mengerjakan potongan kecil dan menguji terus-menerus.
jika saya terus menulis kode mencoba mengkompilasi, saya bisa mendapat masalah di mana saja,
bekerja di area kecil.
Tapi saya tahu ini berhasil. Jadi saya akan melanjutkan untuk menunjukkan bagaimana melakukan ini.
Seperti yang saya katakan, hal pertama yang akan saya lakukan adalah menghitung gaji kotor.
Dalam logika di sini, kita membutuhkan pernyataan if.
Pada dasarnya, jika jam lebih besar dari 40, kami
ingin memiliki tingkat lembur.
Jadi yang akan saya lakukan adalah saya akan mengatakan jika jamnya kurang dari atau
sama dengan 40, maka yang
harus saya lakukan adalah membuat perhitungan saya dengan sangat
mudah karena itu hanya tarif pembayaran kali jam.
Jadi kami memiliki kata kunci if kami pada baris
24, dan kami memiliki jam kerja kami.
Kami sedang melakukan perbandingan. Kami menggunakan operator relasional, kurang dari sama dengan. Jika kita kurang dari atau sama
dengan 4, kita tidak akan menggunakan tanda kurung karena kita harus menggunakan satu pernyataan.
Kami hanya akan mengatakan gaji kotor. Kami akan menetapkan
variabel yang akan sama dengan jam kali konstanta kami, tingkat pembayaran dan
hanya itu.
Sekarang jika lebih besar dari atau sama dengan 40, kami
ingin melakukan sesuatu yang lain. Jadi jika kondisi itu bernilai false, kita
ingin memiliki yang lain, dan di sinilah kita menggunakan yang lain. Yang lain akan memiliki beberapa baris
di bloknya, jadi saya akan menggunakan braket, itu akan dimulai
pada baris 27 dengan braket awal 29 dengan akhir.
Ketidakcocokan tanda kurung Anda atau tidak memiliki tanda kurung adalah kesalahan umum yang mungkin ditemukan oleh kompiler Anda.
Jadi, pastikan Anda cocok dengan tanda kurung tersebut. IDE sangat membantu karena menyoroti mereka.
Jika Anda memiliki beberapa tanda kurung, Anda selalu dapat pergi ke tanda kurung lainnya.
Jika Anda pergi ke braket bawah, itu akan menyorot memberi tahu Anda di mana braket awal berada.
Jadi pada kaset ini, jika lebih besar dari 40,
pertama , saya ingin menetapkan gaji kotor saya sama dengan 40 kali tingkat pembayaran
karena 40 jam pertama itu akan menjadi 12 dolar per jam.
Dan kemudian segala sesuatu setelah itu akan menjadi lebih.
Jadi saya akan membuat variabel lokal yang
disebut upah lembur, dan saya akan mengaturnya sama
dengan jam dikurangi 40. Jadi jika saya mengetik 40 itu akan menjadi 5 di sini.
dan kemudian setelah saya memiliki jam-jam itu saya ingin mengalikannya dari tingkat pembayaran
yaitu 12 dolar per
jam, tetapi saya ingin menambahkan 1. 5 dari itu, yang akan menjadi 18
dolar per jam, lalu
saya akhiri dengan titik koma.
pada titik ini gaji lembur saya akan menjadi 5 kali 18,
90 dolar jika saya mengetik 45 sebagai pengguna.
dan kemudian 40 jam pertama hanya akan menjadi
40 kali
12 yang kami katakan 570. jika kita melakukannya 40 kali 12 akan
menjadi 480.
Sekarang hal terakhir yang harus kita lakukan adalah menambahkan gaji kotor ke uang lembur.
Jadi saya mungkin bisa menggunakan nama yang lebih baik daripada gaji kotor karena kita belum mendapatkan gaji.
tapi saya akan menggunakan operator kecil yang
bagus, operator penugasan kami plus yang setara, yang
akan melakukan pembayaran lembur kami.
apa yang dikatakan di sini adalah gaji kotor sama dengan gaji kotor ditambah uang lembur.
tapi kami melakukannya dalam notasi steno.
Jadi sekarang kita memiliki gaji kotor, dan kita sudah selesai dengan gaji kotor.
Jadi kami akan melanjutkan dan menguji ini, mencetak gaji kotor dan memastikannya benar.
tetapi karena saya tahu ini berhasil, saya akan melanjutkan ke langkah berikutnya.
langkah selanjutnya adalah menghitung pajak.
Jadi untuk menghitung pajak, ingat, kita harus melakukan hal-hal tertentu tergantung pada berapa
banyak uang yang Anda hasilkan. Jadi kita harus melihat gaji kotor.
Jadi jika gaji kotornya kurang dari atau sama dengan 300, kita akan melakukan sesuatu.
jika gaji kotor kotor 300 dan 450, kita
akan melakukan sesuatu. dan jika lebih besar dari 450, kita akan melakukan sesuatu yang lain.
kita akan memiliki kode duplikat kecil di sini.
tidak apa-apa untuk saat ini karena kami hanya mendemonstrasikan pernyataan if.
Anda mungkin bisa menulis ini sedikit lebih bersih.
tapi yang akan saya lakukan adalah saya akan mengatakan terlebih dahulu memeriksa kondisi pertama di mana jika gaji
kotor kurang dari atau sama dengan 300. dan dalam hal ini,
sangat mudah untuk menghitung pajaknya.
pajak hanya akan menjadi pembayaran kotor kali tarif
pajak untuk 300.
tarif pajak untuk 300
ingat adalah apa pun dari 300 lainnya dikenakan pajak sebesar 15% menurut saya.
Jadi hanya itu yang harus kita lakukan jika Anda menghasilkan kurang dari atau
sama dengan 300.
Sekali lagi, hal lain yang harus Anda perhatikan di sini adalah lekukan.
setiap kali Anda memiliki blok kode, dan meskipun saya hanya memiliki satu pernyataan, saya akan meletakkan
tanda kurung di sana.
dan kemudian saya menunjukkan blok saya, membuatnya lebih mudah dibaca, jangan lupa
tentang lekukan di baris baru.
dan biasanya di sini Anda ingin memiliki ruang sebagai lawan tab, tapi itu diskusi lain.
sekarang juga bisa menjadi sesuatu yang lain.
Jadi pada baris 34 kami mengajukan pertanyaan
jika gaji kotor kurang dari atau sama dengan 300, lakukan sesuatu pada baris 36.
kami menggunakan kata kunci if, kami menempatkan kondisi ekspresi Boolean di dalam tanda kurung.
tetapi bagaimana jika tidak 300 atau kurang, maka kami ingin melakukan
sesuatu yang lain. Secara khusus, jika
gaji kotor lebih besar dari
300 dan jadi di sini saya menggunakan operator logis ampersand ampersand di mana
saya pada dasarnya mengajukan 2 pertanyaan. jika gaji kotor lebih besar dari
300 dan gaji kotor kurang dari sama dengan 450, maka saya ingin melakukan
sesuatu yang lain.
Jadi apa artinya ini jika gaji kotor saya berkisar antara 300 dan 450.
sekarang kalau antara 300 dan 450,
saya mau hitung dulu pajak
saya seperti dulu.
untuk 300 pertama, saya ingin kalikan dengan tarif pajak untuk 300.
karena 300 orang pertama dikenakan pajak dengan tarif itu.
untuk jumlah lainnya, saya ingin
melakukan tarif pajak sebesar 150, yaitu poin 20%.
Jadi pertama-tama, saya harus mencari tahu
berapa banyak yang kami hasilkan lebih dari 300, tetapi saya benar-benar dapat
melakukannya dalam satu baris. Saya akan melakukan
pajak ditambah sama, jadi ini mengatakan pajak sama
dengan pajak, yang sudah 300 kali tarif pajak
300, pajak ditambah sesuatu. dan apa yang ingin saya
tambahkan ke pajak pertama pada baris 40 yang dihitung, saya ingin menambahkan
jumlah tambahan dan
itu akan menjadi gaji kotor dikurangi 300 dan saya telah
menentukan bahwa saya tidak di atas 450.
Jadi gaji kotor dikurangi 300 kali tarif
pajak untuk 150.
Jadi lihat apa yang saya lakukan di sana.
jika saya menghasilkan uang antara 300 dan 450 pada baris 38, maka
saya ingin mendapatkan pajak untuk 300 pertama, yaitu 300 kali tarif pajak 300 dan saya
ingin menambahkannya ke berapa atau banyak pembayaran kotor saya telah berakhir 300 kali
tarif pajak untuk 150.
jadi sekarang kita sudah memenuhi 2 syarat, syarat terakhir yang ingin kita cek adalah jika kita membuat lebih dari 450.
Jadi pada dasarnya, kita hanya dapat memiliki yang lain jika gaji kotor lebih besar dari
450 atau benar-benar hanya yang lain.
tapi demi kejelasan saya akan memasukkan yang lain jika di
sana, dan saya akan mengatakan bahwa gaji kotor lebih besar dari 450.
Saya tidak benar-benar perlu melakukan ini karena saya hanya dapat memiliki yang lain tanpa jika,
tetapi saya ingin menunjukkan yang lain jika.
dalam hal ini, saya ingin menghitung pajak untuk 300 pertama, jadi saya dapat
menyalin kode di sini.
Saya juga ingin menghitung pajak untuk 150, jadi saya
akan melakukan nilai tambah yang sama untuk 150
berikutnya, jadi 300 hingga 450. Jadi ini akan
menjadi 150 kali tarif pajak 150.
Dan kemudian hal terakhir yang ingin saya lakukan adalah saya ingin mengenakan pajak sisanya pada tingkat tertentu.
Jadi di sini saya akan mengatakan pajak ditambah sama, sekali lagi ditambah sama adalah pajak pajak plus.
dan di sini saya akan mengatakan
gaji kotor dikurangi 450 karena saya tidak
ingin menerapkan pajak untuk seluruh
gaji, hanya di atas 450.
dan saya ingin mengalikannya dengan tarif pajak sama dengan istirahat, yang merupakan
variabel konstan yang kami definisikan di atas.
dan itu saja. Saya sudah selesai menghitung pajak.
dan sekali lagi, Anda akan menguji ini setelah setiap langkah dan memastikan kompilasi
dan pengujiannya benar.
tapi Anda akan melihat lekukan. ini mudah dibaca. Saya melakukan komentar, semua itu.
Hal terakhir yang ingin saya lakukan adalah menghitung gaji bersih.
ini akan menjadi sederhana karena gaji bersih akan sama dengan
gaji kotor dikurangi pajak, sangat
sederhana.
dan kemudian saya ingin menampilkan output saya.
dan ingat persyaratannya adalah untuk menampilkan
gaji kotor, pajak, dan gaji
bersih.
Jadi kita bisa menggunakan printf di sini.
dan saya hanya akan menyalin dan menempel ini demi efisiensi, jadi kami tidak menghabiskan terlalu banyak waktu.
Terkadang siswa marah ketika saya menyalin dan menempel, dan mereka
mengatakan Anda tidak boleh menyalin dan menempel dalam pemrograman. Yah, itu benar sampai taraf tertentu.
jika Anda menyalin dan menempelkan sesuatu dan Anda sepenuhnya memahami kode itu, itu lebih efisien.
masalah dengan menyalin dan menempel adalah banyak pengembang menyalin dan menempel,
mereka tidak tahu bagaimana kode itu bekerja, dan kemudian mereka hanya berharap itu berfungsi.
tetapi dalam kasus ini, saya tahu cara kerja pernyataan hasil cetak dan saya hanya ingin menunjukkan kepada Anda apa yang terjadi di sini.
Jadi saya tidak perlu menunggu buang waktu mengetik di keyboard.
Jadi pada baris 54, kita akan menampilkan gaji kotor.
itu pelampung. kita tahu bagaimana menampilkan nilai variabel.
dan satu-satunya hal yang aneh adalah saya memformat output menjadi 2 titik desimal, jadi
Anda harus memperhatikan %. 2f dan kemudian garis
miring terbalik n adalah umpan baris untuk urutan pelarian.
Jadi saya memformat semuanya menjadi 2 titik desimal karena ketika kami menampilkan uang,
kami memiliki sen dan kami tidak memiliki persentase sen.
dan kemudian saya telah menampilkan format pajak yang sama dan pembayaran bersih.
Jadi cukup bagus di sana.
dan lagi, apa yang harus Anda perhatikan dalam program ini adalah lekukan.
itu sangat mudah dibaca. Saya menggunakan variabel konstan di bagian atas.
Saya menginisialisasi variabel saya. mengapa saya menyatakan mereka?
semuanya bagus dan rapi. Saya memberikan komentar. Saya
sedang menulis banyak pernyataan if else.
Mudah-mudahan, ini semua jelas. logikanya tidak terlalu sulit untuk diikuti, tetapi
ketika Anda memiliki kode sumber karena Anda dapat mengunduhnya sehingga Anda
dapat menganalisis ini lebih lanjut. tapi mari kita lihat apa yang terjadi ketika kita membangun dan
mengkompilasi seperti mari kita pastikan tidak ada yang salah.
Ketika saya membangunnya dikatakan saya memiliki peringatan yang tidak digunakan.
Sepertinya di sini.
Saya telah melewatkan sesuatu yang diharapkan titik koma sebelum tanda kurung yang tidak masuk akal.
telah melewatkan sesuatu yang diharapkan titik koma sebelum
tanda kurung yang tidak masuk akal. Jadi saya pikir apa yang saya lewatkan di sini adalah,
saya tidak bisa memiliki yang lain. itu harus lain jika, itu
tidak masuk akal, saya lupa jika. Jadi lain jika.
lihat apa yang terjadi di sana saya punya yang lain dan kemudian di bawah itu saya punya yang lain jika.
itu tidak masuk akal. Anda tidak dapat memiliki yang lain dan kemudian yang lain jika.
Jadi sekarang mari kita lihat apa yang terjadi di sini.
sekarang saya mendapatkan 0 kesalahan dan 0 peringatan.
mari kita
jalankan ini dan pemindai virus saya.
ketika saya menjalankan ini, hal pertama yang akan dilakukan adalah itu akan mengatakan silakan masukkan jumlah jam kerja minggu ini.
Saya akan memasukkan sesuatu yang lebih tinggi dari 45, jadi ini menunjukkan perpanjangan waktu.
Saya akan mengatakan 45 atau 4 lebih tinggi dari 40. 45 dan dikatakan saya menghasilkan 570
dolar, yang benar karena. semuanya hingga 40 dolar
adalah 12 dolar per jam yang kami hitung menjadi 400 dan 80.
dan kemudian 5 jam adalah 18 dolar per jam, yaitu 90 ditambah 480 adalah 570.
pajak minggu ini adalah 105 dolar, dan gaji bersihnya adalah 465.
bilangan genap yang bagus. Anda dapat melakukan perhitungan tersebut untuk memastikannya benar.
Anda dapat mencoba menjalankan ini berkali-kali dan melihat keluaran data yang berbeda.
mari kita jalankan dengan sesuatu yang kurang
dari 40. katakan saja 30 jam
minggu ini, saya tidak akan mendapatkan uang lembur. itu hanya akan menjadi lurus 30
kali 12 yaitu 360.
Untuk 300 pertama, saya akan dikenakan pajak dengan tarif 15%.
dan itu akan menjadi 45 dolar dan kemudian untuk 60
dolar, saya akan dikenakan pajak dengan tarif 20% dan itu
akan menjadi 12 dolar. Jadi 45 ditambah 12, 57 itu terlihat benar.
dan gaji bersih minggu ini adalah 303, 360 dikurangi 57.
Jadi tampaknya bekerja cukup baik.
Anda ingin menguji ini lebih banyak dengan penghasilan lebih dari 450.
hal penting lainnya dalam pengujian adalah Anda ingin menguji semua batasan.
Anda tidak hanya ingin memberikan satu tes. semuanya bekerja.
Anda ingin memberikan kasus baik dan kasus buruk.
Jadi dalam kasus ini, contoh ini, kami memiliki banyak kasus berbeda untuk program ini,
kami memiliki kasus di mana Anda menghasilkan lebih dari 40 jam.
Jadi Anda memiliki uang lembur. kami memiliki kasus ketika penghasilan
Anda 300 atau kurang, kasus ketika penghasilan Anda 300 hingga 450 dan kasus
ketika penghasilan Anda lebih besar dari 450.
Jadi untuk program ini anda minimal
harus menjalankan 4 test case atau 5 test case mungkin, itu
tergantung karena anda memang ingin menghitung overtime juga.
Anda mungkin bisa lolos dengan 4
kasus karena Anda mungkin menghasilkan kurang dari 300 dolar, kurang dari upah lembur.
Tapi yang benar-benar ingin Anda uji adalah lembur dan kemudian 3 tarif pajak.
Saya harap ini membantu. Saya harap Anda sepenuhnya memahami apa yang saya tunjukkan.
Saya harap Anda memahami semua hal dengan pernyataan if dan bagaimana saya membuat kode saya
dapat dibaca dan menggunakan nama yang bermakna. Terima kasih.