Anda di halaman 1dari 3

TUGAS AKHIR KULIAH ALPRO

(listing program dan contoh i/o dikumpulkan paling lambat pada waktu ujian akhir)

Problem 1 : Jarak Terdekat (kelompok 1)


Buatlah program untuk menentukan jarak terdekat antara dua elemen/bilangan dalam suatu
matrik random yang elemennya bilangan bulat positip berbeda semua/tidak ada yang sama
(0-100000). Jarak antara elemen matrik aij dengan apq dirumuskan sebagai sqrt((i-p)2+(j-q)2).
Sebagai contoh, jarak antara elemen 3 dan 4 dalam matrik:

13 25 16 17 8
3 7 60 24 70
15 5 50 6 9
10 1 4 26 18

adalah sqrt(8), yaitu nilai 3 pada baris kedua kolom pertama (2,1) dengan nilai 4 pada baris
keempat kolom ketiga (4,3).

Masukan

Pertama adalah dua buah bilangan bulat A dan B yang akan dicari jaraknya, kemudian dua
buah bilangan yang menunjukkan ukuran matrik P x Q (0 £ P,Q £ 100).

Keluaran

Sebuah bilangan yang menunjukkan jarak yang dimaksud.

Problem 2: FRACTIONS TO DECIMALS (kelompok 2)


Write a program that will accept a fraction of the form N/D, where N is the numerator and D
is the denominator, that prints out the decimal representation. If the decimal representation
has a repeating sequence of digits, it should be indicated by enclosing it in brackets. For
example, 1/3 = .33333333...is denoted as .(3), and 41/333 = .123123123...is denoted as .
(123).

Typical conversions are:

1/3 = .(3)
22/5 = 4.4
1/7 = .(142857)
3/8 = .375
45/56 = .803(571428)

Test your program with the fractions above


and the fraction 11/59.

Sample Run

ENTER N,D : 1,7

1/7 = .(142857)
PROBLEM 3 : Hashing Function (KELOMPOK 3)
Buatlah program untuk menempatkan N data integer (key) pada larik X dengan
menggunakan fungsi hashing (key mod (prima>=N) +1) dan jika terjadi tabrakan ( nilai
hashnya sama) makan gunakan metode linked, yaitu membuat link (pointer) pada indeks X
tersebut.

Masukan
N data integer random berbeda semua ( N max 100000)

Keluaran
Larik X /table hash

Problem 4 : Ordered Fractions (kelompok 4)


Consider the set of all reduced fractions (rational numbers)
between 0 and 1 inclusive with denominators less than or equal
to N.

Here is the set when N = 5:

0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1

Write a program that, given an integer N between 1 and 100


inclusive, prints the fractions in order of increasing
magnitude. You should also print the total number of
fractions.

SAMPLE RUN

Enter the maximum denominator: 5

0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1
There were 11 fractions.

TEST CASES:
Test your program for
N = 23, 54, 99.

Problem 5: Membalik bilangan (kelompok 5)


Buatlah program untuk membalik susunan digit bilangan bulat. Sebagai contoh, nilai 308
dibalik menjadi 803, 123 dibalik menjadi 321 (Tidak boleh menggunakan STRING).

Masukan

N adalah bilangan bulat yang akan dibalik susunan dijidnya,


N berkisar antara 0 – 10 000 000.

Keluaran

bilangan B sebagai hasil balikan dari bilangan N.


Problem 6:Problem A String Compression (kelompok 6)
Description
Consider the string ‘AAAABCCCCCDDDD’ consisting of alphabetic characters only. This
string is of length 14. Since the string consists of alphabetic characters only, duplicate
characters can be removed and replaced with a duplication factor n. With this technique the
string can be compressed and represented by ‘4AB5C4D’. The compressed string is of length
7. Write a program which takes a string in compressed form and recreates the original
uncompressed string.

Input
The string will be of the format ‘nA...’ where n, the duplication factor, is an integer between
2 and 99 and A is an uppercase alphabetic character. A string may contain single characters
not prefixed with a duplication factor. If this were not the case, for instance, the string
‘AABCDE’ would be compressed to ‘2A1B1C1D1E’. To avoid this, single characters will
not be prefixed with a duplication factor. The string ‘AABCDE’ would be compressed to
‘2ABCDE’.

The maximum length of an input string is 80 characters.

Output
The uncompressed string, 40 characters per line (it may be necessary to break an
uncompressed string over multiple lines).

Example 1

Input
3A4B7D

Output
AAABBBBDDDDDDD

Example 2

Input
22D7AC18FGD

Output
DDDDDDDDDDDDDDDDDDDDDDAAAAAAACFFFFFFFFFF
FFFFFFFFGD