Anda di halaman 1dari 3

Latihan soal

1. Anda diminta untuk membuat sebuah program untuk mengambil dari file input data siswa/siswi suatu sekolah yang terdiri dari
field nama, alamat, telepon, dan tanggal lahir. Tampilkan seluruh data yang ada dalam bentuk tabel. (siswa.cpp)
Squall Leonhart
Jl. Palem
635520
23
4
1980
Seifer Almasy
Jl. Indah Kelok
3849877
26
10
1978
Rinoa Heartilly
Puri Indah
5008560
4
3
1981

Gambar 1.1 Contoh file input soal nomor 1


Daftar siswa-siswi SMU FF
Jakarta Barat
----------------------------------------------------------# Nama
Alamat
Telepon Tgl Lahir
----------------------------------------------------------- 0 Squall Leonhart
635520
23 Mei 1980
1 Seifer Almasy
Jl. Indah Kelok
3849877 26 November 1978
2 Rinoa Heartilly Puri Indah
5008560 4 April 1981
-----------------------------------------------------------

Jl. Palem

Gambar 1.2 Contoh tampilan soal nomor 1

2. Buatlah program untuk menginput data karyawan suatu perusahaan dari standard input, terdiri dari field nama, gaji, status
(menikah/belum/janda), jika sudah menikah, tanyakan berapa anaknya. Simpan input dalam sebuah file. (karyawan.cpp)
Form data karyawan
==================
Nama : Agus Hermanto
Gaji : 20000000
Status (0 belum menikah, 1 sudah, 2 janda) : 1
Jumlah anak : 3
Masukkan data lagi? (Y/T): y
Nama : Lia Ilawan
Gaji : 15000000
Status (0 belum menikah, 1 sudah, 2 janda) : 2
Jumlah anak : 2
Masukkan data lagi? (Y/T): t

Gambar 1.3 Contoh tampilan soal nomor 2

3. Buatlah program untuk menampilkan data dari soal nomor 2 ke dalam bentuk tabel. (karywn2.cpp)
Tabel karyawan
==============
--------------------------------------------------------# Nama
Gaji Status
Jumlah anak
--------------------------------------------------------1 Agus Hermanto 20000000 sudah menikah
3
2 Lia Ilawan
15000000 janda/duda
2
---------------------------------------------------------

Gambar 1.4 Contoh tampilan soal nomor 3

4. Buatlah program yang berguna untuk menghitung hasil jumlah, kali, kurang, dan sekawan dari dua buah bilangan kompleks.
Bilangan dimasukkan melalui parameter program.(kompleks.cpp)
E:\> kompleks 5 2 1 4
a = 5 + 2i
b = 1 + 4i
a = 5 2i
b = 1 4i
a + b = 6 + 6i
a b = 4 2i
a * b = -3 + 22i

Gambar 1.5 Contoh tampilan soal nomor 4

5. Buatlah sebuah program untuk menghitung berat badan ideal dan selisihnya dengan berat badan aktual, dari para peserta
program diet. Input diambil dari file teks dengan struktur nama, jenis kelamin, berat badan, dan tinggi badan. Rumus berat
badan ideal yang dipakai di sini adalah (tinggi 100) * 90% (untuk wanita 80%).(diet.cpp)
E:\> diet
Daftar peserta program diet
-----------------------------------------------------Nama
L/P
Berat
Tinggi
Ideal Selisih
-----------------------------------------------------Sujono
L
50
150
45
5
Irma
P
95
145
36
59
Mamud
L
33
204
94
-60
Lani
P
104
156
45
59
------------------------------------------------------

Gambar 1.6 Contoh tampilan soal nomor 7

6. Jika ada sebuah kumpulan persegi panjang, smallest bounding box adalah persegi panjang yang paling kecil yang dapat
mencakup semua persegi panjang yang ada dalam kumpulan tersebut. Buatlah program yang menerima input koordinatkoordinat ujung dari beberapa persegi panjang (dalam format AA hingga ZZ), dan memberikan output tampilan persegi-persegi
panjang dan smallest bounding boxnya. (bound.cpp)
E:\> bound
Persegi panjang 1: KH PR
Persegi panjang 2: FN SU
Gambar:
A B C
A . . .
B . . .
C . . .
D . . .
E . . .
F . . .
G . . .
H . . .
I . . .
J . . .
K . . .
L . . .
M . . .
N . . .
O . . .
P . . .
Q . . .
R . . .
S . . .
T . . .
U . . .
V . . .
W . . .
X . . .
Y . . .
Z . . .

D
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

E F G H I J K L M N O P Q R S T
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
*******************************
* . . . . . 1 1 1 1 1 1 . . . *
* . . . . . 1 . . . . 1 . . . *
* . . . . . 1 . . . . 1 . . . *
* . . . . . 1 . . . . 1 . . . *
* . . . . . 1 . . . . 1 . . . *
* . . . . . 1 . . . . 1 . . . *
* 2 2 2 2 2 2 2 2 2 2 2 2 2 2 *
* 2 . . . . 1 . . . . 1 . . 2 *
* 2 . . . . 1 . . . . 1 . . 2 *
* 2 . . . . 1 . . . . 1 . . 2 *
* 2 . . . . 1 1 1 1 1 1 . . 2 *
* 2 . . . . . . . . . . . . 2 *
* 2 . . . . . . . . . . . . 2 *
* 2 2 2 2 2 2 2 2 2 2 2 2 2 2 *
*******************************
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .

U
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

V
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

W
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

X
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Y
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Z
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Gambar 1.7 Contoh tampilan soal nomor 6

7. Buatlah simulasi mesin ATM. Anda dibebaskan menampilkan menu apa saja. Tetapi setidaknya harus bisa melakukan transfer
antar rekening, penarikan tunai, dan cek saldo. Data rekening disimpan dalam file dengan nama sesuai nomor rekeningnya.
Nomor rekening dimasukkan melalui parameter program. (atm.cpp)
E:\> atm 5271234
1
2
3
4

>
>
>
>

10000
20000
40000
50000

100000
200000
500000
Transaksi lain

<
<
<
<

5
6
7
8

Pilih menu: _

Gambar 1.8 Contoh tampilan soal nomor 7

8. Buatlah sebuah program untuk menampilkan jejak bola yang memantul mantul dalam ruang 2 dimensi (jejaknya saja, tidak
perlu animasi), secara gerak lurus beraturan. Input adalah koordinat awal bola (diukur dari kiri bawah) dan kecepatan beserta
arahnya. Bola bergerak Jumlah perulangan dapat Anda batasi sesuka hati.(jejak.cpp)

E:\> jejak
Koordinat bola: 5 6
Kecepatan: 1
Arah: -45
Gambar:
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.

.
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.

.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.

.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.

.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.

.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*

.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.

.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.

.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.

*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.

.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.

.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.

.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.

.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.

.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
*
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
*
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
*
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
*
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
*
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Gambar 1.9 Contoh tampilan soal nomor 8

9. Seperti soal sebelumnya, hanya tambahkan percepatan gravitasi ke bawah. (jejakg.cpp)


10. Buat program database hewan sebuah kebun binatang. Program harus dapat menerima input, menampilkan tabel, delete, save
dan open. Gunakan gabungan array dan struktur. (hewan.cpp)
E:\> hewan
: tampil
-------------------------------Nama
Jenis hewan
Berat
-------------------------------Rina
Kuda
200 pon
Herman
Singa
150 pon
Sinta
Sapi
375 pon
-------------------------------Ok.
: tambah
Nama
: Bubu
Jenis hewan : Buaya
Berat
: 300 pon
Ok.
: hapus Herman
Ok.
: tampil
-------------------------------Nama
Jenis hewan
Berat
-------------------------------Rina
Kuda
200 pon
Sinta
Sapi
375 pon
Bubu
Buaya
300 pon
-------------------------------Ok.
: _

Gambar 1.10 Contoh tampilan soal nomor 10

Anda mungkin juga menyukai