Tugas Kelompok ke-3
Week 7
Alif Irfandi (2602289874)
Dwiki Prasetya (2602290081)
Enrico Feraldo Kalengkongang (2602280515)
Muhammad Ilham Ferdiansyah (2602291121)
Zhalfa Putri Zakhirah (2602292774)
LACA
Compiler: DevC++ / Online GDB
Jawablah soal berikut dengan benar!
A. Soal Essay
1. Passing parameter suatu function dalam C ada 2 macam, yaitu by
value dan by reference. Jelaskan serta berikan contoh sederhananya!
Jawab:
Pass by value Dalam metode ini nilai argumen dikopi ke dalam
parameter fungsi. Dalam hal ini, perubahan yang terjadi pada nilai
parameter di dalam fungsi tidak mempengaruhi nilai variabel asli di
luar fungsi.
Contoh :
- Program meminta user untuk input index dalam array ke berapa
yang mau diubah value nya
- Setelah dimasukkan “2” maka sistem akan menanyakan kembali
angka berapa yang akan di masukkan ke dalam index ke-2 array
tersebut.
Algorithm and Programming
- Maka sistem akan mengganti index ke-2 dari array tersebut dengan
angka “99”
Noted : File Codingan Terpisah
Pass by reference dalam metode ini, alamat memori variabel
dikirim ke dalam parameter fungsi sehingga perubahan nilai
parameter di dalam fungsi juga mempengaruhi nilai variabel asli di
luar fungsi.
Contoh :
Noted : File Coding Terpisah
2. Apakah fungsi struktur di bawah ini:
a. #include <stdio.h>
Jawab :
#include<stdio.h> adalah Library dalam bahasa pemrograman C yang
digunakan untuk INPUT-OUTPUT, tanpa menggunakan library tersebut
maka program C yang kita buat tidak bisa digunakan untuk
menampilkan atau menginput sesuatu. Singkatan Stdio sendiri adalah
Standard Input Output.
b. int main(void) {}
Jawab:
itnt main(void) adalah fungsi utama dalam bahasa C. Fungsi ini
adalah awalan/pembuka dari sebuah program C dan setiap program
C wajib memiliki fungsi ini. Fungsi main() dapat mengembalikan
nilai int, yaitu status keluaran program yang akan digunakan sebagai
penanda apakah program berhasil atau gagal dijalankan.
c. return 0;
Jawab:
Algorithm and Programming
Sintak return 0; wajib dituliskan dalam setiap kode program
mengacu pada struktur bahasa C yang benar. Fungsi dari perintah
yang satu ini yaitu menutup main() dan mengakhiri program yang
sudah ditulis.
Return 0; sendiri artinya program akan mengembalikan (return) nilai
0 ke operating system yang menjalankan program tersebut.
d. Counted Loop
Jawab:
Counted Loop merupakan perulangan yang jelas dan sudah tentu
banyak perulangannya.
e. Uncounted Loop
Jawab:
Uncounted Loop merupakan perulangan yang tidak jelas berapa kali
ia harus mengulang.
B. Soal Case
3. Buatlah menggunakan konsep struct:
a. Struct Buku berisi id_buku, judul_buku, Jumlah_buku,
pengarang_buku, No_ISBN, Kategori_buku, Penerbit.
b. Kategori_buku merupakan struct yang terdiri dari Fiksi, Kuliner,
Biologi, Filsafat, Komputer, Managemen
c. Penerbit merupakan struct yang berisi Erlangga, Tiga Sekawan, dan
Gramedia.
d. Kemudian buatlah program dengan 3 menu sebagai berikut:
1. Input data buku
Input data maksimum 5 buku
2. Cetak data buku.
Untuk menampilkan data buku tersebut
3. Keluar program
Jawab:
Note: File codingan terpisah
4. Buatlah program menggunakan array of struct untuk menghitung gaji
bulanan pegawai, dengan ketentuan program sebagai berikut:
Struct berisi data sebagai berikut: Nomor induk pegawai, nama
pegawai, alamat, nomor HP, kategori.
Buatlah 4 menu sebagai berikut:
1. Entry Pegawai
Menu ini akan meminta data pegawai seperti Nomor Induk
Pegawai (NIP), nama pegawai, alamat, no_hp, Kategori. Pastikan
NIP tidak boleh ada yang sama.
2. Entry Jam Kerja Harian
Input yang diminta adalah NIP. Jika NIP ketemu maka masukkan
jam kerja harian, jika tidak maka tampilkan pesan kesalahan.
Bila jumlah jam kerja > 8 jam, maka kelebihannya dihitung lembur
yang besarnya 20.000/jam.
Algorithm and Programming
Total jam lembur bulanan dapat diasumsikan selama 20 hari kerja.
Contoh:
Jam kerja harian = 10 jam, maka:
a. Jam lembur harian = 10 – 8 = 2 jam
b. Jam lembur bulanan = 2 x 20 = 40 jam
3. Print Slip Gaji
Input yang diminta adalah NIP. Jika NIP ketemu maka print slip
gaji, jika tidak maka tampilkan pesan kesalahan.
Komponen gaji terdiri atas gaji pokok dan upah lembur.
a. Gaji pokok
Staff D1 = Rp. 2.500.000
Staff D2 = Rp. 2.000.000
Staff D3 = Rp. 1.500.000
b. Lembur = Rp. 20.000/jam
4. Exit Program
Keluar dari program.
Jawab:
Note: File codingan terpisah
Algorithm and Programming