Tugas Algoritma
Tugas Algoritma
NIM : F1A222001
PRODI : STATISTIKA
Soal:
1. Buatlah program biasa tanpa menggunakan function dan menggunakan
function (buat algoritma dan penjelasan)
2
F ( x )=2 x + 5 x −8
Dengan:
X=8
X = -2
2. Buatlah program biasa dengan menggunakan function (buat algoritma dan
penjelasan)
2
F ( x )=2 x + 5 x −8
Dengan:
X = 1….10
3. Buatlah lima program datar (procedure) Persegi, Persegi Panjang, Segitiga,
Lingkaran, Jajar genjang dengan menggunakan 2 variabel, var local dan var
global.
Jawab:
1. Algoritma:
a) Simpan nilai x=8
b) Hitung F ( x )=2 x 2+ 5 x −8
c) Tampilkan hasil F(x)
d) Simpan nilai x= -2
e) Hitung F ( x )=2 x 2+ 5 x −8
f) Tampilkan hasil F(x)
Interpretasi:
Program tersebut adalah sebuah program sederhana yang menghitung nilai dari
suatu fungsi matematika pada nilai tertentu. Fungsi yang akan dihitung adalah
f(x) = 2x^2 + 3x - 8, dengan x yang bernilai 8 dan -2.
Tanpa menggunakan function, program akan memasukkan nilai x secara
langsung pada perhitungan fungsi. Pertama, program akan menentukan nilai x
pertama yang akan digunakan yaitu x = 8. Kemudian, program akan melakukan
perhitungan fungsi dengan memasukkan nilai x yang telah ditentukan. Setelah
perhitungan selesai, program akan mencetak hasil perhitungan fungsi pada
layar.
Selanjutnya, program akan menentukan nilai x kedua yaitu x = -2 dan
melakukan perhitungan fungsi seperti yang telah dijelaskan sebelumnya. Hasil
perhitungan fungsi pada nilai x = -2 akan dicetak pada layar sebagai output
program.
x := -2;
writeln('Nilai f(', x, ') = ', hitung Nilai(x));
end.
Output:
Interpretasi:
Sedangkan untuk program yang menggunakan function, program akan
menentukan terlebih dahulu fungsi matematika yang akan digunakan yaitu f(x)
= 2x^2 + 3x - 8. Kemudian, program akan membuat sebuah function bernama
hitungNilai yang menerima satu parameter yaitu nilai x. Function tersebut akan
melakukan perhitungan fungsi f(x) pada nilai x yang diberikan dan
mengembalikan hasil perhitungan tersebut sebagai output. Setelah itu, program
akan menentukan nilai x pertama yaitu x = 8 dan memanggil function
hitungNilai dengan parameter x. Hasil perhitungan fungsi pada x = 8 akan
dicetak pada layar sebagai output program. Kemudian, program akan
menentukan nilai x kedua yaitu x = -2 dan kembali memanggil function
hitungNilai dengan parameter x. Hasil perhitungan fungsi pada x = -2 akan
dicetak pada layar sebagai output program.
2. Algoritma:
a) Buat function F(x) dengan parameter x
b) Hitung F ( x )=2 x 2+ 5 x −8
c) Kembalikan nilai F(x)
d) Panggil function F(x) dengan nilai x dari 1 hingga 10
e) Tampilkan nilai F(x) untuk setiap nilai x
var
x, y: integer;
begin
for x := 1 to 10 do
writeln('f(',x,') = ', hitung_fungsi(x));
end.
Output:
Interpretasi:
Program di atas adalah program yang ditulis dalam bahasa pemrograman
Pascal dan berfungsi untuk menghitung nilai fungsi f(x) = 2x^2 + 5x - 8
dengan menggunakan nilai x dari 1 sampai 10. Pada awal program, di
deklarasikan variabel x dan y dengan tipe data integer. Variabel x akan
digunakan sebagai parameter masukan pada fungsi "hitung_fungsi" yang akan
dijalankan untuk menghitung nilai fungsi f(x), sedangkan variabel y akan
menyimpan nilai hasil perhitungan fungsi. Kemudian di deklarasikan fungsi
"hitung_fungsi" dengan parameter masukan x bertipe data integer dan nilai
kembalian y bertipe data integer. Fungsi ini memiliki dua instruksi yaitu
menghitung nilai y berdasarkan rumus fungsi f(x) = 2x^2 + 5x - 8 dan
mengembalikan nilai y tersebut. Pada program utama, dilakukan perulangan
for dari 1 hingga 10, di mana variabel x akan berisi nilai dari 1 hingga 10. Pada
setiap iterasi perulangan, program akan memanggil fungsi "hitung_fungsi"
dengan parameter x yang saat itu sedang diproses, dan hasilnya akan
ditampilkan dengan menggunakan perintah "writeln". Hasil akhir dari program
ini adalah nilai fungsi f(x) untuk x = 1 sampai 10 yang ditampilkan pada layar.
3. Program 5 bangun datar (Persegi, Persegi Panjang, Segitiga, Lingkaran, Jajar
genjang) dengan menggunakan procedure 2 variabel, yaitu var local dan var
global.
Program:
program hitung_luas;
uses crt;
Var
sisi, panjang, lebar, alas, tinggi, jari, luas: real;
procedure hitung_luas_persegi;
Begin
clrscr;
luas := sisi * sisi;
writeln('Luas persegi dengan sisi ', sisi:0:2, '
adalah ', luas:0:2);
end;
procedure hitung_luas_persegi_panjang;
Begin
luas := panjang * lebar;
writeln('Luas persegi panjang dengan panjang ',
panjang:0:2, ' dan lebar ', lebar:0:2, ' adalah ',
luas:0:2);
end;
procedure hitung_luas_segitiga;
Begin
luas := 0.5 * alas * tinggi;
writeln('Luas segitiga dengan alas ', alas:0:2, ' dan
tinggi ', tinggi:0:2, ' adalah ', luas:0:2);
end;
procedure hitung_luas_lingkaran;
Begin
luas := 3.14 * jari * jari;
writeln('Luas lingkaran dengan jari-jari ', jari:0:2,
' adalah ', luas:0:2);
end;
procedure hitung_luas_jajar_genjang;
Begin
luas := alas * tinggi;
writeln('Luas jajar genjang dengan alas ', alas:0:2,
' dan tinggi ', tinggi:0:2, ' adalah ', luas:0:2);
end;
Begin
// input nilai variabel global
sisi := 8.0;
panjang := 9.0;
lebar := 7.0;
alas := 3.0;
tinggi := 5.0;
jari := 12.0;
// hitung luas bangun datar
hitung_luas_persegi;
hitung_luas_persegi_panjang;
hitung_luas_segitiga;
hitung_luas_lingkaran;
hitung_luas_jajar_genjang;
readln;
end.
Output: