20121117_utsalgoritma
DESCRIPTION
aTRANSCRIPT
-
UJIAN TENGAH SEMESTER GANJIL TAHUN 2012 2013 STMIK AMIKOM YOGYAKARTA
Mata Ujian : Algoritma dan Pemrograman Kelas : 12-S1TI-12 s/d 14 Sifat : Open Book (Close Laptop) Jurusan : S1 Teknik Informatika Hari dan Tanggal : Senin, 05 November 2012 Waktu : 10.30 12.10 (100 menit) Dosen Pengampu : Sidiq Wahyu, S.T., M.Kom.
Berdoalah sebelum mengerjakan soal (soal terdiri dari pilihan ganda dan esai)
Bacalah soal dengan teliti, jangan tergesa gesa
Kerjakanlah dahulu soal yang dianggap paling mudah
Hanya lembar jawaban saja yang dikumpulkan
Boleh dikerjakan soal esai nya dulu
a. Pilihan Ganda (15 Soal, nilai Maksimal 30)
1. Di bawah ini termasuk tipe data numerik adalah
a. Char dan String b. Float dan String c. Integer dan Float d. Boolean dan Integer
2. Di antara nilai nilai berikut ini yang termasuk tipe data Char adalah
a. 1, 2, 3, 4, 5 b. 1, 2, 3, 4, 5 c. 1, 2, 3, 4, 5 d. 12345
3. Perhatikan pernyataan berikut ini:
2 + 3 * (6 (6 8 / 2)) (7 % 5) * 7
Berapakah nilai dari pernyataan di atas jika di run menggunakan compiler?
a. 126 b. 0 c. 9 d. 231
4. Perhatikan tabel berikut ini
A B NOT A OR B NOT (A AND NOT B) NOT A XOR B
true true ...(x) ...(y) ...(z)
Nilai untuk x, y, dan z masing masin adalah
a. true, false, true b. false, true, true c. false, false, false d. true, true, true
5. Berikut ini adalah notasi notasi yang digunakan untuk menuliskan algoritma
a. kalimat deskriptif, flow chart, pseudopodia
b. kalimat deskriptif, flow chart, pseudochart
c. pseudocode, flow chart, kalimat deskriptif
d. programming language, flow chart
-
6. Perhatikan potongan notasi algoritma berikut:
...
1. Masukkan isi ember A ke ember C
2. Masukkan isi ember B ke ember A
3. Masukkan isi ember C ke ember B
Notasi tersebut termasuk
a. kalimat deskriptif b. flow chart c. pseudocode d. programming language
7. Perhatikan potongan pseudocode berikut ini
DEKLARASI
A,B,C,D: Integer
ALGORITMA
A 5
B 2
C A / B
D A + C * 2
Nilai C dan D masing masing adalah
a. 2.5 dan 15 b. 2.5 dan 25 c. 2 dan 9 d. 2 dan 14
8. Berikut ini termasuk dalam struktur kontrol keputusan
a. IF, IF ELSE, WHILE
b. IF, SWITCH, WHILE
c. FOR, WHILE, DO WHILE
d. IF, IF ELSE, SWITCH
9. Perhatikan potongan pseudocode berikut
x 3
y 5
IF (x < y AND (x + 2) < y) = false THEN
x x + y
y y x
END IF
z x + y
Berapakah nilai z?
a. 5
b. 8
c. 10
d. 0
10. Perhatikan potongan pseudocode berikut
-
SWITCH x
CASE 4: Write(Sangat)
CASE 3: Write(Memuaskan)
BREAK
CASE 2: Write(Cukup)
BREAK
CASE 0: Write(Sangat)
CASE 1:
DEFAULT: Write(Kurang)
END SWITCH
Bila x bernilai 5, maka outputnya adalah (PERHATIKAN LETAK BREAK)
a. Sangat Memuaskan
b. Sangat
c. Kurang
d. (tidak ada output) atau press any key to continue
11. Perhatikan potongan pseudocode berikut
x false
DO
x NOT x
WHILE x
Berapa kalikah terjadi perulangan?
a. tidak terjadi perulangan
b. perulangan tidak berhenti
c. 1 kali
d. 2 kali
Untuk soal nomor 12 s/d 15, perhatikan pseudocode berikut ini
PROGRAM Min
{Mencari nilai terkecil dari 5 input bilangan}
DEKLARASI
Min, i, n: Integer
ALGORITMA
Min 0
FOR i 0 TO 4
Read(n)
IF n < Min THEN
Min n
END IF
END FOR
Write(Min)
12. Variabel manakah yang digunakan untuk menampung input?
-
a. Min b. i c. n d. Integer
13. Berapa kalikah terjadi perulangan?
a. 5 b. 4 c. 1 d. 0
14. Bila diberikan input: 5, 3, -2, 8, 1 maka nilai Min adalah
a. 1 b. -2 c. 0 d. 8
15. Bila diberikan input: 4, 1, 5, 2, 1 maka nilai Min adalah
a. 1 b. 0 c. 5 d. 4
b. Soal Esai (3 Soal, nilai maksimal 70)
16. Perhatikan dengan baik program di bawah ini (soal tentang tipe data, variabel, operator, &
input-output standar) : (nilai 20)
#include
int main() {
int a, b, c, d;
printf("Masukkan bilangan 1 :\n");scanf("%d", &a);
printf("Masukkan bilangan 2 :\n");scanf("%d", &b);
printf("a = %d\nb = %d\n", a, b);
// operasi logika
printf("a > b : %d\n", a > b);
printf("a < b : %d\n", a < b);
printf("a == b : %d\n", a == b);
printf("a != b : %d\n", a != b);
c = a == b;
printf("c : %d\n", c);
printf("!c : %d", !c);
return 0;
}
Tampilkan dengan runtut outputnya mulai dari awal program sampai akhir program. Disertai
dengan komentar penjelasan program akan lebih baik.
17. Perhatikan dengan baik program di bawah ini (soal tentang struktur kontrol keputusan, tipe
data, variabel, operator, & input-output standar): (nilai 20)
#include
-
int main()
{
float ipk;
printf("Nilai IPK : ");
scanf("%f",&Ipk);
if(ipk >= 2.00 & ipk 2.75 & ipk 3.50 & ipk
-
printf("*");
}
printf("\n");
}
return 0;
}
a. Teman-teman tentu tahu (seperti yang sudah dicoba saat praktikum di lab), jika program
diatas dijalankan (dengan masukan tingginya 6) maka outputnya adalah segitiga siku-siku
bergambar * seperti gambar berikut :
Jika kita tambahkan 3 perulangan lagi di sebelum script printf seperti berikut
(PERHATIKAN EKSPRESI DI DALAM TANDA () MILIK FOR, ADA YANG SAMA DENGAN FOR
LAINNYA, ITU KUNCINYA UNTUK MENJAWAB SOAL INI):
#include
int main() {
int i, j, t;
printf("-- Program bangun datar matematika --\n");
printf("tinggi: ");
scanf("%d", &t);
// struktur for bersarang
for(i = 1; i = 1; j--) {
printf(" ");
}
for(j = 1; j = 1; j--) {
printf("#");
}
for(j = 1; j
- for(j = 1; j