Anda di halaman 1dari 9

SOAL-SOAL LATIHAN

Soal : 1
Data-data dari 50 orang peserta kuliah Dasar-Dasar Pemrograman yang mengikuti ujian,
mempunyai bentuk sebagai berikut :
NIM

Nama Peserta

Nilai UTS

Nilai UAS

........
........
........
dstnya

.........................
.........................
.........................
dstnya

.................
.................
.................
dstnya

..................
..................
..................
dstnya

Besar nilai UTS dan nilai UAS serta nilai akhir (NA) berkisar antara 0 sampai dengan 100.
Seorang peserta dinyatakan lulus, bila nilai UTS 50, nilai UAS 60 dan NA (30% nilai UTS
+ 70% nilai UAS) 57.
Buatlah algoritma pemrogramannya atau flowchart-nya untuk dapat menentukan pesertapeserta yang lulus dan tidak lulus, sehingga keluaran yang diharapkan kira-kira sebagai
berikut :
HASIL UJIAN
KULIAH DASAR-DASAR PEMROGRAMAN
------------------------------------------------------------NO.

NIM

NAMA

NUTS

NUAS

NA

KETERANGAN

1.
2.
3.

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

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

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

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

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

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

JUMLAH PESERTA YANG LULUS


........ ORANG = ........ PROSEN
JUMLAH PESERTA YANG TIDAK LULUS ........ ORANG = ........ PROSEN
KETERANGAN berisi kata LULUS atau TIDAK LULUS.

Soal : 2
Buatlah algoritma pemrogramannya atau flowchart - nya untuk persoalan berikut.
Diketahui matriks A(n,n) dengan elemen-elemennya adalah bilangan integer sembarang dan
tidak ada yang kembar nilainya. Perhatikan contoh matriks A(n,n) seperti diakhir soal ini.
a.
b.

Buatlah matriks B(n,n) dari matriks A(n,n), dimana bentuk seperti contoh di bawah.
Buatlah matriks C(n,n) dari matriks A(n,n) yang dikalikan dengan matriks B(n,n).

Halaman 1 dari 9

c.

Tampilkan matriks A(n,n), matriks B(n,n) dan matriks C(n,n) dalam format bariskolom, pada baris yang sama.

11

Contoh bentuk matriks A(3,3) : 3


19

4
44

Contoh bentuk matriks B(3,3) : 11


19

2
4

44

21
1
15
1
15

21

Format keluarannya adalah sebagai berikut.


MATRIKS A
. . .
. . .
. . .

MATRIKS B
. . .
. . .
. . .

MATRIKS C
. . .
. . .
. . .

Soal : 3
Bilangan-bilangan Fibonacci adalah anggota dari deretan bilangan, yang masing-masing
bilangan adalah merupakan jumlah dari dua buah bilangan sebelumnya.
Dengan kata lain : Fi = Fi-1 + Fi-2 , dengan Fi adalah bilangan Fibonacci yang ke i.
Catatan :

Bahwa 2 buah bilangan Fibonacci yang pertama didefinisikan sama dengan 1, yaitu
F1 = 1

dan

F2 = 1,

Sehingga

F3 = F2 + F1 = 1 + 1 = 2
F4 = F3 + F2 = 2 + 1 = 3
F5 = F4 + F3 = 3 + 2 = 5, dan seterusnya.

Semua bilangan Fibonacci adalah bilangan bulat (integer) positif, sehingga beberapa
diantaranya merupakan bilangan prima.

Pertanyaan :
Buatlah algoritma pemrogramannya atau flowchart - nya, agar

Halaman 2 dari 9

1. dapat menentukan 10 buah bilangan pertama dari deret bilangan-bilangan Fibonacci ini,
2. menentukan mana yang merupakan bilangan prima, serta menuliskan keterangan
prima disamping bilangan tersebut.
Bentuk keluarannya kira-kira sebagai berikut.
Bilangan Fibinacci ke-

adalah

Keterangan

1
1
2
3
5

bukan prima
bukan prima
prima
prima
prima

1
2
3
4
5
dan seterusnya

Soal : 4
Buatlah algoritma pemrogramannya atau flowchart - nya untuk persoalan berikut.
Dalam suatu kelas diajarkan 8 (delapan) mata kuliah, dimana setiap mata kuliah mempunyai
kredit/bobot tertentu, sebagai berikut.
Mata kuliah

:A

Kredit/Bobot

:2

Pada akhir semester dihitung nilai rata-rata untuk setiap mahasiswa dengan persamaan
n

NR

nilai
i 1

x kredit i
; dengan NR = nilai rata-rata

kredit
i 1

Diketahui jumlah mahasiswa 30 orang.


Bentuk keluaran yang diharapkan kira-kira sebagai berikut.

DAFTAR NILAI MAHASISWA


SEMESTER : . TAHUN : ../..

NO.
1.
Halaman 3 dari 9

NIM

NAMA

NILAI RATA-RATA
..

2.
3.
.
.
.
30.

..
..

..

NILAI RATA-RATA KELAS : .


NILAI TERTINGGI
: .
NILAI TERENDAH
: .

Soal : 5
Data matriks riel A(10,10), ditempatkan pada 10 baris data masukan. Buatlah algoritma
pemrogramannya atau flowchart - nya untuk dapat menentukan :
a. nilai terbesar dari baris pertama matriks A;
b. membagi kolom dari nilai terbesar di atas dengan nilai terbesar itu;
c. membentuk matriks B(10,10) yang kolom pertamanya adalah kolom pada proses butir b.
di atas, sedangkan kolom matriks B yang sama dengan proses butir b. di atas adalah kolom
pertama matriks A, dan kolom-kolom matriks B lainnya adalah sama dengan kolom-kolom
matriks A lainnya.
Bentuk keluaran yang diharapkan kira-kira sebagai berikut :

Halaman 4 dari 9

MATRIKS A :



dan seterusnya
NILAI MAKSIMUM BARIS PERTAMA MATRIKS A ADALAH
TERLETAK PADA KOLOM KE

MATRIKS B :



dan seterusnya

Soal : 6
Soal mata kuliah Bahasa Inggris, berupa soal pilihan berganda (multiple choice), sebanyak 50
buah soal.
Adapun penilaiannya adalah:
jawaban yang benar, mendapat nilai +3,
jawaban yang salah, mendapat nilai -1,
tidak menjawab, mendapat nilai 0.
Seseorang akan mendapat nilai indeks :
A, bila nilainya > 85;
B, bila 70< nilainya 85;
C, bila 55 < nilainya 70;
D, bila 40 nilainya 55;
E, bila nilainya < 40.
Skala nilai adalah 0 sampai dengan 100.
Diketahui jumlah mahasiswa adalah 30 orang.
Data-data lainnya memuat :
-. nama mata kuliah, semester dan tahun;
-. jawaban penguji ( 50 buah jawaban);
-. record-record mahasiswa, yang terdiri dari nomor induk mahasiswa, nama mahasiswa dan
jawaban ujian mahasiswa ( 50 buah jawaban).
Buatlah algoritma pemrogramannya atau flowchart-nya untuk persoalan di atas.
Adapun bentuk keluaran yang diharapkan dicetak di kertas aadalah seperti berikut.
Halaman 5 dari 9

UJIAN MATA KULIAH : .......................


SEMESTER : ............ TAHUN : ................
NO.

NIM

1
2
3
.
.
.

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

N AM A

NILAI

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

INDEKS

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

NILAI RATA-RATA KELAS = ..................


NILAI TERTINGGI
= ..................
NILAI TERENDAH
= ..................
PESERTA YANG MENDAPAT NILAI :
A = .................. ORANG = .................. PROSEN
B = .................. ORANG = .................. PROSEN
C = .................. ORANG = .................. PROSEN
D = .................. ORANG = .................. PROSEN
E = .................. ORANG = .................. PROSEN
PESERTA YANG MENDAPAT NILAI TERTINGGI ADALAH :
1. N I M : ............... N A M A : .................................
2. N I M : ............... N A M A : .................................
3. N I M : ............... N A M A : .................................
dstnya.
* NILAI TERTINGGI dihitung dari nilai numerik (angka), bukan dari nilai indeks.

Soal : 7
Buatlah algoritma pemrogramannya atau flowchart-nya untuk persoalan berikut.
Metoda Simpson untuk menghitung integral adalah
b

S f x dx
a

x
f x0 4 f x1 2 f x2 4 f x3 2 f x4 4 f xn 1 f xn
3

dengan

Halaman 6 dari 9

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

x0 a
x1 x11 x
xn b
ba
n

n bilangan genap

Dengan metoda Simpson di atas, buatlah subprogram untuk menghitung sebuah integral
berhingga. Kemudian buatlah main program-nya untuk menghitung :
1, 95

1, 95

x2

1 2
e dx
2

dengan n = 6.

Soal : 8
Kelulusan peserta kuliah EL-102 : Dasar Komputer, Semester II, Tahun 1996/1997; ditentukan
oleh nilai ujian tengah semester (NUTS), nilai ujian akhir semester (NUAS) dan nilai praktikum
(NP).
Seseorang dinyatakan lulus (nilai indeks A, B, C atau D), jika nilai teori (NT, terdiri dari 40%
NUTS + 60% NUAS) dan NP, lulus. Batas kelulusan NT dan NP adalah 56. Adapun
prosentasi kelulusannya adalah 75% NT + 25% NP, menghasilkan nilai akhir (NA), untuk
menghitung nilai indeks.
Untuk menentukan nilai indeks A, B, C, D atau E, dengan aturan sebagai berikut :
a. nilai indeks A, jika NA NR + 1,5 SD;
b. nilai indeks B, jika NR + 0,5 SD NA NR + 1,5 SD;
c. nilai indeks C, jika NR - 0,5 SD NA NR + 0,5 SD;
d. nilai indeks D, jika NR - 1,5 SD NA NR - 0,5 SD;
e. nilai indeks E, jika NA NR - 1,5 SD;
dengan
N

NR = nilai rata-rata mahasiswa =

NA
i 1

(N = banyaknya mahasiswa); dan

N
N

SD = standard deviasi =

NA
i 1

NR

N 1

Buatlah diagram alirnya atau flowchart-nya sehingga dapat menampilkan keluaran yang
memuat hal-hal berikut.
a. Judul mata kuliah, semester dan tahun.

Halaman 7 dari 9

b. Tiap record berisi : nomor urut, NIM, nama mahasiswa, NUTS, NUAS, NP, NA dan
indeks.
c. Nilai rata-rata, standard deviasi, nilai tertinggi dan nilai terendah. (Nilai numerik)
d. Jumlah peserta yang mendapat nilai A, B, C, D dan E serta prosentasinya masing-masing.
e. NIM dan nama mahasiswa yang mendapat nilai tertinggi (nilai numerik). Bila lebih dari satu
orang yang mendapat nilai tertinggi, maka data-data mahasiswa tersebut harus ditampilkan
semua, karena mereka mempunyai nilai yang sama. Adapun formatnya memuat : nomor
urut, NIM dan nama mahasiswa yang bersangkutan.
CATATAN :
1. Jumlah peserta kuliah 180 orang mahasiswa.
2. Data masukan berupa : nama mata kuliah, semester, tahun, NIM, nama mahasiswa, NUTS,
NUAS dan NP.
3. Setiap halaman kertas memuat judul dan hanya memuat 30 data mahasiswa.
4. Tampilan keluaran yang merupakan jawaban pertanyaan butir c, d dan e terletak pada
halaman terakhir.
5. Format keluaran dapat saudara buat sendiri, asalkan berbentuk daftar (list) yang dapat
dikeluarkan melalui printer, sesuai dengan apa yang diminta.

Soal : 9
Buatlah sebuah diagram alir atau algoritma pemrogramannya (bukan program komputernya)
untuk persoalan berikut.
Diketahui matriks A(5,5) dengan nilai elemen yang seluruhnya berbeda dan riel. Buatlah
matriks B(5,5) dari matriks A tersebut, dengan cara :
a. mencari nilai terbesar dari elemen matriks A;
b. membagi baris dimana nilai terbesar tersebut berada dengan nilai terbesar tadi;
c. menukarkan baris hasil proses pada butir b. di atas dengan baris pertama matriks A;
sedangkan elemen-elemen lain untuk matriks B sama dengan elemen-elemen matriks A
lainnya.
Setelah matriks B(5,5) di atas terbentuk, buatlah matriks C(5,5) yang merupakan perkalian
dari matriks A(5,5) dengan matriks B(5,5) yang baru dibuat.
Hasil yang diperoleh kemudian dicetak di kertas, dengan format kira-kira seperti berikut.

MATRIKS A
...
...
...
...

Halaman 8 dari 9

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

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

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

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

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


Nilai terbesar elemen matriks A terletak pada baris ... dan kolom ...
MATRIKS B
... ... ... ... ...
... ... ... ... ...
... ... ... ... ...
... ... ... ... ...
... ... ... ... ...

MATRIKS C
... ... ... ...
... ... ... ...
... ... ... ...
... ... ... ...
... ... ... ...

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

Soal : 10
Diketahui data nilai ujian dari 10 mata kuliah, termasuk di dalamnya 4 mata kuliah wajib
(dalam semester I). Bahwa akan diberikan beasiswa untuk kuliah pada semester II, bagi
mahasiswa yang mendapat nilai rata-rata tertinggi pada semester I. Besarnya nilai beasiswa
(jumlah uangnya) hanya diperuntukkan bagi seorang mahasiswa saja.
Adapun kriteria untuk mendapatkan beasiswa tersebut sebagai berikut.
Diperuntukkan bagi seorang mahasiswa yang mendapat nilai rata-rata tertinggi dari semua
nilai ujian yang ada.
Kalau yang mendapat nilai rata-rata tertinggi lebih dari satu orang, maka mata kuliah wajib
menjadi patokan. Dari mahasiswa yang mendapat nilai rata-rata yang sama tadi (tertinggi),
dibandingkan lagi nilai rata-rata mata kuliah wajibnya, dan diambil yang tertinggi.
Kalau dari proses di atas masih ada yang sama nilainya, maka dibandingkan lagi
berdasarkan kehadiran kuliahnya. Yang lebih banyak hadir, dialah yang akan mendapat
beasiswa.
Dan kalau nilai yang dicapai masih sama, maka biaya beasiswa yang ada akan digunakan
bersama-sama oleh mahasiswa yang bersangkutan (dibagi rata).
Buatlah diagram alir atau algoritma pemrogramannya untuk masalah di atas. Format data dapat
anda tentukan sendiri. Format keluarannya juga dapat anda tentukan sendiri, yang pada
dasarnya akan berisi :

tabel yang memuat semua peserta kuliah, yang tiap recordnya memuat nomor urut, nomor
induk mahasiswa, nama mahasiswa, nilai rata-rata ujian (dari seluruh mata kuliah), nilai
rata-rata ujian mata kuliah wajib dan jumlah kehadiran;
nomor urut (bila yang mendapat beasiswa lebih dari satu orang), nomor induk mahasiswa,
nama mahasiswa dan besarnya beasiswa yang diterima.

Halaman 9 dari 9