Alpro Bagian 2 – Operator dan Runutan

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

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]
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
[/sourcecode]

Pascal:

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]
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.
[/sourcecode]

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

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]
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
[/sourcecode]

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

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]
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

[/sourcecode]

4. Buatlah algoritma untuk menghitung luas segitiga

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]
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

[/sourcecode]

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

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]
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
[/sourcecode]

6. Buat algoritma yang menukarkan kedua buah isi gelas

[sourcecode language=”delphi” wraplines=”true” collapse=”true”]

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

[/sourcecode]

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

Alpro Bagian 1 – Tipe data, Variabel, Konstanta, Assignment

1. Bagaimana menuliskan kamus data dalam algoritma beserta contoh tipe data dari variabel?
[sourcecode language=”delphi” wraplines=”false” collapse=”false”]
DEKLARASI/VAR/KAMUS DATA
VarNama : String
VarUmur : Integer
VarTargetIPK : Real
VarJomblo : Boolean
VarTargetNilaiAlpro : Character
[/sourcecode] 

2. Bagaimana algoritma untuk memerintahkan komputer menampilkan teks ke layar monitor?
[sourcecode language=”delphi” wraplines=”true” collapse=”false”]
OUTPUT(“Work Hard! Success come through ideas and lots of action!”)
[/sourcecode] 

3. Bagaimana algoritma untuk memasukan nilai ke dalam sebuah variabel?
[sourcecode language=”delphi” wraplines=”false” collapse=”false”]
INPUT(VarNama)
[/sourcecode] 

4. Bagaimana algoritma untuk memerintahkan komputer menampilkan nilai dari sebuah variabel ke layar monitor?
[sourcecode language=”delphi” wraplines=”false” collapse=”false”]
OUTPUT(VarNama)
[/sourcecode] 

5. Buatlah contoh algoritma sebagai berikut:

  • Mempunyai 5 variabel yaitu VarNama : String, VarUmur : Integer, VarTargetIPK : Real, VarJomblo : Boolean, VarTargetNilaiAlpro : Character
  • Mempunyai 1 konstanta bernama KonsTempatTanggalLahir yang bertipe data string
  • Algoritma tersebut akan mengisikan nilai-nilai ke dalam variabel, kemudian menampilkannya ke layar

[sourcecode language=”delphi” wraplines=”true” collapse=”false”]
ALGORITMA Contoh1;
{*Menjelaskan tentang Variabel, Konstanta, Tipe Data, Assignment dan Output*}

DEKLARASI/VAR/KAMUS DATA
VarNama : String
VarUmur : Integer
VarTargetIPK : Real
VarJomblo : Boolean
VarTargetNilaiAlpro : Character

KONSTANTA
KonsTempatTanggalLahir : String ”Sumedang, 28-Agustus-1960”

BEGIN
VarNama <– “Awan Rimbawan”
VarUmur <– 54
VarTargetIPK <– 3.99
VarJomblo <– FALSE
VarTargetNilaiAlpro <– ’A’

OUTPUT(“Ini adalah data tentang Awan Rimbawan”)
OUTPUT(VarNama)
OUTPUT(VarUmur)
OUTPUT(VarTargetIPK)
OUTPUT(VarJomblo)
OUTPUT(KonstTempatTanggalLahir)
END
[/sourcecode] 

6. Buatlah contoh algoritma sebagai berikut:

  • Mempunyai 5 variabel yaitu VarNama : String, VarUmur : Integer, VarTargetIPK : Real, VarJomblo : Boolean, VarTargetNilaiAlpro : Character
  • Algoritma tersebut akan memasukkan nilai-nilai ke dalam variabel, kemudian memasukkannya ke layar
  • Lalu dimasukkan nilai-nilai berikutnya dan ditampilkan kembali ke layar

[sourcecode language=”delphi” wraplines=”true” collapse=”false”]
ALGORITMA Contoh2;
{*Sama seperti sebelumnya, tetapi bagaimana jika ditambahkan assignment baru dan di outputkan lagi?*}

DEKLARASI/VAR/KAMUS DATA
VarNama : String
VarUmur : Integer
VarTargetIPK : Real
VarJomblo : Boolean
VarTargetNilaiAlpro : Character

KONSTANTA
KonsTempatTanggalLahirSibutar : String <–”Sitoli,13-Jan-1964”
KonsTempatTanggalLahirAmanda : String <–”B.Aceh, 7-Feb-1992”

BEGIN
VarNama <– “Sibutar-butar”
VarUmur <– 50
VarTargetIPK <– 4.00
VarJomblo : TRUE
VarTargetNilaiAlpro <– ’AB’

OUTPUT(“Ini adalah data tentang Sibutar-butar”)
OUTPUT(VarNama)
OUTPUT(VarUmur)
OUTPUT(VarTargetIPK)
OUTPUT(VarJomblo)
OUTPUT(KonsTempatTanggalLahirSibutar)

VarNama <– “Amanda Larashati”
VarUmur <– 22
VarTargetIPK <– 3.75
VarJomblo : TRUE
VarTargetNilaiAlpro <– ’C’

OUTPUT(“Ini adalah data tentang Amanda”)
OUTPUT(VarNama)
OUTPUT(VarUmur)
OUTPUT(VarTargetIPK)
OUTPUT(VarJomblo)
OUTPUT(KonsTempatTanggalLahirAmanda)

END

[/sourcecode] 

7. Buatlah sebuah algoritma yang bisa menerima inputan dari keyboard kemudian menampilkannya ke layar.

[sourcecode language=”delphi” wraplines=”false” collapse=”false”]
ALGORITMA Contoh3;
{*contoh input dan output*}

VAR
VarNama: String
VarNilai: Char

BEGIN
OUTPUT(‘Masukkan nama: ‘)
INPUT(VarNama)
OUTPUT( ‘Masukkan nilai: ‘)
INPUT(Varnilai)
OUTPUT(‘Nama: ‘ , VarNama)
OUTPUT(‘Nilai: ‘, Varnilai)
END.
[/sourcecode]