KELAS : 1IA17
NPM: 52414474
DOSEN: KUNTO BAYU
TEKNIK SWITCHING
Definisi :
Tehnik Switching merupakan cara memperpendek jalur proses yang memakai suatu indikator untuk mengantisipasi proses yang akan dilakukan selanjutnya. Indikator ini dimisalkan seperti switch pada tombol lampu yang dapat mengatur dua kondisi yaitu nyala dan padam.
Dalam flowchart, switch merupakan variabel yang (biasanya) diisi dengan dua kondisi yaitu 0 dan 1. Melalui isi variabel tersebut dapat diketahui kondisi proses yang telah dilakukan. Sehingga dapat dilakukan pengalihan proses tanpa melalui proses sebelumnya atau mempersingkat alur proses.
contoh:
Suatu perusahaan akan membuat laporan gaji pegawainya berdasarkan golongannya. Data yang dibaca terdiri dari nomor pegawai, nama pegawai, golongan dan gaji bersih. Data yang dibaca sudah urut per golongan yang terdiri dari : golongan 1, 2, 3, 4. Jika golongan berubah maka cetak TOTAL GAJI per golongan dan ganti halaman baru serta NOMOR dimulai dari 1.
Pada akhir laporan cetak TOTAL SELURUH GAJI yaitu jumlah total gaji seluruh golongan.
Flowchart :
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv2ukLl0SV0sGQUTTB0KvkClzSegM7jYob_NAd9XuNTtZT-wN4x-_rjSBaKeVzoMqUx5ruoTAmK989rhCivvKuKI5udNXV2EXy3qiU7w2M3i7b03IZRZF-7jNXueI_5gdOly7F33C0ZY4/s640/diagram+LA+switching.png)
Database :
CREATE TABLE `gaji` (
`nopeg` varchar(10) NOT NULL,
`nama` varchar(10) NOT NULL,
`golongan` int(1) NOT NULL,
`gaji` decimal(12,0) NOT NULL,
PRIMARY KEY (`nopeg`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiq7z2YsolIs7LliCUSUT0CpaSQsLqIG6R_M2ClO0eeWCvneuSEBzGOT4f0tKrrcSZyyYkOQes43Y0TGWnqvS8krC5dke8NIjuWk-mpfshZeBkk3eDL5mZfpGEJtwZZM3sKK-CRoDXR7YQ/s320/db-mysql.png)
Script :
Flowchart diatas saya terjemahkan ke script. Untuk mudahnya saya menggunakan bahasa PHP + database MySQL. Script saya tulis dengan aplikasi gPHPEdit, Kompozer dibantu dengan tool Adee HTML to PHP Converter dan Adee HTML Parser :-)
$dbhost = 'localhost';";
$dbuser = 'root';
$dbpass = 'server';
$dbname = 'latihan';
$sw = 0;
$tot_gaji_gol=0;
$tot_gaji_all=0;
$no=0;
$gol_current=0;
$flag_awal=0;
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error Koneksi');
mysql_select_db($dbname);
$perintah = "select * from gaji order by golongan asc";
$hasil=mysql_query($perintah);
while ($row=mysql_fetch_array($hasil)){
$nopeg=$row["nopeg"];
$nama=$row["nama"];
$golongan=$row["golongan"];
$gaji=$row["gaji"];
$no=$no+1;
if($golongan <> $gol_current) {
$gol_current = $golongan;
$sw=0;
}
//cek switch, jika 0 cetak judul & header tabel, ubah switch jadi 1
if($sw==0){
//tutup tabel
if ($flag_awal > 0) {
echo "
echo "";
echo "Total Gaji : " . $tot_gaji_gol;
echo "
";
}
//cetak judul
echo "Tabel Gaji PT.ABC";
echo "
";
echo "";
echo " ";
echo "";
echo "";
echo "";
echo "";
echo "";
echo " ";
$sw=1;
$flag_awal=$flag_awal+1;
$gol_current=$golongan;
$tot_gaji_gol = 0;
}
echo " ";
echo "";
echo "";
echo "";
echo "";
echo "";
echo " ";
$tot_gaji_gol=$tot_gaji_gol + $gaji;
$tot_gaji_all =$tot_gaji_all + $gaji;
}
// tutup tabel
echo "";
echo "
NO | NOPEG | NAMA | GOLONGAN | GAJI |
$no | $nopeg | $nama | $golongan | $gaji |
echo "Total Gaji : " . $tot_gaji_gol;
echo "
";
echo "Total Seluruh Gaji : " . $tot_gaji_all;
?>
sumber: irma14.blogspot.com
Tidak ada komentar:
Posting Komentar