unit Unit1;
interface
uses
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
RadioGroup1: TRadioGroup;
Edit1: TEdit;
2
Label11: TLabel;
Button1: TButton;
RadioGroup2: TRadioGroup;
RadioGroup3: TRadioGroup;
Label12: TLabel;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
W1,W2,W3,R,Rt : Real;
implementation
{$R *.dfm}
begin
// Warna Pertama
If radiogroup1.ItemIndex = 0 then
begin
Label1.Color:=clblack;
W1:=0;
end;
If radiogroup1.ItemIndex = 1 then
begin
Label1.Color:=$002F62A8;
W1:=10;
end;
3
If radiogroup1.ItemIndex = 2 then
begin
Label1.Color:=clred;
W1:=20;
end;
If radiogroup1.ItemIndex = 3 then
begin
Label1.Color:=$000080FF;
W1:=30;
end;
If radiogroup1.ItemIndex = 4 then
begin
Label1.Color:=clyellow;
W1:=40;
end;
If radiogroup1.ItemIndex = 5 then
begin
Label1.Color:=clgreen;
W1:=50;
end;
If radiogroup1.ItemIndex = 6 then
begin
Label1.Color:=clblue;
W1:=60;
end;
If radiogroup1.ItemIndex = 7 then
begin
Label1.Color:=clpurple;
W1:=70;
end;
If radiogroup1.ItemIndex = 8 then
begin
Label1.Color:=clgray;
W1:=80;
4
end;
If radiogroup1.ItemIndex = 9 then
begin
Label1.Color:=clwhite;
W1:=90;
end;
end;
begin
// Warna Kedua
If radiogroup2.ItemIndex = 0 then
begin
Label2.Color:=clblack;
W2:=0;
end;
If radiogroup2.ItemIndex = 1 then
begin
Label2.Color:=$002F62A8;
W2:=1;
end;
If radiogroup2.ItemIndex = 2 then
begin
Label2.Color:=clred;
W2:=2;
end;
If radiogroup2.ItemIndex = 3 then
begin
Label2.Color:=$000080FF;
W2:=3;
end;
If radiogroup2.ItemIndex = 4 then
5
begin
Label2.Color:=clyellow;
W2:=4;
end;
If radiogroup2.ItemIndex = 5 then
begin
Label2.Color:=clgreen;
W2:=5;
end;
If radiogroup2.ItemIndex = 6 then
begin
Label2.Color:=clblue;
W2:=6;
end;
If radiogroup2.ItemIndex = 7 then
begin
Label2.Color:=clpurple;
W2:=7;
end;
If radiogroup2.ItemIndex = 8 then
begin
Label2.Color:=clgray;
W2:=8;
end;
If radiogroup2.ItemIndex = 9 then
begin
Label2.Color:=clwhite;
W2:=9;
end;
end;
begin
// Warna Ketiga
6
If radiogroup3.ItemIndex = 0 then
begin
Label3.Color:=clblack;
W3:=1;
end;
If radiogroup3.ItemIndex = 1 then
begin
Label3.Color:=$002F62A8;
W3:=10;
end;
If radiogroup3.ItemIndex = 2 then
begin
Label3.Color:=clred;
W3:=100;
end;
If radiogroup3.ItemIndex = 3 then
begin
Label3.Color:=$000080FF;
W3:=1000;
end;
If radiogroup3.ItemIndex = 4 then
begin
Label3.Color:=clyellow;
W3:=10000;
end;
If radiogroup3.ItemIndex = 5 then
begin
Label3.Color:=clgreen;
W3:=100000;
end;
If radiogroup3.ItemIndex = 6 then
begin
Label3.Color:=clblue;
7
W3:=1000000;
end;
If radiogroup3.ItemIndex = 7 then
begin
Label3.Color:=clpurple;
W3:=10000000;
end;
If radiogroup3.ItemIndex = 8 then
begin
Label3.Color:=clgray;
W3:=100000000;
end;
If radiogroup3.ItemIndex = 9 then
begin
Label3.Color:=clwhite;
W3:=1000000000;
end;
end;
begin
R:=(W1+W2)*W3;
if R<1000 then
begin
Rt:=R;
label4.Caption:='Ohm';
end;
if R>=1000 then
begin
Rt:=R/1000;
label4.Caption:='K Ohm';
end;
if R>=1000000 then
begin
8
Rt:=R/1000000;
label4.Caption:='M Ohm';
end;
if R>=1000000000 then
begin
Rt:=R/1000000000;
label4.Caption:='G Ohm';
end;
Edit1.Text:=floattostr(Rt);
end;
end.
9
Start
W1,W2,W3,R,Rt
Real
Ii1 = 0 Ii13= 0
Ii2 = 0
Ii1 = 1 Ii3 = 1
Pilihan
Warna 1 = Hitam Ii2 = 1
Warna 3 = Hitam
Warna 2 = Hitam
Ii1 = 2 Ii3 = 2
W1 = 0 Ii2 = 2
Warna 1 = Coklat W3 = 1
W2 = 0 Warna 3 = Cokelat
Warna 2 = Coklat
Ii1 = 3 Ii3 = 3
W1 = 10 Warna 1 = Merah Ii2 = 3
W2 = 1 W3 = 10 Warna 3 = Merah
Warna 2 = Merah
W1 = 20 Warna 1 = Orange
W2 = 2 Warna 2 = Orange W3 = 100 Warna 3 = Orange
W1 = 30
W2 = 3 W1 = 1000
R = (W1+W2)*W3
Jika R<1000
Rt=R
Label4 = Ohm
Jika R<1000000
Rt=R/1000
Label4 = K Ohm
Jika R<1000000000
Rt=R/1000000
Label4 = M Ohm
Jika R<1000000000000
Rt=R/1000000000
Label4 = G Ohm
Tampilkan Rt
di Edit 1
Stop
1. Pada Proses pertama yaitu mendeklarasikan variable w1,w2,w3,R dan Rt sebagai bilangan Real/berkoma
2. Kemudian menggunakan bahasa program If untuk memproses data
- jika itemindex pada Radiogroup1 = 0 maka warna label1 menjadi hitam dan nilai W1 = 0
- jika itemindex pada Radiogroup1 = 1 maka warna label1 menjadi coklat dan nilai W1 = 10
- jika itemindex pada Radiogroup1 = 2 maka warna label1 menjadi merah dan nilai W1 = 20
- jika itemindex pada Radiogroup1 = 3 maka warna label1 menjadi orange dan nilai W1 = 30
- jika itemindex pada Radiogroup2 = 0 maka warna label2 menjadi hitam dan nilai W2 = 0
- jika itemindex pada Radiogroup2 = 1 maka warna label2 menjadi coklat dan nilai W2 = 1
- jika itemindex pada Radiogroup2 = 2 maka warna label2 menjadi merah dan nilai W2 = 2
- jika itemindex pada Radiogroup2 = 3 maka warna label2 menjadi orange dan nilai W2 = 3
- jika itemindex pada Radiogroup3 = 0 maka warna label3 menjadi hitam dan nilai W3 = 1
- jika itemindex pada Radiogroup3 = 1 maka warna label3 menjadi coklat dan nilai W3 = 10
- jika itemindex pada Radiogroup3 = 2 maka warna label3 menjadi merah dan nilai W3 = 100
- jika itemindex pada Radiogroup3 = 3 maka warna label3 menjadi orange dan nilai W3 = 1000
Seluruh data hasil keluaran proses ini terhubung dan disatukan untuk diproses mencari nilai R
3. Lalu data diproses lagi untuk mendapatkan nilai R yaitu R=(W1+W2)*W3, setelah itu didapat nilai Resistor berdasarkan warnanya namun jika nilai resistor sangat besar, untuk ditampilkan dalam bentuk yang terlalu besar dalam satuan Ohm
tidaklah efisien oleh karena itu diberikan proses lagi dengan mengubah satuan yang ditampilkan menjadi Ohm, K Ohm, M Ohm dan G Ohm dengan cara :
- Jika nilai R < 1000 maka nilai Rt = R dan satuan yang digunakan yaitu Ohm
- Jika nilai R < 1000000 maka nilai Rt = R/1000 dan satuan yang digunakan yaitu K Ohm
- Jika nilai R < 1000000000 maka nilai Rt = R/1000000 dan satuan yang digunakan yaitu M Ohm
- Jika nilai R < 1000000000000 maka nilai Rt = R/1000000000 dan satuan yang digunakan yaitu G Ohm
4. Dan didapatlah nilai Rt dimana nilai Rt menjadi output dan ditampilkan pada Label1
5. Dan berakhirlah program perhitungan nilai Resistor berdasarkan warna pada bagian STOP
( Coding dan Program sudah di coba di aplikasi Delphi dan sudah bias beroperasi dengan baik dan benar)