Soal-Soal Algoritma - WordPress.com

124 downloads 1510 Views 386KB Size Report
22 Mar 2013 ... tahapan-tahapan tersebut. (dari: Bundel Pembahasan Soal OSI ) .... Ki (1 ≤ Ai ≤ Ci ≤ W,1 ≤ Bi ≤ Di ≤ H) dimana. (Ai ,Bi ) melambangkan ...
Soal-Soal Algoritma M. Jamhuri

March 22, 2013

M. Jamhuri

Soal-Soal Algoritma

Soal-Soal dari (http://projecteuler.net)

Problem 1 Jika kita daftar semua bilangan asli di bawah 10 yang merupakan kelipatan dari 3 atau 5, kita mendapatkan 3, 5, 6, dan 9. Jumlah dari bilangan-bilangan tersebut adalah 23. Tentukan jumlah dari semua kelipatan dari 3 atau 5 di bawah 1000.

M. Jamhuri

Soal-Soal Algoritma

Problem 2 Setiap bilangan baru dalam urutan Fibonacci dihasilkan dengan menambahkan dua bilangan sebelumnya. Dengan dimulai dari 1 dan 2, 10 suku pertamanya adalah: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, . . . Misalkan terdapat barisan bilangan Fibonacci yang nilainya tidak melebihi 4 juta, tentukan jumlah semua bilangan-bilangan yang positif.

M. Jamhuri

Soal-Soal Algoritma

Contoh Soal Tipe Eksekusi (OSK 2010)

Soal 34 Suatu array X berindeks dari 1 s.d. 10 dan setiap elemennya berisi huruf-huruf berurutan dari ’a’ sampai ’j’. Suatu algoritma bekerja pada array tersebut sbb. (Prosedur swap(a,b) adalah menukarkan harga a dan b).

Hasil yang dicetak adalah:

M. Jamhuri

Soal-Soal Algoritma

Soal 35 Dari soal no 34, jika algoritma yang bekerja pada array tersebut adalah sebagai berikut

M. Jamhuri

Soal-Soal Algoritma

Soal 36 Dari soal no 34, suatu algoritma bekerja pada array tersebut sebagai berikut

M. Jamhuri

Soal-Soal Algoritma

Soal-Soal OSK 2011

Soal 37

M. Jamhuri

Soal-Soal Algoritma

Soal Menulis Program

Misalkan ada dua variabel x dan y , dan variabel hasil yang nilai awalnya 0. Lakukan proses berikut selama nilai x lebih besar dari 0: jika nilai x ganjil maka nilai hasil := hasil + y nilai x selanjutnya adalah nilai x sebelumnya dibagi dua, bila ada hasil pecahan, maka pecahannya dibuang. (contoh bila nilai x sebelumnya 1, maka nilai x selanjutnya 0) nilai y selanjutnya adalah nilai y sebelumnya dikali dua

Manakah program pseudo-pascal yang merupakan program dari tahapan-tahapan tersebut (dari: Bundel Pembahasan Soal OSI )

M. Jamhuri

Soal-Soal Algoritma

Soal Menulis Program

Misalkan ada dua variabel x dan y , dan variabel hasil yang nilai awalnya 0. Lakukan proses berikut selama nilai x lebih besar dari 0: jika nilai x ganjil maka nilai hasil := hasil + y nilai x selanjutnya adalah nilai x sebelumnya dibagi dua, bila ada hasil pecahan, maka pecahannya dibuang. (contoh bila nilai x sebelumnya 1, maka nilai x selanjutnya 0) nilai y selanjutnya adalah nilai y sebelumnya dikali dua

Manakah program pseudo-pascal yang merupakan program dari tahapan-tahapan tersebut (dari: Bundel Pembahasan Soal OSI )

M. Jamhuri

Soal-Soal Algoritma

Soal Menulis Program

Misalkan ada dua variabel x dan y , dan variabel hasil yang nilai awalnya 0. Lakukan proses berikut selama nilai x lebih besar dari 0: jika nilai x ganjil maka nilai hasil := hasil + y nilai x selanjutnya adalah nilai x sebelumnya dibagi dua, bila ada hasil pecahan, maka pecahannya dibuang. (contoh bila nilai x sebelumnya 1, maka nilai x selanjutnya 0) nilai y selanjutnya adalah nilai y sebelumnya dikali dua

Manakah program pseudo-pascal yang merupakan program dari tahapan-tahapan tersebut (dari: Bundel Pembahasan Soal OSI )

M. Jamhuri

Soal-Soal Algoritma

Soal Menulis Program

Misalkan ada dua variabel x dan y , dan variabel hasil yang nilai awalnya 0. Lakukan proses berikut selama nilai x lebih besar dari 0: jika nilai x ganjil maka nilai hasil := hasil + y nilai x selanjutnya adalah nilai x sebelumnya dibagi dua, bila ada hasil pecahan, maka pecahannya dibuang. (contoh bila nilai x sebelumnya 1, maka nilai x selanjutnya 0) nilai y selanjutnya adalah nilai y sebelumnya dikali dua

Manakah program pseudo-pascal yang merupakan program dari tahapan-tahapan tersebut (dari: Bundel Pembahasan Soal OSI )

M. Jamhuri

Soal-Soal Algoritma

Soal Menulis Program

Misalkan ada dua variabel x dan y , dan variabel hasil yang nilai awalnya 0. Lakukan proses berikut selama nilai x lebih besar dari 0: jika nilai x ganjil maka nilai hasil := hasil + y nilai x selanjutnya adalah nilai x sebelumnya dibagi dua, bila ada hasil pecahan, maka pecahannya dibuang. (contoh bila nilai x sebelumnya 1, maka nilai x selanjutnya 0) nilai y selanjutnya adalah nilai y sebelumnya dikali dua

Manakah program pseudo-pascal yang merupakan program dari tahapan-tahapan tersebut (dari: Bundel Pembahasan Soal OSI )

M. Jamhuri

Soal-Soal Algoritma

Jawaban

M. Jamhuri

Soal-Soal Algoritma

Perhatikan kode berikut untuk soal 2 dan 3

M. Jamhuri

Soal-Soal Algoritma

Soal 4

Lengkapilah fungsi maksimum diatas, agar menghasilkan nilai maksimum dari array a dari indeks 0 sampai ke N − 1, N > 0 tuliskan kodenya!

M. Jamhuri

Soal-Soal Algoritma

Jawaban

M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial Kode Soal Batas Run-time Batas Memori

OSN601 1 detik / test-case 32 MB

Soal Diberikan sebuah bilangan N, N! disebut N faktorial dan nilainya dihitung dengan rumus : N × (N − 1) × (N − 2) . . . 1. Tugas Anda adalah menghitung berapa jumlah angka nol berturutan yang mengakhiri N!. Sebagai contoh: N = 10, 10! = 3628800, maka jumlah angka nol adalah 2. N = 8, 8! = 40320, jumlah angka nol adalah 1 (nol di tengah tidak dihitung). M. Jamhuri

Soal-Soal Algoritma

Faktorial

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Masukan: Masukan hanya terdiri dari satu baris berisi bilangan bulat N(1 ≤ N ≤ 10000).

Keluaran: Tuliskan satu bilangan bulat yang menyatakan jumlah angka nol yang mengakhiri N!.

M. Jamhuri

Soal-Soal Algoritma

Melukis

Soal Buatlah sebuah program yang akan menimpa nilai dari matriks berukuran W × H sebanyak N langkah. Pada setiap langkah diberikan posisi pojok kiri atas (left, top) dan paling kanan bawah (right, bottom) dari area persegi yang akan ditimpa dengan nilai K . Keluaran adalah kondisi akhir matriks setelah langkah ke-N dijalankan.

M. Jamhuri

Soal-Soal Algoritma

Melukis

Soal Buatlah sebuah program yang akan menimpa nilai dari matriks berukuran W × H sebanyak N langkah. Pada setiap langkah diberikan posisi pojok kiri atas (left, top) dan paling kanan bawah (right, bottom) dari area persegi yang akan ditimpa dengan nilai K . Keluaran adalah kondisi akhir matriks setelah langkah ke-N dijalankan.

M. Jamhuri

Soal-Soal Algoritma

Melukis

Soal Buatlah sebuah program yang akan menimpa nilai dari matriks berukuran W × H sebanyak N langkah. Pada setiap langkah diberikan posisi pojok kiri atas (left, top) dan paling kanan bawah (right, bottom) dari area persegi yang akan ditimpa dengan nilai K . Keluaran adalah kondisi akhir matriks setelah langkah ke-N dijalankan.

M. Jamhuri

Soal-Soal Algoritma

Melukis

Soal Buatlah sebuah program yang akan menimpa nilai dari matriks berukuran W × H sebanyak N langkah. Pada setiap langkah diberikan posisi pojok kiri atas (left, top) dan paling kanan bawah (right, bottom) dari area persegi yang akan ditimpa dengan nilai K . Keluaran adalah kondisi akhir matriks setelah langkah ke-N dijalankan.

M. Jamhuri

Soal-Soal Algoritma

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Format Masukan dan Keluaran Format Masukan: Baris pertama berisi dua buah bilangan bulat, W (1 ≤ W ≤ 20) dan H (1 ≤ H ≤) . Baris kedua berisi sebuah bilangan bulat N (1 ≤ N ≤ 20) . N baris berikutnya berisi lima buah bilangan bulat Ai , Bi , Ci , Di dan Ki (1 ≤ Ai ≤ Ci ≤ W , 1 ≤ Bi ≤ Di ≤ H) dimana (Ai , Bi ) melambangkan koordinat (left, top) , (Ci , Di ) melambangkan kordinat (right, bottom) dan Ki nilai yang harus ditimpakan.

Format Keluaran: H baris yang masing-masing terdiri atas tepat W karakter tanpa dipisahkan oleh spasi yang menggambarkan kondisi akhir matriks.

M. Jamhuri

Soal-Soal Algoritma

Contoh Masukan dan Keluaran

Pecahan Uang

Soal Diberikan sebuah nilai uang dalam dolar sebesar K . Buatlah sebuah program yang akan menghasilkan pecahan dolar bernilai total K dengan memakai uang pecahan terbesar. Jika uang pecahan terbesar tidak dapat dipakai (karena jumlah uang akan melebihi pecahan terbesar), maka diambil pecahan yang lebih kecil, dan seterusnya. Pecahan yang tersedia adalah 1 dolar, 2 dolar, 5 dolar, 10 dolar, 20 dolar, 50 dolar, 100 dolar, 200 dolar, 500 dolar, dan 1000 dolar.

M. Jamhuri

Soal-Soal Algoritma

Pecahan Uang

Soal Diberikan sebuah nilai uang dalam dolar sebesar K . Buatlah sebuah program yang akan menghasilkan pecahan dolar bernilai total K dengan memakai uang pecahan terbesar. Jika uang pecahan terbesar tidak dapat dipakai (karena jumlah uang akan melebihi pecahan terbesar), maka diambil pecahan yang lebih kecil, dan seterusnya. Pecahan yang tersedia adalah 1 dolar, 2 dolar, 5 dolar, 10 dolar, 20 dolar, 50 dolar, 100 dolar, 200 dolar, 500 dolar, dan 1000 dolar.

M. Jamhuri

Soal-Soal Algoritma

Pecahan Uang

Soal Diberikan sebuah nilai uang dalam dolar sebesar K . Buatlah sebuah program yang akan menghasilkan pecahan dolar bernilai total K dengan memakai uang pecahan terbesar. Jika uang pecahan terbesar tidak dapat dipakai (karena jumlah uang akan melebihi pecahan terbesar), maka diambil pecahan yang lebih kecil, dan seterusnya. Pecahan yang tersedia adalah 1 dolar, 2 dolar, 5 dolar, 10 dolar, 20 dolar, 50 dolar, 100 dolar, 200 dolar, 500 dolar, dan 1000 dolar.

M. Jamhuri

Soal-Soal Algoritma

Pecahan Uang

Soal Diberikan sebuah nilai uang dalam dolar sebesar K . Buatlah sebuah program yang akan menghasilkan pecahan dolar bernilai total K dengan memakai uang pecahan terbesar. Jika uang pecahan terbesar tidak dapat dipakai (karena jumlah uang akan melebihi pecahan terbesar), maka diambil pecahan yang lebih kecil, dan seterusnya. Pecahan yang tersedia adalah 1 dolar, 2 dolar, 5 dolar, 10 dolar, 20 dolar, 50 dolar, 100 dolar, 200 dolar, 500 dolar, dan 1000 dolar.

M. Jamhuri

Soal-Soal Algoritma

Pecahan Uang

Soal Diberikan sebuah nilai uang dalam dolar sebesar K . Buatlah sebuah program yang akan menghasilkan pecahan dolar bernilai total K dengan memakai uang pecahan terbesar. Jika uang pecahan terbesar tidak dapat dipakai (karena jumlah uang akan melebihi pecahan terbesar), maka diambil pecahan yang lebih kecil, dan seterusnya. Pecahan yang tersedia adalah 1 dolar, 2 dolar, 5 dolar, 10 dolar, 20 dolar, 50 dolar, 100 dolar, 200 dolar, 500 dolar, dan 1000 dolar.

M. Jamhuri

Soal-Soal Algoritma

Format Masukan dan Keluaran

Contoh Masukan dan Keluaran

Format Masukan: Baris pertama berisi sebuah bilangan bulat K (1 ≤ K ≤ 10000) , yang merupakan jumlah uang yang harus dipecah.

Format Keluaran Satu atau lebih baris dimana masing-masing baris berisi dua buah bilangan bulat yang dipisahkan oleh sebuah spasi. Bilangan pertama adalah pecahan uang dan bilangan kedua adalah banyak lembar pecahan uang tersebut. Urutkanlah baris-baris berdasarkan pecahan uang, dari besar ke kecil. Pecahan uang yang tidak digunakan tidak perlu ditulis.

M. Jamhuri

Soal-Soal Algoritma