Anda di halaman 1dari 7

1

Tugas 1 – Dasar-Dasar Pemrograman

A. ATURAN PENGERJAAN DAN PENGUMPULAN

Pengerjaan tugas dengan ketentuan berikut:


• Dikerjakan berkelompok.
• Dikerjakan dengan bahasa pemrograman Pascal, menggunakan IDE Lazarus/FreePascal.
• Tulis Nama, NIM, Matakuliah, dan Kelas sebagai komentar di bagian atas source code
file Pascal/.pas (baca Bagian B).
• Dilarang menjiplak/menyontek dengan alasan, cara, sesedikit apapun. Kode program
akan dicek dengan program pengecekan plagiarisme. Pengubahan variabel, letak kode,
dll. tidak akan berpengaruh dan dianggap plagiarisme.

Pengumpulan tugas:
• Batas waktu pengumpulan di Google Classroom, perhatikan jam server.
• Soft copy melalui ke Google Classroom, lampirkan SEMUA FAIL (.DOCX/PDF, .PAS, dll.)
dengan terkompres ZIP/RAR dengan format:
[T1][PD-PRODI-KELAS] NamaMahasiswa.ZIP

• PRODI diisi inisial prodi: TIF (Teknik Informatika), TKOM (Teknik Komputer), SI
(Sistem Informasi)
• KELAS diisi kode kelas misal A, B, C, dst.
• NamaMahasiswa maksudnya tidak perlu menuliskan semua nama anggota, tapi
nama satu anggota saja, sebagai ketua kelompok/penanggung jawab unggahan.

Contoh: [T1][PD-TIF-B] Elon Gates.ZIP


Di dalam fail .ZIP di atas berisi:
• Fail .DOCX/.PDF untuk Flowchart, Pseudocode, Source Code (seluruh jawaban soal
jadi satu dokumen, lihat bagian Format dan Struktur)
• Fail .PAS dengan format: T1_NIM_Nama_NoSoal.pas
• Misalnya:
T1_123456789_Nama_1.pas (nama program perlu disamakan dengan nama fail)
• Fail lainnya yang diperlukan

Tugas akan dibahas saat kuliah. Apabila ada yang tidak dimengerti atau memerlukan bantuan
silakan ditanyakan melalui email atau menemui langsung.

2
B. FORMAT DAN STRUKTUR PENGERJAAN TUGAS

Dalam file .DOCX/PDF berisi contoh struktur sbb.:


1. Soal (tidak perlu ditulis, cukup nomornya saja)
a. Pseudocode (bila diminta, diketik dengan font Cambria/Times New Roman seperti contoh)
Algoritme untuk Menampilkan Input dan Ouput
{ Algoritme ini digunakan untuk menampilkan input dan output }
1 DEKLARASI
2 x: integer
3 DESKRIPSI
4 Cetak “Masukkan x”
5 Input x
6 if x mod 2 == 0 then
7 x  x+1
8 else
9 x  x+2
10 Cetak “Hasilnya adalah “, x
11 end if

b. Diagram alir/Flowchart (bila diminta)


- Gambar flowchart di sini –

c. Source Code (wajib ada, diketik dengan font Consolas/Courier New seperti contoh). Untuk
penomoran, pilih satu kolom lalu gunakan Numbering di Microsoft Word.
Source Code Untuk Menampilkan Input dan Output
1 (*
2 Nama 1: NAMA MAHASISWA 1 (NIM)
3 Nama 2: NAMA MAHASISWA 2 (NIM)
4 dst...

5 Tanggung jawab 1: mengerjakan soal nomor 1, membuat xxx, dll.


6 Tanggung jawab 2: mengerjakan soal nomor 2, membuat xxx, dll.
7 dst...

8 *)
9 Program Coba;
10 var
11 x: integer;
12 Begin
13 Write('Masukkan x = ');
14 ReadLn(x);
15 if (x mod 2 = 0) then
16 x := x+1;
17 else
18 x := x+2;
19 WriteLn('Hasilnya adalah ', x);
20 End.

3
d. Pembahasan/Penjelasan dari Source Code (wajib ada)
Contoh pembahasan
Baris 14, variabel x bertipe integer akan diisikan dari masukan keyboard. Baris 15 hingga
18, akan menyeleksi kondisi sesuai isi dari x. Apabila x bernilai genap, maka akan
mencetak hasil x+1, sedangkan bila tidak maka akan mencetak x+2.

e. Tangkapan Layar/Screenshot (wajib ada)


- Gambar tangkapan layar di sini –

2. dst. seperti no. 1

C. TUJUAN TUGAS:

Mahasiswa dapat memahami tentang struktur pemrograman Pascal, dasar-dasar pemrograman


antara lain dari deklarasi variabel dan penggunaannya, serta sequence, input, dan output, seleksi
kondisi, dan iterasi.

D. DESKRIPSI TUGAS:

Tugas ini dititikberatkan tentang dasar-dasar pemrograman antara lain deklarasi variabel untuk
menampung nilai data, memanipulasi suatu variabel, serta proses sequence, input, output, seleksi
kondisi, dan iterasi.

Catatan: bagian yang digarisbawahi adalah yang berupa masukan (input).

1. Buatlah pseudocode, flowchart, program untuk menghitung selisih jam, menit berdasarkan
masukkan dengan format hh:mm.
Masukkan jam mulai = 09:30
Masukkan jam selesai = 10:45
Selisihnya adalah 1 jam 15 menit

2. Buatlah pseudocode, flowchart, program untuk mengonversi suhu dari Celcius ke Kelvin dan
Fahrenheit.
Masukkan suhu dalam Celcius = 75

75 derajat Celcius dalam Kelvin = 348.15 derajat Kelvin


75 derajat Celcius dalam Fahrenheit = 167.00 derajat Fahrenheit

4
3. Buatlah program (dan screenshot) untuk membuat nota pembelian makanan (invoice) suatu
restoran. Program ini akan digunakan oleh kasir. Tampilan input-output yang digunakan
masih sangat sederhana sebagai suatu prototipe.
Customer Seat : C01
Customer Name : Bill Gates
Order Price:
Meal, Qty : 15000 1
Beverage, Qty : 20000 2
Dessert, Qty : 10000 1
Payment Money : 100000

<<Printing Invoice>>

Customer ID : C01
Customer Name : Bill Gates
Date : 2019-09-10

Menu | Price | Qty | SubTotal


===============================================
Meal | 15000 | 1 | 15000
Beverage | 20000 | 2 | 40000
Dessert | 10000 | 1 | 10000
===============================================
Total | 65000
Discount | 0
Payment | 100000
===============================================
Change | 35000

Keterangan:
• Untuk masukan order price, masukan berupa harga diikuti banyaknya yang dibeli
(dipisahkan spasi). Misalnya 20000 2 artinya 2 produk seharga Rp20.000,- dengan
subtotal harga Rp40.000,-
• Customer Seat adalah nomor tempat duduk, diawali dengan huruf A,B,C, dst. dan
diikuti oleh angka terserah.
• Date adalah tanggal sekarang dituliskan dengan format YYY-MM-DD
• Subtotal dihitung dari Price × Qty
• Total dihitung dari penjumlahan subtotal Meal, Beverage, dan Dessert.
 Bila Total lebih dari Rp500.000,- maka berikan Discount sebesar 2,5% dari Total
 Bila kurang dari itu maka tidak perlu diberikan Discount.
• Change = Payment – (Total – Discount)

5
4. Buat program (dan screenshot) untuk menampilkan tampilan seperti berikut. Banyak
baris/lebar kolom dapat ditentukan sesuai masukan. Di akhir program pengguna akan ditanya
untuk mengulangi atau tidak dengan pertanyaan “Ingin ulangi lagi (Y/T)?”.
Pengulangan dari awal dilakukan selama pengguna mengetikkan ‘Y’ atau ‘y’. Pertanyaan
“Ingin ulangi lagi (Y/T)?” akan selalu diulangi apabila jawaban yang dimasukkan bukan
‘Y’, ‘y’, ‘T’, ’t’.

Contoh tampilan
run:
Masukkan banyak baris/lebar kolom = 4
****
****
****
****
Ingin ulangi lagi (Y/T)? 8
Ingin ulangi lagi (Y/T)? y
Masukkan banyak baris/lebar kolom = 7
*******
** **
* * * *
* * *
* * * *
** **
*******
Ingin ulangi lagi (Y/T)? y
Masukkan banyak baris/lebar kolom = 10
**********
** **
* * * *
* * * *
* ** *
* ** *
* * * *
* * * *
** **
**********
Ingin ulangi lagi (Y/T)? y
Masukkan banyak baris/lebar kolom = 15
***************
** **
* * * *
* * * *
* * * *
* * * *
* * * *
* * *
* * * *
* * * *
* * * *

6
* * * *
* * * *
** **
***************
Ingin ulangi lagi (Y/T)? t

Anda mungkin juga menyukai