Dokumen tersebut berisi algoritma dan bahasa pemrograman Pascal untuk mengimplementasikan program yang menghitung nilai beberapa fungsi tiga variabel. Program tersebut terdiri dari beberapa prosedur dan fungsi untuk menginput nilai variabel, menghitung nilai fungsi f, g, h, dan operasi antar fungsi seperti penjumlahan, pengurangan, perkalian, dan pembagian.
1. BAB III
TUGAS
Soal :
Menghitung nilai suatu fungsi. Misalkan diketahui suatu
fungsi tiga variabel berikut :
𝑓( 𝑥, 𝑦, 𝑧) = √
10 𝑥2
− 𝑦3
5 𝑧2 , 𝑔( 𝑥, 𝑦, 𝑧) = 6 𝑥3
+ 𝑦2
− 3 𝑧, ℎ( 𝑥, 𝑦, 𝑧) =
3 𝑥0
𝑦2 + 𝑧
yang mana x,y, dan z mempunyai tipe integer. Perhatikan
bahwa dalam mendefinisikan dan menghitung nilai dari
fungsi tersebut, batasi nilai inputnya sehingga fungsi
tersebut terdefenisi. Buat program untuk menghitung
penjumlahan, pengurangan, perkalian , dan pembagian
dari kedua fungsi di atas. Kedua fungsi tersebut
dideklarasikan sebagai fungsi.
3.1. Algoritma
3.1.1 Algoritma Prosedur Masukkan
1. Mulai
2. Masukkan nilai x,y, dan z
3. Selesai
3.1.2 Algoritma Fungsi f
1. Mulai
2. Deklarasikan variabel x,y,z : integer
Deklarasikan tipe f(x,y,z) : real
3. Jika (z<>0) dan ((10*x*x - y*y*y)/5*z*z >= 0) maka
a) f sqrt((10*x*x - y*y*y)/5*z*z)
b) cetak f
selain itu cetak 'f = tidak terdefinisi'
4. Selesai
3.1.3 Algoritma fungsi g
1.Mulai
2.Deklarasikan variabel x,y,z : integer
Deklarasikan tipe g(x,y,z) : real
a) g 6*x*x*x + y*y - 3*z
2. b) cetak g
3.selesai
3.1.4 Algoritma fungsi h
1. Mulai
2. Deklarasikan var x,y,z : integer
Deklarasikan tipe h(x,y,z) : real
3. Jika ( y<>0 ) maka
a) h (3/(y*y)) + z
b) cetak h
selain itu cetak 'h = tidak terdefinisi’
4. selesai
3.1.5 Algoritma fungsi fg1
1. Mulai
2. Deklarasikan x,y,z : integer, fg1(x,y,z) : real
3. Jika (z<>0) dan ((10*x*x - y*y*y)/5*z*z >= 0) maka
a)fg1 f+g
b)cetak fg1
selain itu cetak ' tidak ada'
4. selesai
3.1.6 Algoritma fungsi fg2
1. Mulai
2. Deklarasikan x,y,z : integer, fg2(x,y,z) : real
3. Jika (z<>0) dan ((10*x*x - y*y*y)/5*z*z >= 0) maka
a)Fg2 f-g
b)cetak fg2
selain itu cetak ' tidak ada'
4. selesai
3.1.7 Algoritma fungsi fg3
1. Mulai
2. Deklarasikan x,y,z : integer, fg3(x,y,z) : real
3. Jika (z<>0) dan ((10*x*x - y*y*y)/5*z*z >= 0) maka
a) Fg3 f*g
b) cetak fg3
selain itu cetak ' tidak ada'
4. selesai
3. 3.1.8 Algoritma fungsi fg4
1.Mulai
2.Deklarasikan x,y,z : integer, fg4(x,y,z) : real
3.Jika (z<>0) dan ((10*x*x - y*y*y)/5*z*z >= 0) maka
a) Fg4 f/g
b) cetak fg4
selain itu cetak ' tidak ada'
4.selesai
3.1.9 Algoritma fungsi fh1
1.Mulai
2.Deklarasikan x,y,z : integer, fh1(x,y,z) : real
3.Jika (z<>0) dan (y<>0) dan ((10*x*x - y*y*y)/5*z*z >=
0) maka
a)fh1 f+h
b)cetak fh1
selain itu cetak ' tidak ada'
4.Selesai
3.1.10 Algoritma fungsi fh2
1. Mulai
2. Deklarasikan x,y,z : integer, fh2(x,y,z) : real
3. Jika (z<>0) dan (y<>0) dan ((10*x*x - y*y*y)/5*z*z >=
0) maka
a.fh2 f-h
b.cetak fh2
selain itu cetak ' tidak ada'
4. Selesai
3.1.11 Algoritma fungsi fh3
1.Mulai
2.Deklarasikan x,y,z : integer, fh3(x,y,z) : real
3.Jika (z<>0) dan (y<>0) dan ((10*x*x - y*y*y)/5*z*z >=
0) maka
a)fh3 f*h
b)cetak fh3
selain itu cetak ' tidak ada'
4. 4.Selesai
3.1.12 Algoritma fungsi fh4
1.Mulai
2.Deklarasikan x,y,z : integer, fh4(x,y,z) : real
3.Jika (z<>0) dan (y<>0) dan ((10*x*x - y*y*y)/5*z*z >=
0) maka
a)fh4 f/h
b)cetak fh4
selain itu cetak ' tidak ada'
4.Selesai
3.1.13 Algoritma fungsi gh1
1. Mulai
2. Deklarasikan x,y,z : integer, gh1(x,y,z) : real
3. jika (y<>0) maka
a) gh1 g+h
b) cetak gh1
selain itu cetak ' tidak ada'
4. selesai
3.1.14 Algoritma fungsi gh2
1. Mulai
2. Deklarasikan x,y,z : integer, gh2(x,y,z) : real
3. jika (y<>0) maka
a) gh2 g-h
b) cetak gh2
selain itu cetak ' tidak ada'
4. selesai
3.1.15 Algoritma fungsi gh3
1. Mulai
2. Deklarasikan x,y,z : integer, gh3(x,y,z) : real
3. jika (y<>0) maka
a) gh3 g*h
b) cetak gh3
selain itu cetak ' tidak ada'
4. selesai
5. 3.1.16 Algoritma fungsi gh4
1. Mulai
2. Deklarasikan x,y,z : integer, gh4(x,y,z) : real
3. jika (y<>0) maka
a) gh4 g/h
b) cetak gh4
selain itu cetak ' tidak ada'
4. selesai
3.1.17 Algoritma Program Utama
1. Mulai
2. Deklarasikan variabel
i,x,y,z : integer
3. Panggil masukkan, f(x,y,z), g(x,y,z), h(x,y,z)
fg1(f(x,y,z),g(x,y,z)),fg2(f(x,y,z),g(x,y,z)),
fg3(f(x,y,z),g(x,y,z)),fg4(f(x,y,z),g(x,y,z)),
fh1(f(x,y,z),h(x,y,z)),fh2(f(x,y,z),h(x,y,z)),
fh3(f(x,y,z),h(x,y,z)),fh4(f(x,y,z),h(x,y,z)),
gh1(g(x,y,z),h(x,y,z)),gh2(g(x,y,z),h(x,y,z)),
gh3(g(x,y,z),h(x,y,z)),gh4(g(x,y,z),h(x,y,z))
4. Selesai
6. 3.2. Flowchart
3.2.1 Flowchart Prosedur Masukkan
3.2.2 Flowchart Fungsi f
Mulai
Input
X,y, dan z
Selesai
Mulai
Deklarasikan
X,y,z : integer
F(x,y,z : real
(z<>0) dan
((10*x*x -
y*y*y)/5*z*
z >= 0)
fsqrt((10*x*x
- y*y*y)/5*z*z)
cetak f
cetak
'f = tidak
terdefinisi
'
Selesai
tidak
ya
7. 3.2.3 Flowchart Fungsi g
3.2.4 Flowchart Fungsi h
Mulai
Deklarasikan
X,y,z : integer
g(x,y,z) : real
g 6*x*x*x + y*y - 3*z
cetak g
Selesai
Mulai
Deklarasikan
X,y,z : integer
h(x,y,z) : real
( y<>0 ) h (3/(y*y)) + z
cetak h
cetak
'h = tidak
terdefinisi
'
Selesai
tidak
ya
8. 3.2.5 Flowchart fungsi fg1
3.2.6 Flowchart fungsi fg2
Mulai
Deklarasikan
X,y,z : integer
fg1(x,y,z): real
(z<>0) dan
((10*x*x -
y*y*y)/5*z*
z >= 0)
fg1 f+g
cetak fg1
cetak
'tidak ada'
Selesai
tidak
ya
Mulai
Deklarasikan
X,y,z : integer
Fg2(x,y,z): real
(z<>0) dan
((10*x*x -
y*y*y)/5*z*z
>= 0)
Fg2 f-g
cetak fg2
tidak
ya
9. 3.2.7 Flowchart fungsi fg3
cetak
'tidak ada'
Selesai
Mulai
Deklarasikan
X,y,z : integer
Fg3(x,y,z): real
(z<>0) dan
((10*x*x -
y*y*y)/5*z*
z >= 0)
Fg3 f*g
cetak fg3
cetak
'tidak ada'
Selesai
tidak
ya
10. 3.2.8 Flowchart fungsi fg4
3.2.9 Flowchart fungsi fh1
Mulai
Deklarasikan
X,y,z : integer
Fg4(x,y,z) : real
(z<>0) dan
((10*x*x -
y*y*y)/5*z*
z >= 0)
Fg4 f/g
cetak fg4
cetak
'tidak ada'
Selesai
tidak
ya
Mulai
Deklarasikan
X,y,z : integer
fh1(x,y,z): real
(y<>0)dan(z<>0)
dan((10*x*x-
y*y*y)/5*z*z>=0)
fh1 f+h
cetak fh1
tidak
ya
11. 3.2.10 Flowchart fungsi fh2
3.2.11 Flowchart fungsi fh3
cetak
'tidak ada'
Selesai
Mulai
Deklarasikan
X,y,z : integer
Fh2(x,y,z): real
(y<>0)dan(z<>0)
dan((10*x*x-
y*y*y)/5*z*z>=0)
Fh2 f-h
cetak fh2
cetak 'tidak ada'
Selesai
tidak
ya
Mulai
Deklarasikan
X,y,z : integer
Fh3(x,y,z): real
12. 3.2.12 Flowchart fungsi fh4
(y<>0)dan(z<>0)
dan((10*x*x-
y*y*y)/5*z*z>=0)
Fh3 f*h
cetak fh3
cetak 'tidak ada'
Selesai
tidak
ya
Mulai
Deklarasikan
X,y,z : integer
Fh4(x,y,z): real
(y<>0)dan(z<>0)
dan((10*x*x-
y*y*y)/5*z*z>=0)
Fh4 f/h
cetak fh4
cetak 'tidak ada'
Selesai
tidak
ya
13. 3.2.13 flowchart fungsi gh1
3.2.14 flowchart fungsi gh2
Mulai
Deklarasikan
X,y,z : integer
Gh1(x,y,z): real
(y<>0) Gh1 g+h
cetak gh1
cetak 'tidak ada'
Selesai
tidak
ya
Mulai
Deklarasikan
X,y,z : integer
Gh2(x,y,z): real
(y<>0) Gh2 g-h
cetak gh2
cetak 'tidak ada'
Selesai
tidak
ya
14. 3.2.15 flowchart fungsi gh3
3.2.16 flowchart fungsi gh4
3.2.17 Flowchart Program Utama
Mulai
Deklarasikan
X,y,z : integer
Gh3(x,y,z): real
(y<>0) Gh3 g*h
cetak gh3
cetak 'tidak ada'
Selesai
tidak
ya
Mulai
Deklarasikan
X,y,z : integer
Gh4(x,y,z): real
(y<>0) Gh4 g/h
cetak gh4
cetak 'tidak ada'
Selesai
tidak
ya
Mulai
16. 3.3. Bahasa program
PROGRAM FUNGSI_TIGA_VARIABEL;
Uses Crt;
var i,x,y,z : integer;
procedure Masukkan;
begin
gotoxy(26,3); writeln('MENGHITUNG NILAI SUATU FUNGSI');
gotoxy(26,4); writeln('=============================');
gotoxy(2,6); writeln('Diketahui fungsi tiga variabel
sebagai berikut ini : ');
writeln(' F(X,Y,Z) = sqrt((10x^2 - y^3)/5z^2) ');
writeln(' G(X,Y,Z) = 6x^3 + y^2 - 3z ');
writeln(' H(X,Y,Z) = (3X^0/(y^2)) + z ');
writeln;
writeln(' Masukkan Bilangan Bulat : ');
write(' Masukkan Nilai x = '); readln(x);
write(' Masukkan nilai y = '); readln(y);
write(' Masukkan Nilai z = '); readln(z);
end;
function f(x,y,z : integer) : real;
begin
gotoxy(54,11);
if ( z<>0 ) and ((10*x*x - y*y*y)/5*z*z >= 0) then
begin
f := sqrt((10*x*x - y*y*y)/5*z*z);
writeln('f = ', f:5:2);
end
else writeln('f = tidak terdefinisi ');
end;
function g(x,y,z : integer) : real;
begin
gotoxy(54,12);
g := 6*x*x*x + y*y - 3*z;
clreol; writeln('g = ', g:5:2);
17. end;
function h(x,y,z : integer) : real;
begin
gotoxy(54,13);
if ( y<>0 ) then
begin
h := (3/(y*y)) + z;
writeln('h = ', h:5:2);
end
else writeln('h = tidak terdefinisi ');
end;
function fg1(f,g : real ) : real;
begin
gotoxy(30,19);
if ( z<>0 ) and ((10*x*x - y*y*y)/5*z*z >= 0) then
begin
fg1 := f+g;
writeln(fg1:8:2);
end
else writeln(' tidak ada');
end;
function fg2(f,g : real ) : real;
begin
gotoxy(44,19);
if ( z<>0 ) and ((10*x*x - y*y*y)/5*z*z >= 0) then
begin
fg2 := f-g;
writeln(fg2:8:2);
end
else writeln('tidak ada');
end;
function fg3(f,g : real ) : real;
begin
gotoxy(57,19);
if ( z<>0 ) and ((10*x*x - y*y*y)/5*z*z >= 0) then
18. begin
fg3 := f*g;
writeln(fg3:8:2);
end
else writeln('tidak ada');
end;
function fg4(f,g : real) : real;
begin
gotoxy(68,19);
if ( z<>0 ) and ((10*x*x - y*y*y)/5*z*z >= 0) then
begin
fg4 := f/g;
writeln(fg4:9:2);
end
else writeln(' tidak ada');
end;
function fh1(f,h : real ) : real;
begin
gotoxy(30,20);
if ( z<>0 ) and (y<>0) and ((10*x*x - y*y*y)/5*z*z >= 0)
then
begin
fh1 := f+h;
writeln(fh1:8:2);
end
else writeln(' tidak ada');
end;
function fh2(f,h : real ) : real;
begin
gotoxy(44,20);
if ( z<>0 ) and (y<>0) and ((10*x*x - y*y*y)/5*z*z >= 0)
then
begin
fh2 := f-h;
writeln(fh2:8:2);
19. end
else writeln('tidak ada');
end;
function fh3(f,h : real ) : real;
begin
gotoxy(57,20);
if ( z<>0 ) and (y <>0 )and ((10*x*x - y*y*y)/5*z*z >= 0)
then
begin
fh3 := f*h;
writeln(fh3:8:2);
end
else writeln('tidak ada');
end;
function fh4(f,h : real) : real;
begin
gotoxy(68,20);
if ( z<>0 ) and (y<>0) and ((10*x*x - y*y*y)/5*z*z >= 0)
then
begin
fh4 := f/h;
writeln(fh4:9:2);
end
else writeln(' tidak ada');
end;
function gh1(g,h : real ) : real;
begin
gotoxy(30,21);
if (y<>0) then
begin
gh1 := g+h;
writeln(gh1:8:2);
end
else writeln(' tidak ada');
end;
20. function gh2(g,h : real ) : real;
begin
gotoxy(44,21);
if (y<>0) then
begin
gh2 := g-h;
writeln(gh2:8:2);
end
else writeln('tidak ada');
end;
function gh3(g,h : real ) : real;
begin
gotoxy(57,21);
if (y <>0 ) then
begin
gh3 := g*h;
writeln(gh3:8:2);
end
else writeln('tidak ada');
end;
function gh4(g,h : real) : real;
begin
gotoxy(68,21);
if (y<>0) then
begin
gh4 := g/h;
writeln(gh4:9:2);
end
else writeln(' tidak ada');
end;
begin
CLRSCR;
masukkan;
f(x,y,z);
g(x,y,z);
21. h(x,y,z);
gotoxy(41,11); writeln('Nilai untuk Ketiga Variabel :');
gotoxy(43,12); writeln('F(X,Y,Z) = ');
gotoxy(43,13); writeln('G(X,Y,Z) = ');
gotoxy(43,14); writeln('H(X,Y,Z) = ');
gotoxy(2,16); writeln('Tabel Pengoperasian untuk Fungsi
Tiga Variabel');
gotoxy(2,17);
writeln('==================================================
============================');
gotoxy(2,18); writeln('| UNSUR KE-1 | UNSUR KE-2 |
PEJUMLAHAN | PENGURANGAN | PERKALIAN | PEMBAGIAN |');
gotoxy(2,19);
writeln('==================================================
============================');
gotoxy(5,20); writeln('F(X,Y,Z) G(X,Y,Z)');
gotoxy(5,21); writeln('F(X,Y,Z) H(X,Y,Z)');
gotoxy(5,22); writeln('G(X,Y,Z) H(X,Y,Z)');
for i := 1 to 3 do
begin
gotoxy(2,i+19); writeln('|');
gotoxy(15,i+19); writeln('|');
gotoxy(28,i+19); writeln('|');
gotoxy(41,i+19); writeln('|');
gotoxy(55,i+19); writeln('|');
gotoxy(67,i+19); writeln('|');
gotoxy(79,i+19); writeln('|');
end;
gotoxy(2,23);
writeln('==================================================
============================');
gotoxy(2,24); writeln('Catt. Maksud "tidak ada" pada
pengoperasian fungsi - fungsi di atas adalah ');
gotoxy(2,25); writeln(' hasilnya "tidak
terdefinisi".');
fg1(f(x,y,z),g(x,y,z));