Jumat, 23 Mei 2014

tehnik Optimasi


1.    Folding
Angsuran:=rp_bulan + bunga + 100000 + 80000;
Dapat dioptimasi menjadi:
Angsuran:=rp_bulan + bunga + 180000
2.    Redundent
cicilan:= rp_bulan + bunga;
biaya_adm:= 100000 + 80000;
angsuran:= rp_bulan + bunga + 100000 + 80000;
Dapat dioptimasi menjadi:
cicilan:= rp_bulan + bunga;
biaya_adm:= 100000 + 80000;
angsuran:= cicilan + biaya_adm;
3.     Frequensi Reduction
for I:=1 to 100 do
begin
X:= 10;
A:= A + I;
End;
menjadi

X:= 10;
for I:=1 to 100 do
begin
A:= A + I;
End;
4.    Loop unrolling
For X:=1 to 5 do
A[X]:=0;
Dapat dioptimasi menjadi
A[1]:=0;
A[2]:=0;
A[3]:=0;
A[4]:=0;
A[5]:=0;
5.    Unreachable/ Dead Code
Y := 10;
IF Y = 0 THEN
B := B + 2
Instruksi
B := B + 2 tidak pernah dikerjakan

6.    Unused Parameter
procedure penjumlahan(x,y,z ; Integer);
var a : integer;
begin
a := x + y;
end
Parameter z tidak pernah digunakan sehingga tidak perlu diikut sertakan

7.    Unused Variabel
program luas;
uses crt;
var
a,t,x: integer;
L: real;
begin
clrscr;
write('Masukan Nilai Alas:');
readln (a);
write('Masukan Nilai Tingi:');
readln(t);
writeln(' ');
L:=(a*t)/2;
writeln('Luas Segitiga adalah =',L:6:2);
readln;
end.
x tidak pernah digunakan

8.    Variabel Tanpa Nilai Awal
program luas;
uses crt;
var
a,t,x: integer;
L: real;
begin
clrscr;
write('Masukan Nilai Alas:');
readln (a);
writeln(' ');
L:=(a*t)/2;
writeln('Luas Segitiga adalah =',L:6:2);
readln;
end.
Variable t digunakan tapi tidak memiliki nilai awal
















Tidak ada komentar:

Posting Komentar