Alpro Bagian 2 – Operator dan Runutan

September 02, 2014
Awan Rimbawan

1. Buatlah algoritma dan program yang memasukkan dua buah nilai integer 10 dan 6. Kemudian melakukan operasi Aritmetika kepada dua buah bilangan tersebut
Algoritma:

ALGORITMA 1Aritmatika
{ Buat program yang menggunakan operator aritmetika
  + - * div mod pada bilangan bulat}

VAR
 BilanganBulat1: Integer
 BilanganBulat2: Integer
 HasilBilanganBulat: Integer

BEGIN
 BilanganBulat1 <-- 10
 BilanganBulat2 <-- 6

 OUTPUT(BilanganBulat1)
 OUTPUT(BilanganBulat2)

 HasilBilanganBulat <-- BilanganBulat1 + BilanganBulat2
 OUTPUT(HasilBilanganBulat)

 HasilBilanganBulat <-- BilanganBulat1 - BilanganBulat2
 OUTPUT(HasilBilanganBulat)

 HasilBilanganBulat <-- BilanganBulat1 div BilanganBulat2
 OUTPUT(HasilBilanganBulat)

 HasilBilanganBulat <-- BilanganBulat1 * BilanganBulat2
 OUTPUT(HasilBilanganBulat)

 HasilBilanganBulat <-- BilanganBulat1 mod BilanganBulat2
 OUTPUT(HasilBilanganBulat)

END 

Pascal:

PROGRAM 1Aritmatika;</pre>
<pre>{ Buat program yang menggunakan operator aritmetika
 + - * div mod pada bilangan bulat }

USES crt;

VAR
 BilanganBulat1: Integer;
 BilanganBulat2: Integer;
 HasilBilanganBulat: Integer;

BEGIN
 CLRSCR;
 BilanganBulat1 := 10;
 BilanganBulat2 := 6;

 WRITELN('BilanganBulat1: ',BilanganBulat1);
 WRITELN('BilanganBulat2: ',BilanganBulat2);

 HasilBilanganBulat := BilanganBulat1 + BilanganBulat2;
 WRITELN('Hasil Penambahan kedua bilangan: ',HasilBilanganBulat);

 HasilBilanganBulat := BilanganBulat1 - BilanganBulat2;
 WRITELN('Hasil bilangan1 dikurangi bilangan2: ',HasilBilanganBulat);

 HasilBilanganBulat := BilanganBulat1 div BilanganBulat2;
 WRITELN('Hasil bilangan1 dibagi bilangan2: ',HasilBilanganBulat);

 HasilBilanganBulat := BilanganBulat1 * BilanganBulat2;
 WRITELN('Hasil Perkalian kedua bilangan: ',HasilBilanganBulat);

 HasilBilanganBulat := BilanganBulat1 mod BilanganBulat2;
 WRITELN('Sisa pembagian modulo bilangan1 dibagi bilangan2 : ',HasilBilanganBulat);

 READLN;

END.

2. Buatlah algoritma yang menerima inputan dua buah bilangan bulat, kemudian tunjukkan contoh penggunaan operator relasional dan logika

ALGORITMA RelasionalLogika
{ Buat algoritma yang menggunakan operator relasional dan logika }

VAR
 in1, in2, in3 : Integer
 bool1, bool2 : Boolean

BEGIN
 
 in1 <-- 15
 in2 <-- 19

 OUTPUT('nilai in1 : ',in1)
 OUTPUT('nilai in2 : ',in2)

 bool1 <-- in1 < in2
 OUTPUT('in1 lebih kecil daripada in2 ',bool1)

 bool1 <-- in1 > in2
 OUTPUT('in1 lebih besar daripada in2 ',bool1)

 bool2 <-- (in1 = in2) AND (in1 < in2)
 OUTPUT('(in1 = in2) AND (in1 < in2) bernilai ',bool2)

 bool2 <-- (in2 = in1) OR (in2 > in1)
 OUTPUT('(in2 = in1) OR (in2 > in1) bernilai',bool2)
 
END 

3. Buat algoritma yang menerima inputan jarak tempuh dan kecepatan, kemudian meng-outputkan waktu yang dibutuhkan untuk menempuhnya

ALGORITMA MenghitungKecepatan
{ Buat algoritma yang menerima inputan jarak tempuh dan kecepatan
  kemudian meng-outputkan waktu yang dibutuhkan untuk menempuhnya
 }

VAR
  iJarak,iKecepatan, iWaktu: Real

BEGIN

    OUTPUT('Masukkan jarak yg akan ditempuh (dalam km): ')
    INPUT(iJarak)
    OUTPUT('Masukkan kecepatan kendaraan (dalam km/jam): ')
    INPUT(iKecepatan)

    iWaktu = iJarak DIV iKecepatan

    OUTPUT(iWaktu)

END

4. Buatlah algoritma untuk menghitung luas segitiga

 ALGORITMA MenghitungLuasSegitiga
{algoritma yang menerima inputan alas dan tinggi untuk menghitung luas segitiga}

VAR
  fAlas, fTinggi, fLuas: Real

BEGIN
    OUTPUT('Masukkan Alas: ')
    INPUT(fAlas)

    OUTPUT('Masukkan Tinggi: ')
    INPUT(fTinggi)


    fLuas = 0.5 * fAlas * fTinggi


    OUTPUT('Luas segitiga adalah:')    
    OUTPUT(fLuas)

END

5. Buat algoritma yang meminta inputan 5 buah jari-jari kemudian meng-outputkan luas lingkaran

ALGORITMA Luas5Lingkaran
{Algoritma yang menerima inputan 5 buah jari-jari kemudian mengoutputkan luas 5 buah lingkaran tersebut}

VAR
    fR1, fR2, fR3, fR4, fR5: REAL
    fLuas1, fLuas2, fLuas3, fLuas4, fLuas5: REAL

BEGIN

    OUTPUT('Masukkan jari-jari lingkaran 1: ')
    INPUT(fR1)
    OUTPUT('Masukkan jari-jari lingkaran 2: ')
    INPUT(fR2)
    OUTPUT('Masukkan jari-jari lingkaran 3: ')
    INPUT(fR3)
    OUTPUT('Masukkan jari-jari lingkaran 4: ')
    INPUT(fR4)
    OUTPUT('Masukkan jari-jari lingkaran 5: ')
    INPUT(fR5)

    fLuas1 = 3.14  * fR1 * fR1
    fLuas2 = 3.14  * fR2 * fR2
    fLuas3 = 3.14  * fR3 * fR3
    fLuas4 = 3.14  * fR4 * fR4
    fLuas5 = 3.14  * fR5 * fR5

    OUTPUT(' Luas lingkaran 1 : fLuas1)
    OUTPUT(' Luas lingkaran 2 : fLuas2)
    OUTPUT(' Luas lingkaran 3 : fLuas3)
    OUTPUT(' Luas lingkaran 4 : fLuas4)
    OUTPUT(' Luas lingkaran 5 : fLuas5)

END

6. Buat algoritma yang menukarkan kedua buah isi gelas


ALGORITMA TukarGelas
{membuat algoritma tukar gelas Kopi Areng dan Jamu Sido Muncul
berikan ilustrasinya dulu, buat tabel dry run, lalu buat algoritmanya}

VAR
	gelas1 : String
	gelas2 : String
	gelas3 : String
BEGIN ALGORITMA
	//pertama gelas diisi teh dan sirup
	gelas1 <-- "Kopi Areng"
	gelas2 <-- "Jamu Sido Muncul"
	
	//pada state awal apa isi gelas1 dan gelas2 adalah	
        OUTPUT(gelas1)
        OUTPUT(gelas2)

	//proses: tukarkan isi gelas teh dan sirup
	gelas3 <-- gelas1
	gelas1 <-- gelas2
	gelas2 <-- gelas3 
	
	//pada state akhir, apa isi gelas1, gelas2 ?	
        OUTPUT(gelas1)
        OUTPUT(gelas2)
END ALGORITMA

7. Tabel Dry Run dan Sequence
tabel-dryrun

8. Buat Tabel Dry Run atau langkah2 dari game priests and cannibals crossing the river
game bisa di download di sini

Facebook Comments

No comments

Leave a Reply

Your email address will not be published. Required fields are marked *

8 + 2 =