Algoritma
- Mulai program
- Input nilai pertama ke num2
- Pilih salah satu operasi dari (+),(-),(x),(:)
- Input nilai kedua ke num1
- Jika anda memilih operasi (+), maka hasil = num2 + num1
- Jika anda memilih operasi (x), maka hasil = num2 * num1
- Jika anda memilih operasi (-), maka hasil = num2 - num1
- Jika anda memilih operasi (:), maka hasil = num2 / num1
- Menyetak hasil atau menampilkan output proses
- Program diakhiri/selesai
Flow Chart
Pseudo Code
package com.example.aoxa.kalkulator;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
public String str ="";
Character op = 'q';
float i,num1,num2;
EditText showHasil;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showHasil = (EditText)findViewById(R.id.tv_hasil);
}
public void btn1Clicked(View v){
insert(1);
}
public void btn2Clicked(View v){
insert(2);
}
public void btn3Clicked(View v){
insert(3);
}
public void btn4Clicked(View v){
insert(4);
}
public void btn5Clicked(View v){
insert(5);
}
public void btn6Clicked(View v){
insert(6);
}
public void btn7Clicked(View v){
insert(7);
}
public void btn8Clicked(View v){
insert(8);
}
public void btn9Clicked(View v){
insert(9);
}
public void btntambahClicked(View v){
perform();
op = '+';
}
public void btnkurangClicked(View v){
perform();
op = '-';
}
public void btnbagiClicked(View v){
perform();
op = '/';
}
public void btnkaliClicked(View v){
perform();
op = '*';
}
public void btnprosesClicked(View v){
calculate();
}
public void btnclearClicked(View v){
reset();
}
private void reset() {
str ="";
op ='q';
num1 = 0;
num2 = 0;
showHasil.setText("");
}
private void insert(int j) {
str = str+Integer.toString(j);
num1 = Integer.valueOf(str).intValue();
showHasil.setText(str);
}
private void perform() {
str = "";
calculateNoShow();
num2 = num1;
}
private void calculate() {
if(op == '+')
num1 = num2+num1;
else if(op == '-')
num1 = num2-num1;
else if(op == '/')
num1 = num2/num1;
else if(op == '*')
num1 = num2*num1;
showHasil.setText(""+num1);
}
private void calculateNoShow() {
if(op == '+')
num1 = num2+num1;
else if(op == '-')
num1 = num2-num1;
else if(op == '/')
num1 = num2/num1;
else if(op == '*')
num1 = num2*num1;
}
}
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
public String str ="";
Character op = 'q';
float i,num1,num2;
EditText showHasil;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showHasil = (EditText)findViewById(R.id.tv_hasil);
}
public void btn1Clicked(View v){
insert(1);
}
public void btn2Clicked(View v){
insert(2);
}
public void btn3Clicked(View v){
insert(3);
}
public void btn4Clicked(View v){
insert(4);
}
public void btn5Clicked(View v){
insert(5);
}
public void btn6Clicked(View v){
insert(6);
}
public void btn7Clicked(View v){
insert(7);
}
public void btn8Clicked(View v){
insert(8);
}
public void btn9Clicked(View v){
insert(9);
}
public void btntambahClicked(View v){
perform();
op = '+';
}
public void btnkurangClicked(View v){
perform();
op = '-';
}
public void btnbagiClicked(View v){
perform();
op = '/';
}
public void btnkaliClicked(View v){
perform();
op = '*';
}
public void btnprosesClicked(View v){
calculate();
}
public void btnclearClicked(View v){
reset();
}
private void reset() {
str ="";
op ='q';
num1 = 0;
num2 = 0;
showHasil.setText("");
}
private void insert(int j) {
str = str+Integer.toString(j);
num1 = Integer.valueOf(str).intValue();
showHasil.setText(str);
}
private void perform() {
str = "";
calculateNoShow();
num2 = num1;
}
private void calculate() {
if(op == '+')
num1 = num2+num1;
else if(op == '-')
num1 = num2-num1;
else if(op == '/')
num1 = num2/num1;
else if(op == '*')
num1 = num2*num1;
showHasil.setText(""+num1);
}
private void calculateNoShow() {
if(op == '+')
num1 = num2+num1;
else if(op == '-')
num1 = num2-num1;
else if(op == '/')
num1 = num2/num1;
else if(op == '*')
num1 = num2*num1;
}
}
ACTIVITY PROGRAM
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<EditText
android:id="@+id/tv_hasil"
android:layout_width="match_parent"
android:layout_height="70dp" />
<Button
android:id="@+id/Btn7"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/tv_hasil"
android:onClick="btn7Clicked"
android:text="7" />
<Button
android:id="@+id/Btn8"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/tv_hasil"
android:layout_toRightOf="@id/Btn7"
android:onClick="btn8Clicked"
android:text="8" />
<Button
android:id="@+id/Btnclear"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/tv_hasil"
android:layout_toRightOf="@id/Btn9"
android:onClick="btnclearClicked"
android:text="clear" />
<Button
android:id="@+id/Btn4"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn7"
android:onClick="btn4Clicked"
android:text="4" />
<Button
android:id="@+id/Btn5"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn8"
android:layout_toRightOf="@id/Btn4"
android:onClick="btn5Clicked"
android:text="5" />
<Button
android:id="@+id/Btn6"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn9"
android:layout_toRightOf="@id/Btn5"
android:onClick="btn6Clicked"
android:text="6" />
<Button
android:id="@+id/Btntambah"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/Btnclear"
android:layout_toRightOf="@id/Btn6"
android:onClick="btntambahClicked"
android:text="+" />
<Button
android:id="@+id/Btn1"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn4"
android:onClick="btn1Clicked"
android:text="1" />
<Button
android:id="@+id/Btn2"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn5"
android:layout_toRightOf="@id/Btn1"
android:onClick="btn2Clicked"
android:text="2" />
<Button
android:id="@+id/Btn3"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn6"
android:layout_toRightOf="@id/Btn2"
android:onClick="btn3Clicked"
android:text="3" />
<Button
android:id="@+id/Btnkurang"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/Btntambah"
android:layout_toRightOf="@id/Btn3"
android:onClick="btnkurangClicked"
android:text="-" />
<Button
android:id="@+id/Btnproses"
android:layout_width="110dp"
android:layout_height="60dp"
android:layout_below="@id/Btn1"
android:onClick="btnprosesClicked"
android:text="=" />
<Button
android:id="@+id/Btnbagi"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/Btn1"
android:layout_toRightOf="@id/Btnproses"
android:onClick="btnbagiClicked"
android:text="/" />
<Button
android:id="@+id/Btnkali"
android:layout_width="100dp"
android:layout_height="60dp"
android:layout_below="@id/Btnkurang"
android:layout_toRightOf="@id/Btnbagi"
android:onClick="btnkaliClicked"
android:text="*" />
<Button
android:id="@+id/Btn9"
android:layout_width="70dp"
android:layout_height="60dp"
android:onClick="btn9Clicked"
android:text="9"
android:layout_alignBottom="@+id/Btn8"
android:layout_toEndOf="@+id/Btn8"
android:layout_below="@+id/tv_hasil" />
</RelativeLayout>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<EditText
android:id="@+id/tv_hasil"
android:layout_width="match_parent"
android:layout_height="70dp" />
<Button
android:id="@+id/Btn7"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/tv_hasil"
android:onClick="btn7Clicked"
android:text="7" />
<Button
android:id="@+id/Btn8"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/tv_hasil"
android:layout_toRightOf="@id/Btn7"
android:onClick="btn8Clicked"
android:text="8" />
<Button
android:id="@+id/Btnclear"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/tv_hasil"
android:layout_toRightOf="@id/Btn9"
android:onClick="btnclearClicked"
android:text="clear" />
<Button
android:id="@+id/Btn4"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn7"
android:onClick="btn4Clicked"
android:text="4" />
<Button
android:id="@+id/Btn5"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn8"
android:layout_toRightOf="@id/Btn4"
android:onClick="btn5Clicked"
android:text="5" />
<Button
android:id="@+id/Btn6"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn9"
android:layout_toRightOf="@id/Btn5"
android:onClick="btn6Clicked"
android:text="6" />
<Button
android:id="@+id/Btntambah"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/Btnclear"
android:layout_toRightOf="@id/Btn6"
android:onClick="btntambahClicked"
android:text="+" />
<Button
android:id="@+id/Btn1"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn4"
android:onClick="btn1Clicked"
android:text="1" />
<Button
android:id="@+id/Btn2"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn5"
android:layout_toRightOf="@id/Btn1"
android:onClick="btn2Clicked"
android:text="2" />
<Button
android:id="@+id/Btn3"
android:layout_width="70dp"
android:layout_height="60dp"
android:layout_below="@id/Btn6"
android:layout_toRightOf="@id/Btn2"
android:onClick="btn3Clicked"
android:text="3" />
<Button
android:id="@+id/Btnkurang"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/Btntambah"
android:layout_toRightOf="@id/Btn3"
android:onClick="btnkurangClicked"
android:text="-" />
<Button
android:id="@+id/Btnproses"
android:layout_width="110dp"
android:layout_height="60dp"
android:layout_below="@id/Btn1"
android:onClick="btnprosesClicked"
android:text="=" />
<Button
android:id="@+id/Btnbagi"
android:layout_width="90dp"
android:layout_height="60dp"
android:layout_below="@id/Btn1"
android:layout_toRightOf="@id/Btnproses"
android:onClick="btnbagiClicked"
android:text="/" />
<Button
android:id="@+id/Btnkali"
android:layout_width="100dp"
android:layout_height="60dp"
android:layout_below="@id/Btnkurang"
android:layout_toRightOf="@id/Btnbagi"
android:onClick="btnkaliClicked"
android:text="*" />
<Button
android:id="@+id/Btn9"
android:layout_width="70dp"
android:layout_height="60dp"
android:onClick="btn9Clicked"
android:text="9"
android:layout_alignBottom="@+id/Btn8"
android:layout_toEndOf="@+id/Btn8"
android:layout_below="@+id/tv_hasil" />
</RelativeLayout>
