Senin, 07 Mei 2012

0 OSN FISIKA 2006

01.    Seorang berjalan menuruni sebuah tangga eskalator yang sedang bergerak turun memerlukan waktu 1 menit. Jika kecepatan berjalannya diduakalikan maka memerlukan waktu 40 detik. Berapa waktu yang diperlukan jika orang tersebut relax (diam) ?
02.    Sebuah bandul sederhana panjang tali l berotasi  pada bidang horizontal (ayunan konis). Jika periode rotasinya T, tentukan besar sudut  (nyatakan dalam l,  T dan g).
03.    Tentukan percepatan masing-masing benda yang ditunjukkan pada gambar Jika nilai  Abaikan gesekan.
  
04.    Sebuah sistem ditunjukkan seperti pada diagram berikut, dimana kedua balok bebas bergerak dari keadaan diam tanpa gesekan. Mana yang pertama kali terjadi : balok A akan menyentuh katrol atau balok B akan menumbuk dinding? Abaikan semua gesekan.
05.    Sebuah koin dijatuhkan ke dalam sebuah sumur. Jika waktu total dari koin mulai dijatuhkan sampai terdengar bunyi pantulan bahwa koin telah menyentuh permukaan air adalah T, dan kecepatan gelombang suara v serta percepatan gravitasi g, nyatakan kedalaman permukaan air sumur dalam T, v dan g.
06.    Seorang pemain ski melompat dengan sudut 370 dan laju v0 = 10 m/s, kemudian Ia mendarat dan menempuh jarak sejauh l pada bidang miring (lihat gambar). Jika sudut kemiringan bidang 450; Tentukan jarak l yang ditempuh. (asumsikan g = 10 m/s2 dan sin 370 = 0,6)
07.    Sebatang tongkat homogen panjangnya l dan massanya m, salah satu ujungnya  bersandar pada dinding licin dan membentuk sudut   terhadap dinding, sedangkan ujung yang lain terletak pada lantai kasar.
a.    Tentukan nilai gaya kontak dinding terhadap tangga (nyatakan dalam m,g dan θ ).
b.    Tentukan nilai gaya kontak dinding terhadap tangga jika sudut   tidak diketahui tapi diketahui koefisien gesek statisnya   (nyatakan dalam  ,m dan g).
08.    Sebuah bandul diberi simpangan   derajat dan berayun dengan periode T detik. Apa yang terjadi dengan periode ayun bandul tersebut jika diberi simpangan     derajat ? ( dimana   )

0 OSN FISIKA 2007

1. Sebuah batu beratnya w dilemparkan vertikal ke atas diudara dari lantai dengan kecepatan awal v0 . Jika ada gaya konstan f  akibat gesekan/hambatan udara selama melayang dan asumsikan percepatan gravitasi bumi g konstan, maka tentukan :
    a). tinggi maksimum yang dicapai (nyatakan dalam : v0, g, f  dan w )
    b). laju batu saat menyentuh lantai kembali (nyatakan dalam : v0, f dan w)
2. Sebuah kereta dengan massa M dapat bergerak bebas tanpa gesekan di atas sebuah lintasan lurus. Mula-mula ada N orang masing-masing dengan massa m berdiri diam di atas kereta yang juga berada pada keadaan diam. Tinjau 2 kasus.
a.    Semua orang di atas kereta berlari bersama ke salah satu ujung kereta dengan laju relatif terhadap kereta vr dan kemudian melompat turun bersama-sama. Berapakah kecepatan kereta setelah orang-orang ini melompat turun?
b.    Sekarang tinjau kasus kedua. Kereta dan semua orang mula mula diam. Dalam kasus kedua ini, semua orang lari bergantian. Jadi orang pertama lari meninggalkan kereta dengan laju relatif terhadap kereta vr, kemudian disusul orang kedua berlari ke ujung yang sama dengan laju relatif terhadap kereta vr. Demikian seterusnya sampai orang ke-N. Berapakah kecepatan akhir kereta?
c.    Pada kasus mana kecepatan akhir kereta lebih tinggi?
3. Sistem massa pegas di bawah terdiri dari suatu balok dengan massa m dan dua pegas dengan konstanta pegas k dan 3k. Massa m dapat berosilasi ke atas dan ke bawah, tetapi orientasinya dipertahankan mendatar. Kedua pegas dihubungkan dengan suatu tali tanpa massa melalui suatu katrol licin. Berapakah periode osilasi sistem? (nyatakan dalam : m dan k)
    Teori yang mendasari :
•    Hukum Hooke
•    Osilasi


4. Sebuah cincin dengan massa m mempunyai suatu titik manik-manik ditempel di pinggiran cincin itu. Massa manik-manik m juga. Jari jari cincin adalah R (momen inersia cincin  ). Abaikan dimensi manik-manik (anggap seperti massa titik). Cincin dan manik-manik bergerak bersama. Mula-mula kecepatan sudut mereka adalah 0 dan manik-manik berada di posisi paling rendah. Berapakah nilai maksimum 0 agar sistem tidak melompat saat manik-manik berada pada posisi tertinggi?
Anggap lantai kasar, sehingga sistem cincin manik-manik bisa menggelinding tanpa slip.
    Teori yang mendasari :
•    Kekekalan energi
•    Hukum Newton tentang gerak

      


5. Model untuk pegas bersama.
    Suatu pegas memiliki konstanta pegas k dan massa m. Untuk memudahkan perhitungan, pegas ini bisa dimodelkan dengan sistem yang terdiri atas susunan massa dan pegas. Untuk pendekatan pertama, anggap system pegas bermassa ini ekuivalen dengan sistem massa-pegas yang terdiri dari dua massa identik m’ dan dua pegas identik yang tak bermassa dengan konstanta k’. Jika kita menambahkan terus jumlah massa dan pegas dalam model ini maka akan semakin mendekati pegas sesungguhnya.
    Mula-mula sistem dibiarkan pada keadaan setimbang. Panjang pegas menjadi L (panjang kendurnya L0 ). Jika ujung atas A dipotong,
a.    berapa percepatan massa bawah menurut model ini ?
b.    Berapa percepatan massa atas menurut model ini ?


6.    Perhatikan sistem di bawah ini.
   



    Ada dua balok, masing-masing massanya m dan M. Koefisien gesekan antara balok M dengan lantai µ1 , sedangkan koefisien gesekan antara balok m dengan balok M adalah µ2. Pada balok m diberi gaya mendatar F yang cukup besar sehingga balok m akan bergerak dipunggung balok M, dan balok M juga bergerak akibat gaya F ini (asumsi µ2 cukup besar). Jika balok m berpindah sejauh L relatif terhadap balok M, berapa usaha yang dilakukan gaya F ?

0 OSN FISIKA 2008

1.    Sebuah elevator naik ke atas dengan percepatan ae. Saat ketinggian elevator terhadap tanah adalah h dan kecepatannya adalah ve (anggap t = 0), sebuah bola dilempar vertikal ke atas dengan laju vbe relatif terhadap elevator. Percepatan gravitasi adalah g.
a)    Hitung waktu yang diperlukan bola (t1) untuk mencapai ketinggian maksimum relatif terhadap bumi! (1 poin)
b)    Hitung ketinggian maksimum bola relatif terhadap tanah! (2 poin)
c)    Hitung percepatan bola relatif terhadap kerangka elevator! (1 poin)
d)    Hitung waktu yang diperlukan bola (t2) untuk mencapai ketinggian maksimum relatif terhadap elevator!(2 poin)
e)    Hitung ketinggian maksimum bola relatif terhadap elevator! (1 poin)
f)    Kapan bola kembali menyentuh elevator? (2 poin)

2.    Sebuah peluru bermassa 10 gram bergerak ke atas dengan kecepatan 1000 m/s menumbuk lalu menembus sebuah balok melalui pusat massa balok itu. Balok yang bermassa 5 kg ini mula-mula diam. Anggap proses tumbukan sangat singkat.

a)    Jika kecepatan peluru setelah menembus balok adalah 400 m/s, tentukan kecepatan balok tersebut! (2 poin)
b)    Tentukan tinggi maksimum yang dapat dicapai balok! (2 poin)
c)    Berapa energi yang hilang dalam proses tumbukan? (2 poin)
    Anggap percepatan gravitasi bumi g = 10 m/s2.


3.    Seorang menarik poros katrol dengan gaya F ke atas seperti pada gambar. Anggap katrol dan tali tidak bermassa. Massa m2 lebih besar dari pada massa m1.

a)    Hitung gaya normal (N2) maksimum agar m2 tetap tidak bergerak.
(1 poin)
b)    Hitung gaya tegang tali T agar m2 tetap tidak bergerak. (2 poin)
c)    Hitung gaya maksimum F agar m2 tetap tidak bergerak.(1 poin)
d)    Berapa percepatan massa m1 untuk harga gaya maksimum ini? (2 poin)


4.    Sebuah tongkat homogen dengan panjang l dan massa m berotasi pada sumbu yang terletak pada salah ujungnya. Anggap tidak ada gesekan. Batang dilepas dari posisi horizontal dari keadaan diam. Saat batang berada pada keadaan vertikal, batang menumbuk sebuah bola dengan massa M yang diam. Tumbukan yang terjadi tidak lenting sama sekali.


a)    Tentukan momen inersia batang terhadap sumbu rotasi! (nyatakan dalam m dan l)  (1 poin)
b)    Dari hukum kekekalan energi, tentukan energi total batang mula-mula! (1 poin)
c)    Tentukan juga energi total batang sesaat setelah tumbukan! (1 poin)
d)    Tentukan kecepatan sudut batang sesaat sebelum tumbukan! (1 poin)
e)    Momentum sudut sistem tersebut kekal, tentukan momentum sudut mula-mula dan momentum sudut akhir sistem tersebut! (2 poin)
f)    Tentukan kecepatan sudut batang sesaat setelah tumbukan! (1 poin)
g)    Berapakah energi yang hilang dalam proses tumbukan (2 poin)


5.    Perhatikan sistem di samping. Ada benang melilit sebuah silinder
dan ujung lain benang diikat ke dinding. Jarak dari titik ikat ke titik sentuh silinder dengan dinding adalah L. Jari-jari silinder adalah r. Anggap ada gesekan antara silinder dan dinding dengan koefisien
gesek maksimum  Massa silinder adalah m.

a)    Gambarkan gaya-gaya yang bekerja pada silinder (1 poin)
b)    Nyatakan kesetimbangan gaya untuk sumbu x dan sumbu y! (2 poin)
c)    Nyatakan kesetimbangan torka! (1 poin)
d)    Nyatakan hubungan sin Ө dan cos Ө terhadap r dan L! (1 poin)
e)    Tentukan tegangan tali T dalam r, L, m dan g ! (0,5 poin)
f)    Tentukan gaya normal N dalam r, L, m dan g ! (1 poin)
g)    Tentukan gaya gesek f dalam r, L, m dan g ! (0,5 poin)
h)    Hitung berapa nilai minimum agar kesetimbangan ini
 bisa tercapai! (2 poin)
   

6.    Sebuah helikopter berusaha menolong seorang korban banjir. Dari suatu ketinggian L, helikopter ini menurunkan tangga tali bagi sang korban banjir. Karena ketakutan, sang korban memanjat tangga tali dengan percepatan ak relatif terhadap tangga tali. Helikopter sendiri diam  di tempat (relatif terhadap bumi) dan menarik tangga tali naik dengan percepatan a relatif terhadap tanah. Anggap tali diam saat korban mulai memanjat (kecepatan mula mula adalah nol). Anggap massa korban m, percepatan gravitasi g.dan massa tangga tali bisa diabaikan.
a.    Hitung waktu yang dibutuhkan sang korban agar sampai ke helikopter, nyatakan dalam a, ak dan L! (1 poin)
b.    Tentukan panjang tali yang dipanjat oleh korban, nyatakan dalam a, ak dan L! (1 poin)
c.    Tentukan bagian tali yang ditarik oleh helikopter, nyatakan dalam a, ak dan L! (1 poin)
d.    Hitung usaha korban untuk naik ke helikopter, dalam m, g, a, ak dan L! (1,5 poin)
e.    Hitung juga usaha helikopter untuk menarik korban sampai korban mencapai helikopter, dalam m, g, a, ak dan L! (1,5 poin)


7.    Sebuah bola uniform mempunyai rongga di dalam
nya. Rongga ini menyentuh permukaan bola dan
persis menyentuh pusat bola (diameter rongga
adalah R). Jari-jari bola adalah R. Massa bola jika
tidak ada rongga adalah M dan pusat koordinatnya
adalah pusat bola tanpa rongga.
a.    Nyatakan massa dalam M dan pusat massa dalam R dari bola tanpa rongga (0,5 poin)
b.    Nyatakan massa dalam M dan pusat massa dalam R dari rongga (0,5 poin)
c.    Nyatakan massa dalam M dari bola dengan rongga (0,5 poin)
d.    Berapa jarak pusat massa bola berongga dari pusat bola dalam R? (1,5 poin)
e.    Hitung gaya gravitasi yang dirasakan massa m akibat bola berongga! Nyatakan dalam G, M, m, d dan R (3 poin)


8.    Perhatikan kereta di samping. Massa kereta M dan massa balok di atasnya m. Sebuah pegas dengan konstanta pegas k berada dalam keadaan tertekan dengan simpangan A. Mula-mula semua sistem diam. Saat t = 0, massa m dan M dilepas sehingga massa m dan M memiliki kecepatan relatif terhadap bumi masing-masing vm dan vM saat pegas kendur.

a)    Tuliskan persamaan kekekalan energi sistem dalam k, A, m, M, vm dan vM ! (1 poin)
b)    Tuliskan persamaan kekekalan momentum linier dalam m, M, vm dan vM ! (1 poin)
c)    Hitung vm dalam k, A, m, M, vm dan vM ! (1,5 poin)
d)    Hitung vM dalam k, A, m, M, vm dan vM ! (1,5 poin)
e)    Hitung waktu massa m mencapai tanah! (2 poin)
f)    Hitung jarak antara kedua massa saat massa m menyentuh tanah! (2 poin)

0 OSN TIK

1. Manakah yang mendeklarasikan tipe enumerasi dengan tepat?
a. Type a=integer;
b. Type a=1..300;
c. Type a=(baik, jelek, buruk);
d. Type a=[baik, jelek, buruk];
e. Type a=baik, jelek, buruk;
Jawab: c. Type a=(baik, jelek, buruk);

2. Tipe di bawah ini mana yang tidak dapat melakukan operasi aritmatika?
a. integer
b. byte
c. real
d. boolean
e. word
Jawab: d. Boolean

3. Deklarasi prosedur manakah yang dibenarkan?
a. procedure hapus;
b. procedure hapus(s:string);
c. procedure hapus(var s:string);
d. procedure hapus(s:string):boolean;
e. procedure hapus(var data);
Jawab: d. procedure hapus(s:string):boolean; Pembahasan: Untuk penulisan prosedur, tidak diperbolehkan adanya nilai kembali. Sedangkan parameter tanpa tipe data (pada opsi e), dapat dibenarkan.

4. Deklarasi function manakah yang tidak diizinkan?
a. Function density(x:real):real;
b. Function density(b:byte):byte;
c. Function density(var s:string):real;
d. Function density(var data):byte;
e. Function density;
Jawab: e. Function density; Pembahasan: Untuk penulisan function , harus ada nilai kembali.

5. Tipe variabel ekspresi manakah yang tidak dapat ditampilkan dengan procedure Writeln?
a. Type T=Integer;
b. Type T=String;
c. Type C=Char;
d. Type T=(Small, Medium, Large)
e. Semua valid
Jawab: d. Type T=(Small, Medium, Large) Pembahasan: Opsi d adalah tipe data enumerasi. Tipe data enumerasi tidak dapat ditampilkan dengan perintah Writeln.

6. Dengan deklarasi berikut: Type warna=(merah,kuning,hijau,biru,hitam,putih,jingga); Var w:warna; Perintah mana yang salah?
a. If w in [warna] then writeln(‘ada’);
b. w:=merah; w:=w + kuning;
c. w:=[merah];
d. w:=hijau; dec(w);
e. w:=’Merah’;

Jawab: d. w:=hijau; dec(w); Pembahasan: Variabel w adalah variabel yang mempunyai tipe data enumerasi yang merupakan salah satu tipe data ordinal. Karena merupakan tipe data ordinal, maka variabel w dapat dioperasikan dengan fungsi atau prosedur seperti ORD, DEC, INC, PRED, dan SUCC.

7. Pada deklarasi di atas, jika variabel W1 berisi [merah,kuning,hijau] dan variabel W2 berisi [merah,kuning,hitam] maka, jika diberikan statemen W3:=W1+W2, W3 akan berisi:
a. [merah,kuning,hijau,hitam]
b. [merah,kuning,hijau,merah,kuning,hitam]
c. [hijau,hitam]
d. [merah,kuning,merah,kuning,hijau, hitam]
e. [merah,kuning]
Jawab: a. [merah,kuning,hijau,hitam] Pembahasan: Operator + pada tipe data himpunan adalah gabungan atau union.

8. Jika diberikan statemen W3:=W1-W2, W3 akan berisi:
a. [merah,kuning,hijau,hitam]
b. [merah,kuning,hijau,merah,kuning,hitam]
c. [hijau]
d. [merah,kuning,merah,kuning,hijau, hitam]
e. [merah,kuning]
Jawab: c. [hijau] Pembahasan: Operator - pada tipe data himpunan adalah operator difference. Konsep Dasar Pemrograman Prosedural 61

9. Jika diberikan statemen W3:=W1*W2, W3 akan berisi:
a. [merah,kuning,hijau,hitam]
b. [merah,kuning,hijau,merah,kuning,hitam]
c. [hijau,hitam]
d. [merah,kuning,merah,kuning,hijau, hitam]
e. [merah,kuning]
Jawab: c. [hijau,hitam] Pembahasan: Operator * pada tipe data himpunan adalah operator irisan. SOAL-SOAL INPUT / OUTPUT

10. Perhatikan potongan program berikut ini : Begin Writeln((10 shr 1) shl 2); end. Apa yang dihasilkan oleh program diatas...
a. 18 b. 19 c. 20 d. 21 e. 22
Jawab: c. 20 Pembahasan: Operator SHR adalah operasi pergeseran bit ke kanan dan operasi shl adalah operasi pergeseran bit ke kiri. 10 shr 1 = 5 ? (1010 shr 1 = 0101 = 5) 5 shl 2 = 20 (0101 shl 2 = 10100 = 20) SOAL-SOAL STRUKTUR KONTROL

11. Bagaimana keluaran program di bawah ini? Var I:integer; Begin I:=2; Case I of 1,3,5,7,9:writeln(‘Ganjil’); 2:writeln(‘Prima genap’); 0..10:writeln(‘Normal’); else writeln(‘Tidak normal’); end; end;
a. Prima genap
b. Normal
c. Prima genap Normal
d. Normal Prima genap
e. Prima genap Tidak normal
Jawab: a. Prima genap Pembahasan: Struktur kendali case akan segera keluar untuk menjalanakan statement berikutnya setelah menemukan nilai yang tepat. Perhatikan program di bawah ini: var I,j,k:integer; L:byte; begin i:=3; j:=4; k:=32; L:=0; {If – 1 } if i + j and k =0 then writeln(‘Betul’) else Konsep Dasar Pemrograman Prosedural 63 writeln(‘Salah); {If – 2 } if (i = 2) and (j <> i) then writeln(‘Betul’) else writeln(‘Salah); {If – 3} if not L in [1..120] then writeln(‘Betul’) else writeln(‘Salah’); end. Program diatas berisi tiga perintah if then else yang saling tidak berkaitan, masing-masing IF diberi nama IF – 1, IF – 2, IF – 3.

12. Perintah if manakah yang tidak dibenarkan:
a. If - 1
b. If - 2
c. If - 3
d. If – 1 dan if - 2
e. Tidak ada if yang salah
Jawab: e. Tidak ada if yang salah Pembahasan: Pada If – 1, ekspresi i+j and k adalah ekspresi matematika dengan urutan pengerjaan j and k kemudian ditambahkan dengan i. Ini merupakan ekspresi yang valid dalam bahasa Pascal Pada If – 3, ekspresi Not L akan dioperasikan terlebih dulu. Ini juga merupakan ekspresi yang valid dalam bahasa Pascal.

13. Pada program di atas, if mana yang menghasilan output “Betul”?
a. If - 1
b. If - 2
c. If - 3
d. If – 1 dan if - 2
e. Tidak ada if yang menghasilkan “Betul”
Jawab: 64 Konsep Dasar Pemrograman Prosedural b. If - 2 Pembahasan: Urutan pengerjaan operator AND dan OR adalah AND akan dievaluasi terlebih dulu. Pada kondisi pertama, (i = 2) and (j <>i), akan menghasilkan TRUE, sehingga yang dicetak adalah “Betul”

SOAL-SOAL PERULANGAN

14. Perhatikan penggalan program berikuti ni : const Data: array [1..3,1..3] of char= ((‘1’,’1’,’2’)(‘2’,’2’,’4’),(‘4’,’4’,’8’)); var i, j : byte; begin for i:= 1 to 3 do begin for j:=3 downto 1 do write(Data[i,j]): writeln; end; end. Apa keluaran program di atas ?
a. 112 224 448
b. ‘1’’1’’2’ ’2’’2’’4’ ’4’’4’’8’
c. 211 422 844
d. ‘2’’1’’1’ ’4’’2’’2’ ’8’’4’’4’
e. 124 124 248
Jawab: c. 211 422 844 15. Perhatikan program dibawah ini : type data=set of char; var setchar:data; s:string; i:integer; begin setchar:=[]; readln(s); for i:=1 to length(s) do begin if not(s[i] in setchar) then begin setchar:=setchar+[s[i]]; write(s[i]); end; end; writeln; end.

15. Output dari program di atas jika input 'To be or Not To be that is the question' adalah
a. ‘To berNthaisqun.'
b. ‘To berNhaisqu`
c. ‘to@bernhaisquN'
d. ‘T N.'
e. ‘OBERTHAISQUN’
Jawab: a. ‘To berNthaisqun.' Pembahasan: Yang perlu diperhatikan adalah bahwa tidak ada anggota yang sama dalam sebuah set (himpunan).

16. Gunakan program berikut untuk menjawab pertanyaan : type data=set of byte; var setint:data; i:integer; begin setint:=[1]; setint:=setint+[3]; setint:=[5]; for i:=1 to 5 do begin if (i in setint) then continue else setint:=[i]; end; end. Output dari program di atas adalah:
a. [1,2,3,4,5]
b. [1,3,5]
c. [5]
d. [1,3]
e. []
Jawab: c. [5] Pembahasan: Statement di bawah ini setint:=[1]; setint:=setint+[3]; setint:=[5]; Akan membuat setint berisi [5] saja. Pada statement berikutnya: for i:=1 to 5 do begin if (i in setint) then continue else setint:=[i]; end; Akan membuat setint berisi nilai terakhir dari i yaitu 5. SOAL-SOAL PROSEDUR DAN FUNGSI

17. Perhatikan program berikut : var s:string; Konsep Dasar Pemrograman Prosedural 67 begin s:='TOKI GO GET GOLD!'; delete(s,1,length(s)-12); writeln(s); end. Apa keluaran program di atas ?
a. GO GET GOLD!
b. GO GET GOLD!
c. GET GOLD!
d. TOKI GO GET
e. TOKI GO GE
Jawab: a. GO GET GOLD! Pembahasan: Procedure delete: Deklarasi : procedure Delete(var S: String; Index: Integer; Count:Integer); Keterangan : procedure delete akan menghapus S sebanyak count karakter, dimulai dari posisi Index. Function length: Deklarasi : Function Length (S : String) : Integer; Keterangan : Length menghasilkan panjang dari S, bernilai antara 0 sampai dengan 255. Jika S tidak berisi apa-apa maka akan menghasilkan 0. Statement delete(s,1,length(s)-12) akan menghapus s dari posisi 1 sebanyak panjang s, yaitu 17-12 = 5. Sehingga yang dihapus adalah karakter ‘TOKI ‘ dan s akan bernilai GO GET GOLD!

18. Perhatikan penggalan program berikut : var i,k: integer; begin i:=5; k:=0; k:=trunc(sqrt(i))+1; writeln(k); end. Apa keluaran program di atas ?
a. 3
b. 2.24
c. 2
d. 0
e. program tidak dapat dijalankan
Jawab: a. 3 Pembahasan: Fungsi sqrt : Deklarasi : Function Sqrt (X : Real) : Real; Keterangan : menghasilkan akar pangkat dua dari x, di mana x harus positif Fungsi trunc: Deklarasi : Function Trunc (X : Real) : Longint; Keterangan : menghasilkan bilangan bulat dari X, akan selalu lebih kecil atau sama dengan X. Sqrt(5) akan menghasilkan 2.23 Trunc(2.23) akan menghasilkan 2 Sehingga k:=trunc(sqrt(i))+1; akan menghasilkan 3

19. Mengacu pada program berikut : var A,B:string; C:string[10]; begin A:='TOKI MEMANG';
B:='HEBAT'; C:=A+B; if (Pos(B)>0) then Begin Writeln('A'); end else Writeln('B'); end. Apa yang terjadi jika program di atas di jalankan...
a. Huruf ‘A’ tercetak
b. Huruf ‘B’ tercetak
c. Tidak dapat dipastikan
d. Terjadi error
e. Tidak bisa di compile
Jawab: e. Tidak bisa di compile Pembahasan: Kesalahan pertama yang akan ditemui program adalah pada function pos. Deklarasi : Function Pos (Substr : String; S : String) : Integer; Keterangan : function pos akan menghasilkan urutan atau posisi substr di S. Jika tidak ditemukan, maka akan menghasilkan 0. Pada program function pos hanya terdiri dari 1 parameter saja sehingga program tidak akan dapat dijalankan.

20. Perhatikan potongan program berikut : begin writeln(round(frac(3.7))); end. Apa keluaran program di atas ?
a. 0
b. 1
c. 2
d. 3
e. 4
Jawab: b. 1 Pembahasan: Fungsi frac (lihat pembahasan di atas) Fungsi round Deklarasi : Function Round (X : Real) : Longint; Keterangan : membulatkan bilangan X, yang mungkin lebih besar atau lebih kecil dari X. Frac(3.7) akan menghasilkan 0.7 Round(0.7) akan menghasilkan 1

21. Diketahui deklarasi fungsi dan variabel sebagai berikut: var St: String; procedure Sulap(var S: String); begin if S = 'Kecil’ then S :=’kecil’ else if S = ‘Besar’ then S :=’BESAR’; end; Di antara potongan program berikut, manakah yang salah?
a. St := Chr(60); Sulap(St);
b. St :=’KECIL’; Sulap(St);
c. St := Chr(45) + Chr(65); Sulap(St);
d. Sulap(‘Besar’);
e. Semua ekspresi di atas benar
Jawab: a. St := Chr(60); Sulap(St); Pembahasan: Sebuah variabel string tidak dapat diberikan nilai bertipe data character. SOAL-SOAL OPERASI FILE

22. Perintah mana yang tidak boleh digunakan untuk file bertipe text?
a. Assign
b. Reset
c. EOF
d. FilePos
e. Semua boleh digunakan untuk Text
Jawab: d. FilePos Pembahasan: Perint ah FilePos adalah perintah untuk mengetahui posisi file pointer (penunjuk file), dan hanya dapat dioperasikan untuk file bertipe bukan text. Gunakan program berikut ini untuk menjawab soal di bawah ini: program Uji; var T:Text; i,j,k:integer; begin Assign(T, 'INPUT.TXT’); Reset(T); Readln(T, i, j, k); Writeln(i,’ ’ j,’ ’, k); Readln(T,i); Readln(T,j); Writeln(i,’ ’,j); Close(T); End.

23. Misalkan file INPUT.TXT berisi baris-baris sebagai bcrikut: 3 1 4 9 5 2 6 8 7 0 Bagaimanakah output dari program tersebut?
a. 3 1 4 9 5 2 6 8 7
b. 3 1 4 9 5
c. 3 1 4 5 2
d. 3 1 4 5 8
e. Terjadi runtime error karena isi file INPUT.TXT tidak sesuai untuk program ini.
Jawab: d. 3 1 4 5 8 Pembahasan: Perintah Readln akan melakukan pembacaan di baris berikutnya. Perintah Readln pertama akan melakukan pembacaan pada file baris pertama, perintah Readln berikutnya melakukan pembacaan pada baris ke dua dan perintah Readln terakhir melakukan pembacaan pada baris ketiga.

SOAL-SOAL KASUS / MEMBACA PROGRAM

Program berikut ini dipakai untuk menjawab dua soal di bawah ini var Bil:Integer; procedure Find(B:Integer;I:Integer); var J,R:Integer; begin R:=Round(sqrt(B)); J:=2; while (J<=R) and (B Mod J<>0) do inc(J); if J<=R then begin Write(J,'*'); Find(B div J, I+1); end else if I>0 then Writeln(B,'=',Bil) else Writeln('Bilangan Prima!'); end; begin Write('Masukkan bilangan : '); Readln(Bil); Find(Bil,0); end.

24. Bagaimana output program di atas bila inputnya 42?
a. 7 * 3 * 2 = 42
b. Bilangan prima
c. =42
d. 2 * 3 * 7 = 47
e. Salah semaa
Jawab: a. 7 * 3 * 2 = 42 25. Bagaimana output program di atas bila, inputnya 23? a. = 23 b. Bilangan pima c. 23 * 1 = 23 d. = 23 Bilangan prima! e. Salah semua Jawab: b. Bilangan prima Joni, petugas statistik yang baru saja belajar Pascal. Mencoba membuat program perata-rata sebagai berikut var Amatan:array[5] of integer; Jumlah:Integer; RataRata:Integer; I:Integer; begin for I:=1 to 5 do begin Write('Amatan ke-',I,' : '); Readln(Amatan[I]); end; Jumlah:=0; For I:=1 to 5 do begin Jumlah:=Jumlah+Amatan[I]; RataRata:=Jumlah/5; Writeln('Jumlah = ',Jumlah); Writeln('Rata-rata = ',RataRata); Readln; end. Gunakan program yang dibuat oleh Joni ini untuk menjawab soal-soal berikut.

26. Ketika si Joni mencoba menjalankan program tersebut, temyata, compiler menunjukkan sebuah pesan kesalahan yang membuat: ia kebingungan. Tahukah Anda kesalahan pertama yang dibuat Joni?
a. Judul program (program Statistik) terlalu panjang, maksimum 8 karakter (misalnya: program Stat)
b. Procedure Readln (pada baris terakhir program sebelum end.) tidak boleh dipanggil tanpa parameter. Jadi seharusnya: Readln(I);
c. Statement for dengan variabel sama tidak boleh diulangi dua kali. Seharusnya dideklarasikan variabel lain, misalnya var I: Integer untuk for yang kedua
d. Deklarasi array salah, semestinya: var Amatan: array[ 1..5] of Integer;
e. Nama variabel seperti RataRata tidak valid, scharusnya Ratarata
Jawab: a. Deklarasi array salah, semestinya: var Amatan: array[ 1..5] of Integer; Pembahasan: Deklarasi dari array adalah: type identifier=array[tipe_indeks] of tipe_data di mana tipe_indeks adalah tipe data ordinal.

27. Setelah Anda memberi saran demikian, temyata Joni masih belum bisa meng-compile programnya. Apa sebabnya?
a. setiap variabel harus dideklarasikan dengan keyword var sendiri-sendiri. Misalnya: var Jumlah: Integer; var RataRata:Integer; Var I:Integer;
b. Variabel RataRata tidak harus bertipe Real
c. Semua variabel, kecuali I seharusnya adalah Real, tidak boleh Integer
d. Pemisah antara parameter dalam Write dan Writeln harus titik koma, bukan koma, Misalnya Writeln(‘Jumlah = ‘;Jumlah);
e. Semua alasan di atas salah
Jawab: c. Semua variabel, kecuali I seharusnya adalah Real, tidak boleh Integer Pembahasan: Dalam program diberikan instruksi RataRata:=Jumlah/5 yang berarti variabel RataRata harus bertipe Real. Karena operator / hanya dikenal oleh variabel yang bertipe real. Konsep Dasar Pemrograman Prosedural 75

28. Joni mengganti operator “/” dengan "div" pada baris ke-15 program tersebut. Apa akibatnya?
a. program tidak mau di-compile karena. operator div tidak dapat digunakan di situ
b. nilai rata-ratanya menjadi 5
c. nilai rata-ratanya menjadi 6
d. nilai rata-ratanya menjadi 0
e. nitai rata-ratanya menjadi 2
Jawab: b. nilai rata-ratanya menjadi 5 Pembahasan: Perintah div adalah operator pembagian yang menghasilkan pembulatan ke bawah. Gunakan program berikut ini untuk menjawab beberapa soal selanjutnya: uses crt; var j:array['A'..'Z'] of Byte; c:char; Kal:string; procedure HH(S:String); var i:integer; {baris-6} m:char; begin for i:= 1 to length(S) do begin m:=S[i]; {baris-11} if m in ['A'..'Z'] then {baris-12} inc(J[i]); end; end; begin for c:='A' to 'Z' do J[c]:=0; Kal:='PASAR'; HH(Kal); for c:='A' to 'Z' do if J[c]>0 then write(c,J[c],' '); writeln; Kal:='RAYA'; HH(Kal); for c:='Z' downto 'A' do if j[c]>0 then write(c,J[c],' '); writeln; end.

29. Bila terdapat kesalahan yang menyebabkan program sama sekali tidak dapaf dijalankan sebutkan pada baris berapa, dan bagaimana perbaikannya?
a. Kesalahan semacam ini tidak ada
b. Baris 12, seharusnya ditulis If [m] in [‘A’..’Z’] then
c. Baris 6 seharusnya ditulis var i: Char;
d. Baris 13, seharusnya ditulis lnc(J[m]);
e. Index array hanya boleh berupa angka. Jadi deklarasi variabel seharusnya ditulis: const A = 1; Z = 26; var J: array[A..Z] of Byte; c: Byte; Kal: String; dan semua konstanta karakter dalam perintah for harus diganti, misalnya: for c:= A to Z do dan eterusnya
Jawab: b. Baris 13, seharusnya ditulis inc(J[m]); Pembahasan: Variabel J adalah variabel dengan tipe data array yang mempunyai indeks [‘A’..’Z’]. Dalam program diberikan indeks berupa bilangan bulat, yaitu i. Hal ini akan menghasilkan pesan kesalahan type mismatch.

30. Dengan perbaikan seperti nomor sebelumnya (kalau ada), maka program bisa dijalankan. Apakah hasil dari program tersebut?
a. A2 PI RI SI A4 PI R2 Sl Yl
b. A2 P1 RI SI YI RI A2
c. A2 PI RI SI YI R2 A4
d. PI A2 Sl RI YI A4 R2
e. A2 P1 RI SI Yl Sl R2 PI A4
Jawab: e. A2 P1 RI SI Yl Sl R2 PI A4

31. Tindakan apakah yang dilakukan oleh subrutin HH ketika dipanggil oleh baris 19 program di atas, dengan string S berisi kata “PASAR"?
a. Menghitung frekuensi kemunculan huruf-huruf alfabet dan menyimpannya dalam array J
b. Mengumpulkan huruf-huruf alfabet yang muncul lebih dari satu kali ke dalam array J
c. Mencatat letak setiap huruf alfabet ke dalam array J
d. Menentukan huruf yang paling sering dan paling jarang muncul dalam array J e. Mengurutkan huruf-huruf menurut urutan alfabet dari yang terkecil sampai yang terbesar. Jawab: a. menghitung frekuensi kemunculan huruf-huruf alfabet dan menyimpannya dalam array J

0 OSN MATEMATIKA 2012

1.    Setiap muka sebuah kubus diberi bilangan seperti pada gambar. Kemudian setiap titik sudut dibei bilangan yang merupakan hasil penjumlahan bilangan pada muka-muka yang berdekatan dengannya. Nilai bilanga tertinggi pada titik sudut adalah ... .

2.    Jika a + b = 1, b + c = 2, dan c + a = 3, maka a + b + c = … .

3.    Pada suatu jam digital yang angka-angkanya tertera mulai dari 00.00 sampai 23:59, dimungkinan terjadi penampakan bilangan Palindrome (bilangan yang dibaca dari depan dan dari belakang  sama nilainya, misal 12:21 dan 23:32). Dalam satu hari satu malam, banyaknya bilangan Palindrome tersebut menampakkan diri adalah ... .

4.    Untuk bilangan bulat a da b, <a, b> artinya bilangan tak negative yang merupakan sisa a x b dibagi oleh 5. ilangan yang ditunjukkan oleh < - 3, 4> adalah ... .

5.    Bilangan 10 angka terbesar yang menggunakan empat angka 1, tiga angka 2, dua angka 3, dan satu angka 4, sehingga dua bilangan yang sama tidak terletak bersebelahan adalah ... .

6.    Jika sellisih dua bilangan adalah 2 dan selisih kuadrat dua bilangan itu 6, maka hasil tambah dua biangan tersebut adalah ... .
7.    Kendaraan A berjalan dengan laju 60 km/jam. Dua jam berikutnya kendaraan B dengan laju 80 km/jam berangkat dari tempat dan menuju arah yang sama. Setelah berapa jam kendaraan B dapat menyusul kendaraan A?
 
8.    Pada gambar berikut ini, ABCD adalah persegi dan ABE adalah segitiga sama sisi. Besar sudut DAE adalah ... 0.
9.    Faktorisasi prima dari 5220 adalah .... .

10.    Harga sepotong kue turun dari Rp. 250,00 menjadi Rp. 200,00. Dengan uang Rp. 4.000,00, berapa potong kue lebih banyak yang dapat dibeli sekarang?


11.    Dengan menggunakan angka 1, 1, 2, 2, 3, 3, 4, 4, bilangan yang terdiri dari 8 angka terbesar yang dapat dibentuk dengan syarat: kedua angka 1 dipisahkan oleh satu angka yang lain, kedua angka 2 dipisahkan oleh 2 angka yang lain, kedua angka 3 dipisahkan oleh 3 angka yang lain, kedua angka 4 dipisahkan oleh 4 angka yang lain, adalah ... .

12.    Hasil kali suatu bilangan genap dan suatu bilangan ganjil adalah 840. Bilangan ganjil terbesar yang memenuhi syarat tersebut adalah ... .

13.    Jumlah dua bilangan sama dengan 12. Hasil kali kedua bilangan tersebut nilai akan paling besar, jika salah satu bilangan tersebut adalah ... .


14.    Banyaknya segitiga pada gambar berikut adalah ... .



15.    Gambar bangun berikut tersusun oleh 5 persegi yang kongruen. Jika keliling bangun 72 cm, maka luas bangun tersebut adalah .... .

16.    ABCD adalah persegi dengan sisi 6 satuan. Titik E dan F membagi diagonal AC menjadi 3 bagian sama panjang. Luas segitiga DEF adalah ... .


18.    Diketahui sebuah bak berbentuk balok yang terisi penuh dengan air. Bak tersebut akan dikosongkan tanpa sisa dengan menggunakan pompa yang mampu menyedot air 0,7 liter perdetik. Dalam waktu 30 menit, bak jadi kosong tanpa sisa. Jika luas alas bak adalah 10.500 cm2, maka tinggi bak tersebut adalah .... .

19.    Hasil operasi terbesar yang dapat diperoleh dengan menempatkan angka-angka 4, 6, 7, 8 pada kotak-kotak yang tersusun dibawah ini adalah ....


20.    Pada suatu peta dengan skala 1 : 100.000, luas tanah sebuah sekolah adalah 50 cm2. Luas tanah sekolah tersebut pada sebuah peta dengan skala 1 : 200.000 adalah ... .

0 OSN MATEMATIKA 2007

   Jika X menyatakan bilangan bulat terbesar yang lebih kecil atau sama dengan bilangan
real x,maka [√3-√5]2 =…
    -1
    1
    0
    9
    81
    Bilangan 3 5 + 2 - 3 5 - 2 merupakan bilangan ….
    bulat negatif
    bulat positif
    pecahan
    Irrasional positiF
    Irrasional negative
     Banyaknya soal yang dikerjakan Amin hari ini bertambah cepat 40% dibandingkan
dengan yang dikerjakannya kemarin. Banyaknya soal yang dikerjakan Amin hari ini
paling sedikit ada…
    5
    6
    7
    8
    TDK BISA DITENTUKAN
    Misalkan H adalah himpunan semua faktor positif dari 2007. Banyaknya himpunan
bagian dari H yang tidak kosong adalah ….
    6
    31
    32
    63
    63
    Misalkan N sebuah bilangan asli dua-angka dan M adalah bilangan asli yang diperoleh
dengan mempertukarkan kedua angka N.Bilangan prima yang selalu habis membagi N-M
adalah….
    2
    3
    7
    9
    11
     Sebuah sample diperoleh dari 5 pengamatan. Jika rataan hitung (mean) sample sama
dengan 10 dan median sampel sama dengan 12, maka nilai terkecil jangkauan sample
sama dengan…
    2
    3
    5
    7
    10
    Peluang menemukan di antara 3 orang ada paling sedikit 2 orang yang lahir dalam bulan
yang sama adalah….
    17/72
    33/72
    39/72
    48/72
    55/72
    Keliling sebuah segitiga adalah 8.Jika panjang sisi-sisinya adalah bilangan bulat,maka
luas segitiga tersebut sama dengan….
    22
    16/39
    23
    4
    42
     Sepotong kawat dipotong menjadi 2 bagian,dengan perbandingan panjang 3:2. Masingmasing
bagian kemudian dibentuk menjadi sebuah persegi.Perbandingan luas kedua
persegi adalah…
     4:3
    3:2
    5:3
    9:4
    5:2
     Untuk setiap bilangan real x berlaku
Tan2x + Cos2x
Sin x + Sec x
=……….
    Sec x + Sin x B. Sec x - Sin x C. Cos x + Csc x D. Cos x - Csc x E. Cos x + Sin x

ESAI
    Misalkan f(x) = 2x-1 ,dan g(x) = x . Jika f(g(x))=3, maka x=….
    Pengepakan buah “Drosophila” akan mengemas 44 apel ke dalam beberapa kotak. Ada 2
jenis kotak yang tersedia, yaitu kotak untuk 10 apel dan kotak untuk 6 apel. Banyak kotak
yang diperlukan adalah…
     Semua pasangan bilangan bulat(x,y) yang memenuhi x + y = xy - 1 dan x≤y adalah…
     Jika n adalah bilangan asli sehingga 3n adalah faktor dari 33!, maka nilai n terbesar yang
mungkin adalah…
    Sebuah ruas garis mulai dari titik (3, 2,)(1,5) dan berakhir di (99, 68)(3,5)
Banyaknya titik dengan koordinat bilangan bulat yang dilalui garis tersebut adalah…
    Pada segitiga PQR sama sisi diberikan titik-titik S dan T yang terletak berturut-turut pada
sisi QR dan PR demikian rupa, sehingga sudut SPR=400 dan sudut TQR=350. Jika titik X
adalah perpotongan garis-garis PS dan QT,maka sudut SXT=….
     Diketahui 4 titik pada bidang dengan koordinat A(1, 0), B(2008, 2007), C(2007, 2007),
D(0, 0). Luas jajaran genjang ABCD sama dengan….
     Sebuah lingkaran berjari-jari 1.Luas maksimal segitiga sama sisi yang dapat dimuat di
dalam lingkaran adalah….
     Sebuah daerah persegi dibagi menjadi 2007 daerah kecil dengan menarik garis-garis lurus
yang menghubungkan 2 sisi berbeda pada persegi. Banyak garis lurus yang harus ditarik
paling sedikit ada…

0 OSN MATEMATIKA 2002

1. Untuk suatu bilangan n yang dinyatakan dalam basis sepuluh, f(n) dide_nisikan
sebagai jumlah dari semua bilangan yang diperoleh melalui mencoreti digit - digit
yang mungkin dari n. Sebagai contoh untuk n = 1234, f(n) = 1234 + 123 + 124 +
134 + 234 + 12 + 13 + 14 + 23 + 24 + 34 + 1 + 2 + 3 + 4 = 1979. Sebab jika kita
mencoret 0 digit kita memperoleh 1234, jika kita mencoret 1 digit kita memperoleh
123,124,134,234, jika kita mencoret 2 digit kita memperoleh 12, 13, 14, 23, 24, 34,
jika kita mencoret 3 digit kita memperoleh 1, 2, 3, 4 dan jika kita mencoret 4 digit
kita memperoleh 0 yang tidak mempengaruhi jumlah f(n). Jika n adalah bilangan
yang terdiri dari 2011 digit, buktikan bahwa f(n) �� n habis dibagi 9.

2. Untuk setiap bilangan asli n, dide_nisikan Sn sebagai banyaknya permutasi (a1; a2; a3; _ _ _ ; an) dari (1; 2; 3; _ _ _ ; n) sedemikian sehingga a11+a2 2+a3 3+ _ _ _An n merupakan bilangan asli. Buktikan bahwa S2n _ n untuk setiap bilangan asli n.

3. Diberikan sebarang segitiga lancip ABC. Misalkan la garis yang melalui A dan
tegak lurus AB, lb garis yang melalui B dan tegak lurus BC, lc garis yang melalui
C dan tegak lurus CA. Misalkan garis lb dan lc berpotongan di titik D, garis lc
dan la berpotongan di titik E dan terakhir garis la dan lb berpotongan di titik F.
Buktikan bahwa luas segitiga DEF paling sedikit tiga kali luas segitiga ABC.

4. Di sebuah pulau terdapat sepuluh kota, dimana kota - kota tersebut dihubungkan
dengan ruas - ruas jalan. Ada 2 kota yang terhubung, ada juga yang tidak. Suatu
rute yang dimulai dari suatu kota mengunjungi tepat 8 dari 9 kota lainnya masing
- masing sekali dan kembali ke kota awal dinamakan rute wisata. Tentukan banyak
ruas jalan minimal yang perlu untuk dibuat sehingga apabila diberikan sebarang
kota di pulau tersebut, ada rute wisata yang tidak melewati kota tersebut