Pak Dengklek memberikan Anda banyak bilangan bulat N (1 ≤ N < 100.000). Jika N merupakan satuan, cetak
satuan
. Jika N merupakan puluhan, cetak puluhan
. Jika N adalah ratusan, cetak ratusan
. Jika N adalah ribuan, cetak ribuan
. Jika N adalah puluh ribuan, cetak puluhribuan
.Format Masukan
Banyak baris, antara 1 sampai 100 baris, masing-masing berisi sebuah bilangan bulat N.
Format Keluaran
Untuk setiap baris, cetak sesuai permintaan soal.
Contoh Masukan
1 12 123
Contoh Keluaran
satuan puluhan ratusan
Petunjuk
Berbeda dengan soal Case, pada soal ini Anda membaca banyak bilangan bulat, tidak hanya satu.
Pada soal ini akan diperkenalkan konsep procedure. Sebuah procedure (prosedur) adalah deretan perintah-perintah yang dapat dieksekusi dengan cara memanggil namanya. Bentuk umum deklarasi prosedur adalah:
procedure <nama>(<daftar parameter>); <daftar deklarasi> begin <perintah-perintah> end;
Contohnya, kita dapat membuat sebuah procedure bernama TulisJawaban:
procedure TulisJawaban(x: integer); begin case x of 1..9: begin writeln('satuan'); end; 10..99: begin writeln('puluhan'); end; 100..999: begin writeln('ratusan'); end; 1000..9999: begin writeln('ribuan'); end; 10000..30000: begin writeln('puluhribuan'); end; end; end;
Setelah itu prosedur TulisJawaban ini dapat kita gunakan untuk memecahkan masalah awal:
while not eof(input) do begin readln(bil); TulisJawaban(bil); end;
Untuk setiap bil yang dibaca, nilai variabel bil akan "dimasukkan" ke dalam variabel x di dalam prosedur TulisJawaban. Lalu prosedur tersebut akan mencetak hasilnya, tergantung pada nilai x. Secara keseluruhan, program ini akan mengeluarkan jenis bilangan untuk setiap bilangan yang dibaca.
Perhatikan kesamaan penulisan readln(bil); dan TulisJawaban(bil);. Sesungguhnya, readln dan writeln juga adalah prosedur, tetapi prosedur-prosedur tersebut sudah dibuatkan untuk kita, sehingga kita tinggal menggunakannya saja.
Jawabannya adalah :
No comments:
Post a Comment