Anda di halaman 1dari 46

Instruksi case

Instruksi case
digunakan sebagai
instruksi pemilihan Bentuk instruksi case:
dimana aksi yang akan case (variabel)
nilai-1 : aksi-1;
dilakukan bergantung nilai-2 : aksi-2;
nilai-3 :aksi-3;
pada nilai dari satu .
.

macam variabel saja. .

nilai n : aksi n

otherwise : aksi-x;

endcase.
CASE dan If then
else
Konstruksi CASE di atas dapat ekivalen dengan
struktur If then else bertingkat-tingkat seperti
berikut ini:
If ekspresi = nilai 1 then
aksi 1
else
if ekspresi = nilai 2 then
aksi 2
else
if ekspresim = nilai 3 then
aksi 3
.
.
.
If ekspresi = nilai n then
aksi n
else { otherwise}
aksi x
end if
end if
end if
endif
Contoh perbandingan penggunaan
if then else dan case
Program konversi angka ke teks { mencetak kata untuk angka 1
sampai angka 3 }
Deklarasi:
Deklarasi:
angka : integer { angka yang
dibaca} angka : integer {angka
yang dibaca}
ALGORITMA : Algoritma :
read (angka)
if angka = 1 then read (angka)
write (satu) case (angka):
else 1 : write (satu)
If angka = 2 then
write (dua) 2 : write (dua)
else 3 : write (tiga)
If angka =3 then otherwise write (angka
write (tiga)
yang dimasukkan salah)
else
write (angka yang end case
dimasukkan harus 1 s/d 3)
end if
contoh
Gaji karyawan pada sebuah perusahaan didasarkan
pada jam kerja dalam satu bulan serta posisi atau
golongannya dalam perusahaan itu. Upah per jam
menurut golongan adalah sebagai berikut:
Golongan upah/jam(Rp)
A 5000
B 6000
C 7500
D 9000
Apabila karyawan bekerja lebih dari 150 jam per minggu, maka
kelebihan jam kerja tersebut dihitung sebagai lembur dengan
upah/jam 25% di atas upah reguler. Buat sebuah algoritma yang
menerima nama, golongan, serta jam kerja karyawan, kemudian
tampilkan gaji totalnya dalam satu bulan.
Algoritma Gaji_Karyawan Case (golongan)
{ algoritma yang menerima nama, A : upah 5000;
golongan serta jam-kerja kemudian
B : upah 6000;
menampilkan total gaji yang diterima
karyawan } C : upah 7500;
D : upah 9000;
Definisi variabel default : write (golongannya
salah !);
real gaji, total, jamkerja,
lembur, upah; upah 0;
string nama; endcase
char golongan;
Rincian Langkah If (jam kerja > 150)
write (Masukkan nama then lembur (jamkerja 150)*
karyawan :); upah *1.25;
read (nama); gaji 150*upah;
write (Masukkan golongan else lembur 0;
nya :); endif
read (golongan ); total gaji + lembur;
write (Masukkan jam write (Gaji yang diterima sdr : ,
Contoh lain
Buatlah algoritma yang memungkinkan pengguan dapat
memilih untuk menentukan luas empat persegi panjang,
keliling empat persegi panjang, dan panjang diagonal persegi
panjang. Masukkan program adalah panjang dan lebar
persegi panjang.

Luas = panjang x lebar


Keliling = 2 x panjang + 2 x lebar

Diagonal =

Lengkapi program dengan pilihan menu : 1) Luas, 2) keliling,


3) panjang diagonal, 4) Keluar program. Pada setiap pilihan
menu, dibaca panjang dan lebar empat persegi panjang, lalu
dihitung hasilnya. Tampilkan hasil perhitungan ke layar
Instruksi perulangan
(repetition)
Instruksi perulangan adalah instruksi yang dapat
mengulangi pelaksanaan sederetan instruksi lain
berulang kali sesuai persyaratan yang ditetapkan.

Struktur instruksi perulangan pada dasarnya terdiri


atas:
1. Kondisi perulangan: suatu kondisi yang harus
dipenuhi agar perulangan dapat terjadi.
2. Badan (body) perulangan: deretan instruksi yang
akan diulang ulang pelaksanaannya.
3. Pencacah (counter) perulangan: suatu variabel
yang nilainya harus berubah agar perulangan dapat
terjadi dan pada akhirnya membatasi jumlah perulangan
yang dapat dilaksanakan.
1. PERULANGAN WHILE DO

Ada tiga macam bentuk instruksi perulangan yang biasa


ditemukan dalam program:
Perulangan : while do
Perulangan : repeat until
Perulangan : for
kondi Y Instruksi-
si instruksi
3.1 Perulangan while do

Bentuk umum : N

while (kondisi) do
..............
instruksi-instruksi Makna dari bentuk instruksi
.............. tersebut adalah : ulangi
endwhile ...instruksi-instruksi...
Perhatikan:
1. Ada instruksi yang berkaitan dengan kondisi
sebelum masuk ke while/do sehingga kondisi ini
terpenuhi dan penanggulangan bisa dilaksanakan.
Bila tidak, kemungkinan instruksi while tidak bisa
dijalankan.
2. Ada satu instruksi di antara instruksi-insruksi yang
diulang yang mengubah nilai variabel perulangan
agar pada satu saat kondisi perulangan tidak
terpenuhi sehingga perulangan bisa berhenti, atau
jumlah perulangan bisa diatasi. Bila tidak, ada
kemungkinan perulangan berlangsung terus tak
berhingga.
Contoh 6:
Algoritma berikut ini menggunakan while/do untuk
menampilkan angka 1 hingga 100 secara berurutan.
Perhatikan bahwa perintah: angka 1 adalah kondisi
awal, sedangkan instruksi : angka angka + 1 adalah
instruksi yang
Algoritma bisa mengubah
perulangan_1 kondisiangka
{ mencetak hingga
1 tidak
terpenuhi,
hingga pada saat angka > 100.
100}
Deklarasi:
integer angka;

Deskripsi
angka 1;
while ( angka < 101) do
write (angka);
angka angka + 1;
Contoh 7:
Algoritma berikut ini menggunakan while/do dan juga if
then else untuk menampilkan syair anak ayam yang mati
mulai dari 10 hingga habis. Langkah utama untuk algoritma ini
adalah : berikan nilai awal 10 hingga ke jumlah anak ayam,
Algoritma perulangan_2 { mencetak syair anak ayam}
kemudian lakukan perulangan while selama masih ada anak
ayam (anak>0), dimana dalam perulangan ini ditampilkan anak
Definisi variabel
ayamku turun ... kemudian jumlah anak dikurangi satu.
integer anak;

Rincian langkah

anak 10;

while( anak > 0) do

write (anak ayamku turun, anak);

anak anak -1;

if (anak > 0)

then write (mati satu tinggal, anak);

else write (mati satu tinggal saya);

endif.
2. Perulangan Repeat - until

Bentuk umum:
repeat Instruksi-
..................... instruksi
Instruksi instruksi
.....................
until (kondisi).
kondi N
Makna dari bentuk si
instruksi tersebut adalah :
ulangi pelaksanaan Y
instruksi intruksi
hingga kondisi
terpenuhi.
Perhatikan:
1. Instruksi-instruksi akan diulang
hanya pabila kondisi tidak Contoh 8 :

terpenuhi, dan ketika kondisi {Algoritma berikut ini


terpenuhi maka perulangan menampilkan halo
berhenti. sebanyak 25 kali}
2. Instruksi-instruksi dikerjakan
terlebih dahulu sebelum kondisi Definisi variabel
diperiksa.
integer cacah;
3. Harus ada satu instruksi yang
mendahului repeat/until agar
kondisi tidak terpenuhi Rincian langkah
sehingga perulangan bisa cacah 1;
berlangsung. repeat
4. Harus ada instruksi di antara write (halo
instruksi yang diulang .... );
sehingga pada akhirnya dapat
mengubah kondisi menjadi
cacah cacah + 1;
tepenuhi dan perulangan Until (cacah > 25).
berhenti.
Contoh 9
Gunakan repeat-until untuk menghitung jumlah angka 1 + 2 + 3 + ... + N,
dimana N adalah angka bulat yang dimasukkan lewat keyboard.

Algoritma perulangan_4
{ menghitung jumlah 1 + 2+ 3+ ...+ N, N dimasukkan lewat keyboard}

Deklarasi
integer cacah , N, jumlah;

Deskripsi
write (Masukkan nilai N : );
read (N);
cacah 1;
jumlah 0;
repeat
Jumlah Jumlah + cacah;
cacah cacah + 1;
until (cacah > N).
write ( Jumlahnya = , Jumlah);
3. Perulangan for
Bentuk umum:
for (var = awal to akhir step n) Var=awal

........................
Instruksi instruksi Y Var=akh
ir?
.......................
N
endfor
Instruksi-
instruksi
Ulangi instruksi instruksi
tersebut berdasarkan Var=var
variabel perulangan mulai +n
dari nilai awal hingga nilai
akhir dengan perubahan
sebesar n.
Contoh
1. Algoritma menampilkan halo .... sebanyak 10 kali
dengan instruksi for.

Algoritma perulangan {menampilkan Halo ... memakai instruksi


for }

Deklarasi
integer cacah;

Deksripsi
for (cacah = 1 to 10 step 1)
write (halo ...);
end for.
Contoh perulangan for
(contd..)
Algoritma menghitung nilai rata dari N
buah bilangan yang dimasukkan lewat
keyboard, menggunakan instruksi for.
Algoritma Perulangan { menghitung nilai rata dari N buah bilangan }
Deklarasi
integer cacah, N, angka, Jumlah;
real Rata;
Deskripsi
write (Masukkan berapa bilangan :);
read (N);
Jumlah 0;
for (cacah = 1 to N step 1)
write {Masukkan bilangan ke , cacah);
read (angka);
Jumlah Jumlah + angka ;
endfor
Rata Jumlah / N;
write (Rata-rata = , Rata);
for : by ProgramC++
// program CetakSegitigaBintang
// mencetak segitiga bintang dengan tinggi segitiga = N

#include <iostream>
using namespace std;

main ()
{
// Deklarasi
Int N, i, j;
// Algoritma:
cout << Tinggi segitiga N = ?; cin>> N;
// cetak bagian segitiga dari baris 1 sampai N
for (i=1; i<=N; i++)
{
for (j=1; j<=1; j++)
{
cout << *;
}
cout << endl;
}
}
Program penjumlahan deret
// PROGRAM PenjumlahanDeret repeat
While // Menjumlahkan deret // 1 + 2 + 3 + ... + N
// dengan N adalah bilangan bulat positif.

# include <iostream>
# includes <iostream> using namespace std;
using namespace std;
main ( )
{
main ( )
// Deklarasi
{
int N ;
// Deklarasi int i ;
int N ; int sum;
int i ;
int sum; // Algoritma:
//Algoritma: cout << Berapa N ? ; cin >> N;
cout << Berapa N ? ; cin >> N; sum = 0;
sum = 0; i =1 ;
i =1 ; do
{
While ( i<= N)
sum = sum + i;
(
i++;
Sum = sum + i; while ( i <= N};
i++; Cout << Jumlah deret = << sum << endl;
) }
Cout << Jumlah deret = << sum <<
endl;
}
for
menggunakan
# include <iostream>

using namespace std;

main ( )

// Deklarasi

int N ;

int i ;

int sum;

// Algoritma:

cout << Berapa N ? ; cin >> N; // banyaknya suku

sum = 0; // inisialisasi jumlah deret dengan 0

for (i =1 ; i<=N; i++)

sum = sum + i;

cout << Jumlah deret = << sum << endl;


PR

1. Susun sebuah
algoritma yang
menerima input berupa
2. Susun sebuah algoritma
sebuah bilangan bulat X
untuk menghitung jumlah deret
> 1 kemudian
berikut ini dengan N buah suku
menghitung rata-rata
dimana N dibaca dari keyboard:
dari bilangan bulat yang
ada antara 1 hingga X. 1 1/3 + 1/5 1/7 + 1/9 1/11 + ..... +
1/N
N adalah bilangan bulat positif (dibaca
terlebih dahulu).
Jawaban soal 1 menggunakan C++

Program HitungrataRata // Program HitungrataRata


// Menghitung rata-rata nilai ujian siswa yang dibaca dari papan ketik
{ menghitung rata-rata nilai ujian siswa yang dibaca dari papan selama data yang dibaca tidak sama dengan -1.}
ketik selama data yang dibaca tidak sama dengan -1.}
Include <iostream>
Using namespace std;
Deklarasi: main ()
x : real // Deklarasi
i : integer int x ;
sum : real if i 0 then int sum;
float rerata : real
rerata : real rerata sum /i

write (rerata) // Algoritma:


Algoritma: else sum = 0;
sum 0 i = 0;
write ( Tidak ada data nilai ujian yang
dimasukkan) // baca data pertama, mungkin - 1
i 0
Cout << Ketikkan nilai x : ; cin >> x;
read (x) end if
While ( x > 1)
while x > 1 do
{
ii+1 i=i+1
sum sum + i sum = sum + i
rerata sum/i rerata = sum/i
write (rerata) cout << Rata- rata = << rerata << endl;

endwhile endwhile
Jawaban soal 2 (menghitung jumlah deret pecahan)
Program Penjumlahan deretpecahan
{Menjumlahkan deret yang berbentuk
while k N do
pecahan:
If i mod 2 =1 then { suku
1 + 1/3-1/5+1/7-1/9+...+ 1/N
Nilai N dibaca ditentukan terlebih dahulu.} ke-i ganjil}
Deklarasi : jumlah jumlah + 1/k
jumlah : real {jumlah deret}
else { suku ke-i genap}
N : integer {penyebut pd suku
terakhir, N >0} jumlah jumlah 1/k
i : integer { suku ke-i } endif
k : integer { penyebut sku ke-i}
ii+1 {tinjau suku berikutnya
}
ALGORITMA :
k k +2 {tinju penyebut suku
read (N)
berikutnya}
Jumlah 0
i 1 { suku pertama} end while {k > N)
k 1 { penyebut suku pertama } write (jumlah)
Prosedur : subprogram(subroutine) & fungsi)

Prosedur adalah bagian dari suatu program yang


disusun secara terpisah untuk melakukan suatu tugas
khusus atau fungsi tertentu.
Ada 2 macam bentuk prosedur :
Subrutin atau (Subprogram)
Fungsi (function)

Subrutin (subprogram) adalah bagian dari program yang


dibuat terpisah untuk melaksanakan sebagian dari tugas yang
harus diselesaikan oleh suatu program. Prosedur sebenarnya
lebih dikenal dengan subprogram

Fungsi (function) adalah bagian dari program yang dibuat


terpisah untuk melaksanakan fungsi tertentu yang menghasilkan
suatu nilai untuk dikembalikan ke program utama.
Prosedur
Manfaat pembuatan
prosedur:

1. Modularisasi : suatu
program yang besar dan
kompleks dapat dibagi ke
dalam beberapa prosedur
sehingga setiap prosedur 2. Simplifikasi : dalam suatu program sering
diperlukan suatu tugas yang harus berulangkali

merupakan bagian yang dikerjakan dengan nilai variabel yang berbeda. Agar
tidak merepotkan maka tugas ini cukup ditulis sekali

mudah dikerjakan. Dengan saja dalam bentuk prosedur yang kemudian dipanggil
berulangkali sesuai kebutuhan.

demikian maka program


besar tersebut menjadi
mungkin untuk
dilaksanakan.
Subrprogram dibagi 2:
1. Subprogram yang berfungsi sebgai Ciri subprogram dengan fungsi ini adalah:

program yang digunakan bagi dapat dikompilasi terpisah dari prgogam


pengganti kelompok pernyataan untuk yang menggunakannya.
proses berulang di dalam program nama variabel dalam subrpogram
utama. menyatakan lokasi memmori yang
berbeda dari nama variabel yang
Contoh subprogram untuk maksud sama/serupa dalam program yang
ini : menggunakan subprogram.
Menentukan nilai rata-rata, varian atau Komunikasi antar program dan
standar deviasi dari sejumlah kelompok subprogram menggunakan pernyataaan
data yang berbeda. yang ditempatkan pada program.
Program untuk menyususn data menurut Pemindahan data antara suatu program
urutan nilai/karakter. Misalnya menyusun menggunakan pernyataan /instruksi
nilai urutan data dari bilangan terkecil ke yang ditempatkan pada program yang
beilangan terbesar atau sebaliknya. memangil subrpogram.
Kedudukan subprogram pada program
dengan bagan alir ssb:
Program
Mulai Subprogr
am
Baca :
data, Susunan pernyataan untuk
input digunakan dalam eksekusi
pernyataan yang berulang
Subprogram
dipakai dalam program
Panggil :
utama/sebagai pengganti
Subprogram
kelompok pernyataan
Tulis: dalam program utama
Hasil yang berulang kali
Proses digunakan

Mulai Return
Mulai

2. Subprogram sebagai PANGGIL:


SUBPROGRAM untuk
bagian blok di dalam DATA
pemmograman program PANGGIL:
utama. SUBPROGRAM
Untuk JUDUL
Blokblok program yang PANGGIL:
dinyatakan dengan SUBPROGRAM
untuk PROSES
subrpogram-subprogram
dapat digunakan untuk blok PANGGIL:
SUBRPOGRAM untuk
pembacaan data/input, blok HASIL
judul, blok hitungan dan
SELES
blok dapatan/output.
Simbol proses SUBPROGRAM AI
SUBPROGRAM

SUBPROGRA SUBPROGRA SUBPROGRA SUBPROGRA


M untuk M untuk M untuk M untuk
DATA JUDUL PROSES HASIL

Pernyataan guna Pernyataan guna Pernyataan guna


Pernyataan guna
membaca membuat judul, penulisan
proses hitungan
DATA/INPUT penjelasan, dokumentasi
keterangan

RETURN RETURN RETURN


RETURN
Functio Subroutine
n
Function merupakan Subroutine

subprogram yang dibuat pemrogram sebagai subprogram memberikan


untuk suatu fungsi khusus. Program langsung hasil proses kembali ke
utama memanggil subrpogram Function program utama. SepertI juga pernyataan
seperti menuliskan nama variabel dan function , subroutine terpisah dari
ekspresi. Misalnya: program yang menggunakannya.

CALL HITUNG (A,B,C)


HASIL= 5.0 + FUNGSI (10.0)
Hitung merupakan nama dari subprogram
Yang berarti ekspresi dari variabel HASIL SUBROUTINE. A , B dan C adalah argumen
adalah penjumlhana bilangan nyata 5.0 yang akan digunakan oleh subrpogram
dengan ekspresi hasil proses subprogram untuk melakukan proses di dalam
FUNCTION dengan nama fungsi. Secara subprogram SUBROUTINE HITUNG.
umum, subprogram, FUNCTION dimulai Dengan pernyatan CALL tersebut pernytaan
dengan pernyataan: pertma a pada subprogram adalah:

FUNCTION FUNGSI (X) SUBPROGRAM HITUNG (X,Y,Z)


Bentuk umum prosedur
Prosedur nama_prosedur
Contoh 1
{ spesifikasi dari prosedur,
Andaikan sebuah program menyediakan fasilitas untuk
keadaan awal sebelum menghitung luas, keliling dan diagonal dari sebuah
persegi panjang dengan kemungkinan pemilihan
prosedur dilaksanakn dan melalui suatu menu.
juga keadaan akhir setelah
prosedur dilaksanakan}

Deklarasi Algoritma
{deklarasi variabel-variabel persegi panjang
prosedur}
Prosedur Prosedur Prosedur Prosedur
Deskripsi Menu menghit Hitung Tampil
ung Luas Diagonal Hasil
{ deskripsi dari tugas-tugas
prosedur}
Prosedur Prosedur
baca hitung
Dimensi Keliling
contoh
Algoritma Empat_Persegi_panjang Deskripsi
pilihan 0;
{ algoritma ini menunjukkan contoh repeat
pemakaian prosedur untuk menghitung menu;
luas, keliling, dan diagonal dari empat write (Masukan pilihan anda :);

persegi panjang} read (pilihan);


if (pilihan < 4)
then baca_dimensi;
endif.
Deklarasi
case (pilihan)
integer pilihan; 1 : hitung_luas;
real panjang, lebar, hasil; 2 : hitung_keliling;
{semua prosedur harus dideklarasikan} 3 : hitung_diagonal;
Prosedur menu; 4 : write (Selesai ... Sampai jumpa );

Prosedur baca_dimensi; default : write (Pilihan salah, Ulangi !);


Endcase
Prosedur hitung_luas;
if (pilihan < 4)
Prosedur hitung_keliling;
then tampil_hasil;
Prosedur hitung_diagonal; endif.
Prosedur tampil_hasil; until (pilihan = 4).
prosedur menu { menampilkan menu program} prosedur baca_dimensi { membaca dimensi persegi panjang}

Deklarasi Deklarasi.

write (Menu program Empat Persegi panjang );


Deskripsi
write (1. menghitung luas);
write (Masukkan Panjang:)
write (2. Menghitung keliling);
read (panjang);
write (3. Menghitung Diagonal); write (Masukkan lebar:)
write (4. Keluar dari Program); read (lebar);

prosedur hitung_luas { menghitung luas prosedur hitung_diagonal { menghitung keliling empat


empat persegi panjang} persegi panjang}
Deklarasi. Deklarasi.
real luas; real diagonal;
Deskripsi Deskripsi
luas panjang*lebar;
diagonal sqrt ( panjang^2 + lebar^2;
hasil luas;
hasil diagonal;
prosedur hitung_keliling { menghitung keliling prosedur tampil_hasil { menampilkan hasil
empat persegi panjang} dari program ini}
Deklarasi.
Deklarasi.
real keliling;
Deskripsi
Deskripsi
keliling 2* (panjnag + lebar);
write (hasil = , hasil) ;
hasil keliling;
Algoritma tanggal_lahir
Contoh fungsi (function) {algoritma ini memanggil fungsi untuk emnampilkan nama
bulan}

Deklarasi
integer tanggal, bulan, tahun;
string nama_bulan;
Berikut ini contoh yang melksanakan fungsi Nama_bulan (input integer bln) string;
fungsi matematis f(x) = x2 + 8x + 10 Deskripsi
write (tanggal :); read (tanggal);
write (bulan :) ; read (bulan);
write (tahun :) ; read (tahun);
Fungsi F (input real x) real
Nama_bulan Nama_bulan (bulan);
[menghitung nilai fungsi write (tanggal, , nama_bulan, , tahun);
f(x) = x^2 + 8x + 10
fungsi Nama_bulan (input integer bln) string;
{fugsi yang mengembalikan nama bulan berdasarkan angka
bulan}
Deklarasi Deklarasi
string nama_bln;
real y; Deskripsi
case (bln);
Deksripsi 1 : nama_bln Januari;
2 : nama_bln februari;
y x*x + 8x + 10 3 : nama_bln Maret ;
return y 4 : nama bln April;
...
11 : nama bln November;
12: nama_bln desember;
Endcase
larik

Dalam pemograman , ada


beberapa data yang bertipe
sama, misalnya:
Hasil ujian 100 orang mahasiswa
Larik (array) adalah suatu bentuk struktur data yang menampung satu
tabel harga barang di pasar atau lebih dari satu data yang sejenis (bertipe sama), yang diwakili
oleh satu nama variabel.
swalayan Setiap elemen atau anggota larik dapat dikenali atau diakses melalui
suatu indeks
daftar kode wilayah
Larik 1 D vektor
dsb. Larik 2D matriks

Karena setiap elemen bertipe Larik 3D tensor

sama , maka representasi data


cukup diacu dengan menyebutkan
posisinya di dalam kumpulan data.
Mendefinisikan LIRIK

Ada beberapa definisi larik:


1. nama_array : array [idx-awl...
Idx_akhr] of tipe data;
Operasi larik:
Conoh:
1. Membaca /mengisi larik
A : array [ 1..n] of integer 2. Mencetak /menampilkan
NamaMhs: array [1..12] of string larik
NilUjian : array [0..74] of real 3. Menggeser isi larik
4. Menggabungkan
P : array [1..100] of Titik beberapa larik
2. tipe_data nama_array [n]; 5. Menguraikan satu larik
Contoh : integer A [10]; 6. Mengurutkan isi larik
7. Mencari elemen dalam
Kapan menggunakan larik ??
Larik digunakan bila kita
mempunyai sejumlah data yang
sejenis dan bertipe sama,
dan kita perlu menyimpan sementara
data tersebut,
Untuk selanjutnya data tersebut kita
proses.
contoh
PROGRAM hitungrerata_tanpalarik {Cetak nilai x1,x2,...,x6}
{ Program yang membaca 6 buah data, write(x1)
mencetaknya, dan menghitung rat-ratanya. Tanpa
menggunakan larik} write(x2)
write(x3)
DEKLARASI write(x4)
x1,x2,x3,x4,x5,x6: integer write(x5)
u : real write(x6)

ALGORITMA: {hitung nilai rata-rata}


{ Baca 6 buah nilai integer, simpan di x1,x2,...,x6} u {x1 + x2 +x3+ x4 + x5 + x6 ) /6
read(x1) write (u)
read(x2)
read(x3)
read(x4)
read(x5)
PROGRAM hitungrerata_denganLarik
{ Program yang membaca 6 buah data,
mencetakny, dn menghitung rata-ratanya.
Tanpa menggunakan larik}
{cetak setiap nilai x[i],i = 1,2,...6}

for i 1 to 6 do
DEKLARASI
x : array [1..6] integer
write (x[i])
i : integer end for
jumlah, u : real
{hitung nilai rata-rata}

ALGORITMA
jumlah 0
{baca 6 buah nilai integer, simpan di x[i], i for i 1 to 6 do
= 1,2,...6} jumlah jumlah + x[i]
for i 1 to 6 do endfor
read (x[i]) u jumlah/6
end for write(u)
OPERASI MATRIKS
Matriks adalah larik dua dimensi, memiliki
dimensi baris dan dimensi kolom.
1. Matriks bujur sangkar: jmlhbaris=jmlh
kolom
Operasi matriks:
2. Matriks segi-empat
1. Menjumlahkan dua matriks
=jmlhbarisjmlhkolom
2. Mengalikan dua matriks
3. Matriks diagonal : elemen2nya 0
kecuali diagonal 3. Mencari determinan matriks
4. Matriks identitas : elemen diagonalnya 4. Tranpose
bernilai 1 semua 5. Invers matriks
5. Matriks segitiga atas 6. Persamaan linear
6. Matrisk segitiga bawah
Menjumlahkan dua matriks
Algoritma jumlah matriks {menjumlahkan dua matrik}

Deklarasi
Const integer brs=3, klm=3;
Integer A[brs][klm],B[brs][klm],C[brs][klm];
Integer ibx, ikx;
Deskripsi
{Menjumlahkan matriks A dan B}
{baca matriks A} for (ibx=1 to brs step 1)
for (ibx=1 to brs step 1) for (ikx=1 to klm step 1)
for (ikx=1 to klm step 1) C[ibx][ikx] A[ibx][ikx]+B[ibx][ikx];
endfor.
read (A[ibx][ikx]);
endfor.
endfor.
endfor {menampilkan matriks C }
for (ibx=1 to brs step 1)
for (ikx=1 to klm step 1)
{baca matriks B} write (C[ibx][ikx]);
for (ibx=1 to brs step 1) endfor.
for (ikx=1 to klm step 1) write ();
endfor.
read (B[ibx][ikx]);
endfor.
endfor.
Mengalikan dua matriks
Algoritma Perkalian_Matriks {mengalikan matriks}
{mengalikan dua buah matriks C=A x B}
for (i=1 to brsB step 1)
Deklarasi for (j=1 to klmB step 1)
integer brsA=3, klmA=4, brsB=4,
C[i][j] 0;
klmB=5;
integer A [brsA][klmA],B[brsB][brsB];
for (k=1 to klmA step 1)
integer i,k,j; C[i][j]=C[i][j] + A[i][k]*B[k][j];
endfor.
Deksripsi endfor.
{baca matriks A} endfor.
for (i=1 to brsA step 1)
for (k=1 to klmA step 1) {menampilkan hasil perkalian}
read (A[i][k]);
for (i=1 to brsA step 1)
endfor.
endfor. for (j=1 to klmB step 1)
write (C[i][j]);
endfor.
{baca matriks B} write ( );
for (i=1 to brsB step 1) endfor.
for (j=1 to klmB step 1)
read (B[i][j]);
endfor.
KUIS
1. Tampilkan bilangan genap
dari
2- 100

2. Buat tampilan di bawah ini dengan for


Apa output dari program dibawah ini !

1. 2.
Catatan tambahan

Increment dan decrement (++, -- ) equivalent dengan


+=1 and to -=1

Anda mungkin juga menyukai