Anda di halaman 1dari 48

KELOMPOK 30

1.
2.
3.
4.
5.
6.
7.

SELA NAAFI
155060201111023
PRABOWO WICAKSONO
155060201111028
AFRI SETYO
155060201111029
ALI MUSAFA
155060201111030
KUSUMA ADI WARDANA
155060201111042
MUHAMMAD IMRON AFANDI
155060201111044
FIRMAN ANDI AHMAD
155060201111045

ALGORITMA MDI FORM

FLOWCHART MDI FORM

ALGORITMA MDI FORM

ALGORITMA TEKANAN

FLOWCHART TEKANAN

coding
PublicClassForm1

PrivateSubProcces_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesProcces.Click
DimFAsInteger'angkabilanganbulatpositif'
DimAAsInteger'angkabilanganbulatpositif'
DimPAsInteger'angkabilanganbulatpositif'

F=Gaya.Text
A=Luas.Text

P=F/A
Hasil.Text=P

Hasil.Enabled=False'textboxHasiltidakbisadiisi'
Luas.Enabled=False'textboxLuastidakbisadiisi'
Procces.Enabled=False'buttonProccestidakbisadiisi'

DimpertanyaanAsInteger
pertanyaan=MsgBox("Apakahinginmengulang?",MsgBoxStyle.YesNo,"Konfirmasi")
Ifpertanyaan=vbYesThen
Hapus.Enabled=True'buttonHapusbisadiklik'
ElseIfpertanyaan=vbNoThen
Me.Close()'keluardariprogram'
EndIf

EndSub

PrivateSubGaya_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesGaya.KeyPress
'IfIsNumeric(e.KeyChar)Then
'e.Handled=False
'Else
'e.Handled=True
'EndIf
'atau
DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((key>=48)And(key<=57))Or(key=8))Then
e.Handled=True

EndIf
EndSub

PrivateSubF_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesGaya.TextChanged
IfGaya.Text=""Then'textboxGayakosong'
Luas.Enabled=False'textLuastidakbisadiisi'
Else
Luas.Enabled=True'textboxLuasbisadiisi'
EndIf
Gaya.MaxLength=7
EndSub

PrivateSubLuas_GotFocus(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesLuas.GotFocus
Gaya.Enabled=False'textboxGayatidakbisadiisi'
EndSub

PrivateSubLuas_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesLuas.KeyPress
'IfIsNumeric(e.KeyChar)Then
'e.Handled=False
'Else
'e.Handled=True
'EndIf
'atau
DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((key>=48)And(key<=57))Or(key=46)Or(key=8))Then
e.Handled=True

EndIf

EndSub

PrivateSubA_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesLuas.TextChanged
IfLuas.Text=""Then'textboxLuaskosong'
Procces.Enabled=False'buttonProccestidakbisadiklik'

Else
Procces.Enabled=True'buttonProccesbisadiklik'
Gaya.Enabled=False'textboxGayatidakbisadiisi'
EndIf
Luas.MaxLength=7
EndSub

PrivateSubForm1_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
Luas.Enabled=False'textboxLuastidakbisadiisi'
Procces.Enabled=False'buttonProccestidakbisadiklik'
Hasil.Enabled=False'buttonHasiltidakbisadiklik'
Hapus.Enabled=False'buttonHapustidakbisadiklik'
EndSub

PrivateSub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)


HandlesHapus.Click
Gaya.Text=""'textboxGayakosong'
Luas.Text=""'textboxLuaskosong'
Hasil.Text=""'textboxHasilkosong'
Gaya.Enabled=True'textboxGayabisadiisi'
Luas.Enabled=False'textboxLuastidakbisadiisi'
Hasil.Enabled=False'buttonHasiltidakbisadiklik'
Hapus.Enabled=False'buttonHapustidakbisadiklik'
EndSub

EndClass

ALGORITMA GAS IDEAL

FLOWCHART GAS IDEAL

coding
PublicClassForm1

PrivateSubHitung_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesHitung.Click
DimmAsInteger'angkambilanganbulat
DimVAsInteger'angkaVbilanganbulat
DimTAsInteger'angkaTbilanganbulat
DimRAsSingle'angkaRbilanganpecahan
DimPAsSingle'angkaPbilanganpecahan

V=Volume.Text
T=Suhu.Text
m=Jumlah.Text
R=0.082

P=(m*R*T)/V
Hasil.Text=P

Hasil.Enabled=False'textboxhasiltidakbisadiisi
Hapus.Enabled=True'buttonhapusbisadiclick
Jumlah.Enabled=False'textboxjumlahtidakbisadiisi

DimpertanyaanAsInteger
pertanyaan=MsgBox("Apakahinginmengulang",MsgBoxStyle.YesNo,"Konfirmasi")
Ifpertanyaan=vbYesThen
Hapus.Enabled=True'buttonhapustidakbisadiclick
Hitung.Enabled=False'buttonhitungtidakbisadiclick
ElseIfpertanyaan=vbNoThen
Me.Close()'keluardariprogram
EndIf
EndSub

PrivateSubVolume_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesVolume.KeyPress

DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((e.KeyChar>="0"Ande.KeyChar<="9")Ore.KeyChar=vbBack))Then
e.Handled=True'tombolyangdapatdigunakanhanyatombol0sampai9danbackspace
EndIf
EndSub

PrivateSubVolume_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesVolume.TextChanged
Volume.MaxLength=5

IfVolume.Text=""Then'textboxvolumekosong
Suhu.Enabled=False'textboxsuhutidakbisadiisi
Jumlah.Enabled=False'textboxjumlahtidakbisadiisi
Hitung.Enabled=False'buttonhitungtidakbisadiclick
Else
Suhu.Enabled=True'textboxsuhubisadiisi
Jumlah.Enabled=False'textboxjumlahtidakbisadiisi
EndIf
EndSub

PrivateSubSuhu_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesSuhu.KeyPress

DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((e.KeyChar>="0"Ande.KeyChar<="9")Ore.KeyChar=vbBack))Then
e.Handled=True'tombolyangdapatdigunakanhanyatombol0sampai9danbackspace
EndIf
EndSub

PrivateSubSuhu_GotFocus(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesSuhu.GotFocus
Volume.Enabled=False'textboxsuhutidakbisadiisi
EndSub

PrivateSubSuhu_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesSuhu.TextChanged
Suhu.MaxLength=5

IfSuhu.Text=""Then'textboxsuhukosong
Jumlah.Enabled=False'textboxjumlahtidakbisadiisi
Volume.Enabled=False'textboxvolumetidakbisadiisi
Else
Jumlah.Enabled=True'textboxjumlahbisadiisi
Volume.Enabled=False'textboxvolumetidakbisadiisi
EndIf
EndSub

PrivateSub Jumlah_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles


Jumlah.KeyPress

DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((e.KeyChar>="0"Ande.KeyChar<="9")Ore.KeyChar=vbBack))Then
e.Handled=True'tombolyangdapatdigunakanhanyatombol0sampai9danbackspace

EndIf
EndSub

PrivateSubJumlah_Gotfocus(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesJumlah.GotFocus
Suhu.Enabled=False'textboxjumlahtidakbisadiisi
EndSub

PrivateSub Jumlah_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles


Jumlah.TextChanged
Jumlah.MaxLength=5

IfJumlah.Text=""Then'textboxjumlahkosong
Hitung.Enabled=False'buttonhitungtidakbisadiclick
Else
Hitung.Enabled=True'buttonprosesbisadiclick
Volume.Enabled=False'textboxvolumetidakbisadiisi
Suhu.Enabled=False'textboxsuhutidakbisadiisi
EndIf
EndSub

PrivateSubHapus_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesHapus.Click
Volume.Text=""'textboxvolumekosong
Suhu.Text=""'textboxsuhukosong
Jumlah.Text=""'textboxjumlahkosong
Hasil.Text=""'textboxhasilkosong
Volume.Enabled=True'textboxvolumebisadiisi
Suhu.Enabled=False'textboxsuhutidakbisadiisi
Jumlah.Enabled=False'textboxjumlahtidakbisadiisi
Hasil.Enabled=False'textboxhasiltidakbisadiisi
Hapus.Enabled=False'textboxhapustidakbisadiisi
EndSub

PrivateSubFinish_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)
Me.Close()'keluardariprogram
Hapus.Enabled=False'buttonhapustidakbisadiclik
Hitung.Enabled=False'buttonhitungtidakbisadiclik
EndSub

PrivateSub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)


HandlesMyBase.Load
Suhu.Enabled=False'textboxsuhutidakbisadiisi
Jumlah.Enabled=False'textboxjumlahtidakbisadiisi
Hitung.Enabled=False'buttonhitungtidakbisadiclik
Hapus.Enabled=False'buttonhapustidakbisadiclick
Hasil.Enabled=False'textboxhasiltidakbisadiisi

EndSub
EndClass

ALGORITMA PHYTAGORAS

FLOWCHART PHYTAGORAS

coding
PublicClasspytagoras

PrivateSubPROSES_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesPROSES.Click
DimAAsInteger'angkaAbilanganbulat
DimBAsInteger'angkaBbilanganbulat
DimCAsLong'angkaCbilanganbulat

A=SISIA.Text
B=SISIB.Text

C=((A*A)+(B*B))^(1/2)

SISIC.Text=C

SISIC.Enabled=False'textboxSISICtidakbisadiisi
SISIB.Enabled=False'textboxSISIBtidakbisadiisi
HAPUS.Enabled=True'buttonHAPUSbisadiklik

DimpertanyaanAsInteger
pertanyaan=MsgBox("apakahinginmengulang?",MsgBoxStyle.YesNo,"konfirmasi")
Ifpertanyaan=vbYesThen
HAPUS.Enabled=True'buttonHAPUSbisadiklik
SISIA.Enabled=False'textboxSISIAtidakbisadiisi
SISIB.Enabled=False'texboxSISIBtidakbisadiisi
PROSES.Enabled=False'buttonPROSESbisadiklik
ElseIfpertanyaan=vbNoThen
Me.Close()'keluardariprogram
EndIf

EndSub
PrivateSubSISIA_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesSISIA.KeyPress
'IfIsNumeric(e.KeyChar)Then
'e.Handled=False
'Else
'e.Handled=True
'EndIf
'atau
DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((key>=48)And(key<=57))Or(key=44))Then
e.Handled=True
EndIf

EndSub

PrivateSub SISIA_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles


SISIA.TextChanged
SISIA.MaxLength=4

IfSISIA.Text=""Then'textboxSISIAkosong
SISIB.Enabled=False'textboxSISIBtidakbisadiisi
SISIC.Enabled=False'textboxSISICtidakbisadiisi
Else
SISIB.Enabled=True'textboxSISIBdapatdiisi
SISIC.Enabled=False'textboxSISICdapatdiisi

EndIf

EndSub

PrivateSubSISIB_GotFocus(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesSISIB.GotFocus
SISIA.Enabled=False'textboxSISIAtidakbisadiisi
EndSub

PrivateSubSISIB_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesSISIB.KeyPress
'IfIsNumeric(e.KeyChar)Then
'e.Handled=False
'Else
'e.Handled=True
'EndIf
'atau
DimkeyAsInteger=Char.ConvertToUtf32(e.KeyChar.ToString(),0)
IfNot(((key>=48)And(key<=57))Or(key=44))Then
e.Handled=True

EndIf
EndSub
PrivateSubSISIB_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesSISIB.TextChanged
SISIB.MaxLength=4'hanyadapatdiisimaximal4digit

IfSISIB.Text=""Then'textboxSISIBkosong
SISIC.Enabled=False'textboxSISICtidakdapatdiisi
SISIA.Enabled=False'textboxSISIAtidakdapatdiisi
Else
PROSES.Enabled=True'buttonPROSESbisadiklik
SISIC.Enabled=False'textboxSISICtidakbisadiisi
SISIA.Enabled=False'textboxSISIAtidakbisadiisi
EndIf

EndSub

PrivateSubHAPUS_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesHAPUS.Click
SISIA.Text=""'textboxSISIAkosong
SISIB.Text=""'textboxSISIBkosong
SISIC.Text=""'textboxSISICkosong
SISIA.Enabled=True'textboxSISIAbisadiisi
SISIB.Enabled=False'textboxSISIBtidakbisadiisi
PROSES.Enabled=False'buttonPROSEStidakbisadiklik
SISIC.Enabled=False'textboxSISICtidakbisadiisi
HAPUS.Enabled=False'buttonHAPUStidakbisadiklik

EndSub

PrivateSubForm1_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
SISIA.Enabled=True'textboxSISIAbisadiisi
SISIB.Enabled=False'textboxSISIBtidakbisadiisi
SISIC.Enabled=False'textboxSISICtidakbisadiisi
PROSES.Enabled=False'buttonPROSEStidakbisadiklik
HAPUS.Enabled=False'buttonHAPUStidakbisadiklik

EndSub

PrivateSubPictureBox1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

EndSub
EndClass

PROJECT 2
ARDUINO UNO
Arduino adalah pengendali mikro single-board yang bersifat
open-source diturunkan dari Wiring platform, dirancang untuk
memudahkan penggunaan elektronik dalam berbagai bidang.
Hardwarenya memiliki prosesor
Atmel AVR dan softwarenya
memiliki bahasa pemrograman sendiri.
Arduino yang kita pakai pada praktikum kali ini adalah Arduino
Uno.

ALGORITMA USER

ALGORITMA PROGRAM

FLOWCHART USER

FLOWCHART PROGRAM

LISTING PROGRAM
const int buttonPin = 2; "
const int inPin = 3;
const int outPin = 9;
const int outPin2 = 10;
const int outPin3 = 11;
const int offPin = 4;

int buttonPushCounter = 0;
int button2PushCounter = 0;
int button3PushCounter = 0;
int buttonState = 0;
int button2State = 0;
int button3State = 0;
int lastButtonState = 0;
int lastButton2State = 0;
int lastButton3State = 0;
int state = LOW;
int state2 = LOW;
int state3 = LOW;


const int buttonPin = 2; // push button tersambung pada pin nomor
const int inPin = 3; // input pada pin nomor
const int outPin = 9; // output pada pin nomor
const int outPin2 = 10; // output pada pin nomor
const int outPin3 = 11; // output pada pin nomor
const int offPin = 4; // button off pada pin nomor
int buttonPushCounter = 0; // penghitung pada jumlah tombol yang
dipencet
int button2PushCounter = 0;// penghitung pada jumlah tombol yang
dipencet
int button3PushCounter = 0; // penghitung pada jumlah tombol yang
dipencet
int buttonState = 0; // menjelaskan arus pada tombol
int button2State = 0; // menjelaskan arus pada tombol
int button3State = 0; // menjelaskan arus pada tombol
int lastButtonState = 0; // menjelaskan kondisi tombol sebelumnya
int lastButton2State = 0; // menjelaskan kondisi tombol sebelumnya
int lastButton3State = 0; // menjelaskan kondisi tombol sebelumnya

int state = LOW; // kondisi arus pada pin output


int state2 = LOW; // kondisi arus pada pin output
int state3 = LOW; // kondisi arus pada pin output
int reading; // // arus yang terbaca dari input pin
int previous = 0;
long time = 0;
long debounce = 0;

void setup() { // persiapan tombol pin sebagai input:


pinMode(buttonPin, INPUT); // persiapan buttonpin sebagai input
pinMode(outPin, OUTPUT); // persiapan LED sebagai output:
pinMode(outPin2, OUTPUT); // persiapan LED sebagai output:
pinMode(outPin3, OUTPUT); // persiapan LED sebagai output:
pinMode(offPin, INPUT); // persiapan button off sebagai input
pinMode(inPin, INPUT); // persiapan inpin sebagai input
Serial.begin(9600);
}

void loop() { // membaca tombol input pin:


buttonState = digitalRead(buttonPin); // membandingkan status
tombol dari status sebelumnya:

if (buttonState != lastButtonState) { // jika status telah berganti,


jumlah penghitung tidak sama dengan sebelumnya
if (buttonState == HIGH) { // jika kondisi arus HIGH lalu tombol
berubah menjadi on:
buttonPushCounter++;
}
}
lastButtonState = buttonState;
button2State = digitalRead(inPin); // membandingkan status tombol
dengan status sebelumnya
if (button2State != lastButton2State) { // jika status telah berganti,
jumlah penghitung tidak sama dengan sebelumnya
if (button2State == HIGH) { // jika kondisi arus HIGH lalu tombol
berubah menjadi on:
button2PushCounter++;
Serial.println("on"); // jika ditekan akan terbaca pada serial monitor
Serial.print("number of button 2 pushes: ");
Serial.println(button2PushCounter);
}
}
lastButton2State = button2State;

button3State = digitalRead(offPin); // membandingkan status


tombol dengan status sebelumnya
if (button3State != lastButton3State) { // jika status telah
berganti, jumlah penghitung tidak sama dengan sebelumnya
if (button3State == HIGH) { // jika kondisi arus HIGH lalu tombol
berubah menjadi on:
button3PushCounter++;
}
}
lastButton3State = button3State;
reading = digitalRead(inPin); // membaca pin mode inpin
if (buttonPushCounter >=1 ) { // jika button1 telah di tekan >=1
kali
if (reading == HIGH && previous == LOW && millis() - time >
debounce) { // status telah ON pada kondisi sebelumnya off
if (state == HIGH) // jika arus di led 1 ON
state = LOW; // lampu led akan mati
else

state = HIGH; // lampu led akan menyala


if (state2 == LOW) // jika arus 2 OFF
state2 = HIGH; // lampu led 2 akan menyala
else
state2 = LOW; //lampu led 2 akan mati
if (state3 == LOW) // jika arus 3 OFF
state3 = HIGH;// lampu led 3 akan menyala
else
state3 = LOW;// lampu led 3 akan mati
time = millis();
}
}
if (buttonPushCounter >= 1) { // jika button1 sudah ditekan >=1
if (button2PushCounter >= 1 ) { // jika button2 sudah ditekan
>=1
if (button3PushCounter >= 1 ) { // jika button 3 sudah ditekan
>=1
exit(0); //akan mematikan arus

}
}
}
digitalWrite(outPin, state); //membaca status terakhir pin
digitalWrite(outPin2, state2); //membaca status terakhir pin
digitalWrite(outPin3, state3); //membaca status terakhir pin
previous = reading;
}

Terima Kasih