LAPORAN RESMI PRAKTIKUM 1 METODE NUMERIK
KONVERSI BILANGAN
I. Algoritma Program
1. Tentukan besarnya basis-n suatu bilangan baseN
2. Baca input bilangan valueN, kemudian tentukan panjang digit digitN
3. Parsing valueN untuk mendapatkan an[0] s/d an[digitN-1] sebagai nilai tiap posisi bilangan
4. Nilai hasil bn[0] = an[0]
5. Untuk i=1 s/d i<digitN, hitung : bn[i] = an[i] + (bn[i-1]*baseN)
II. Source Code Program yang Sudah Benar
Pemrograman : Java, Netbeans
package konversi;
import [Link];
public class KonversiBilangan extends [Link] {
int i, j, baseN, digitN, valueN, loops;
int[] an, bn;
public KonversiBilangan() {
initComponents();
}
@SuppressWarnings("unchecked")
// Generated Code
private void initComponents() {
.... //ini berisi source code hasil generate dari desain GUI
}
private void btnKonversiActionPerformed([Link] evt) {
try {
boolean isBase2 = [Link]();
boolean isBase4 = [Link]();
boolean isBase8 = [Link]();
String desimalValue = new String();
desimalValue = [Link]();
valueN = [Link](desimalValue);
digitN = [Link]();
an = new int[digitN];
bn = new int[digitN];
if(isBase2) {
baseN = 2;
} else if (isBase4) {
baseN = 4;
} else if (isBase8) {
baseN = 8;
}
1210151036 M. FATHUR ROHMAN
loops = digitN;
for(i=0; i<digitN; i++) {
an[i] = valueN/(pangkat(10, --loops));
valueN = valueN - (an[i]*(pangkat(10, loops)));
}
bn[0] = an[0];
for(i=1; i<digitN; i++) {
bn[i] = an[i] + (bn[i-1]*baseN);
}
[Link]([Link](bn[digitN-1]));
} catch (Exception e) {
[Link](null, "Input tidak valid: " + [Link]());
} finally {
[Link](true);
[Link](true);
}
}
public static void main(String args[]) {
[Link](new Runnable() {
public void run() {
new KonversiBilangan().setVisible(true);
}
});
}
public static int pangkat(int x, int y) {
int n, hasil=1;
for(n=0; n<y; n++) {
hasil = hasil * x;
}
return hasil;
}
private [Link] base2;
private [Link] base4;
private [Link] base8;
private [Link] btnKonversi;
private [Link] buttonBase;
private [Link] jLabel1;
private [Link] jLabel2;
private [Link] jLabel3;
private [Link] jLabel4;
private [Link] jLabel5;
private [Link] jLabel6;
private [Link] jLabel7;
private [Link] txtInput;
private [Link] txtOutDesimal;
}
1210151036 M. FATHUR ROHMAN
III. Screenshot Praktikum
1. Tampilan Netbeans 8.1 IDE (Source Code View)
2. Tampilan Netbeans 8.1 IDE (Design View)
3. Tampilan Program saat dijalankan
a. Konversi Bilangan base-2 (biner) ke desimal
1210151036 M. FATHUR ROHMAN
Pengujian base-2 ke desimal dengan digit yang lebih panjang
b. Konversi Bilangan base-4) ke desimal
Pengujian base-4 ke desimal dengan digit yang lebih panjang
1210151036 M. FATHUR ROHMAN
c. Konversi Bilangan base-8 ke desimal
Pengujian base-8 ke desimal dengan digit yang lebih panjang
1210151036 M. FATHUR ROHMAN