package com.example.siswanto.splashscreenawal;
//nox_adb.exe connect 127.0.0.1:62001
import java.util.Timer;
import java.util.TimerTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.os.Handler.Callback;
import java.util.Calendar;
import android.media.MediaPlayer;
import android.app.Activity;
import android.app.AlertDialog;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.TextView;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
public class Diagnosa extends Activity {
int ER=0;
String masterPola="";
String sudah="";
String sudahNo="";
String dataIndex="";
String pilYes="";
String pilYes2="";
int ike=0;
int index=0;
int indexke=0;
int jp=9;
int jg=23;
int[]jumG;
double[]arBobot;
String[]arPenyakit;
String[]arSolusi;
String[]arPenyebab;
int[]arGB;
String[]arRelasi;
String[]arGejala;
String[]arInit;
String pola="";
RadioButton radA, radB;
// String sNama = "", sUsia = "", sJk = "";
int ke = 0,jumsoal=0;
int jd = 10;
ImageView imgGambar;
TextView txtTanya, txtTanyake;
int gb=R.drawable.tipsbnr;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.soal_layout);
txtTanya = (TextView) findViewById(R.id.txtTanya);
txtTanyake = (TextView) findViewById(R.id.txtTanyaKe);
imgGambar = (ImageView) findViewById(R.id.myGambar);
radA = (RadioButton) findViewById(R.id.radA);
radA.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pilYes=pilYes+dataIndex;
pilYes2=pilYes2+arGejala[ike]+"#";
ke = ke + 1;
indexke=indexke+1;
if (indexke >= jumsoal) {
if(ER>0){
none();
}
else{
selesai();
}
} else {
lihat();
}
}
});
radB = (RadioButton) findViewById(R.id.radB);
radB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
sudahNo=sudahNo+dataIndex;
ke = ke + 1;
index=index+1;//pindah Pohon
indexke=0;
if (index >= jp) {
none();
} else {
String polanext=arRelasi[index];
masterPola=polanext;
int p1=sudah.length();
int p2=polanext.length();
int p3=sudahNo.length();
ER=0;
char[]ars=sudahNo.toCharArray();
for(int m=0;m<p3;m++){
String ch=String.valueOf(ars[m]);
if(masterPola.indexOf(ch)>=0){
ER=ER+1;
}
}
if (ER >0) {
index=index+1;//terus ke pohon berikutnyaaa
indexke=0;
if (index >= jp) {
//none();
}
else{
polanext=arRelasi[index];
masterPola=polanext;
}
}
if (index >= jp) {
none();
}
else{
char[]arn=sudah.toCharArray();
for(int m=0;m<p1;m++){
String ch=String.valueOf(arn[m]);
if(polanext.indexOf(ch)>=0){
polanext=polanext.replaceAll(ch, "");
}
pola=polanext;
lihat();
}//else
}
}
}
});
loaddata();
pola=arRelasi[index];
masterPola=pola;
lihat();
}
void loaddata(){
jp=10;
jg=26;
arPenyakit=new String[jp];
arPenyebab=new String[jp];
arSolusi=new String[jp];
arRelasi=new String[jp];
arGejala=new String[jg];
arGB=new int[jg];
arGejala[0]="Gejala serangan pada tanaman yang terserang, kuncupnya mengeluarkan bau busuk";
arGejala[1]="Gejala serangan daun berwarna kecoklatan";
arGejala[2]="Gejala serangan memperlihatkan batang pada ketinggian sekitar 2 m di atas tanah membusuk dan berwarna coklat keabuan";
arGejala[3]="Gejala serangan pada daun yang terserang akan berwarna hijau pucat";
arGejala[4]="Gejala serangan tandan buah membusuk";
arGejala[5]="Gejala serangan pertumbuhan tanaman terlihat tidak normal, daun menguning, keragaan tanaman tidak segar";
arGejala[6]="Gejala serangan daun terdapat bercak-bercak coklat diujung dan tepi daun";
arGejala[7]="Gejala serangan terdapat bercak-bercak pada daun dengan bentuk melonjong warna kuning dan di bagian dalamnya berwarna coklat";
arGejala[8]="Gejala serangan daun bagian tengah sobek";
arGejala[9]="Gejala serangan adanya miselium bewarna putih diantara buah masak atau pangkal pelepah daun";
arGejala[10]="Gejala serangan seluruh tajuk menjadi kekuningan dan pucat karena kekurangan zat hara dan air ";
arGejala[11]="Gejala serangan banyak daun yang membengkok ke bawah di tengah pelepahnya";
arGejala[12]="Gejala serangan seluruh tandan buah telah terserang jamur";
arGejala[13]="Gejala serangan daun tua yang mengering sengkleh";
arGejala[14]="Gejala serangan tanaman akan mati dalam waktu 6 –12 bulan setelah timbul gejala";
arGejala[15]="Gejala serangan terbentuk buah cendawan dari pangkal batang";
arGejala[16]="Gejala serangan kelayuan menyeluruh seperti kurang air dan hara";
arGejala[17]="Gejala serangan benang-benang jamur yang berwarna putih mengkilat meluas di permukaan tandan buah";
arGejala[18]="Gejala serangan kuncup membusuk dan mudah dicabut";
arGejala[19]="Gejala serangan jaringan pada kuncup membusuk";
arGejala[20]="Gejala serangan warna daun yang terbawah berubah dan selanjutnya akan mati";
arGejala[21]="Gejala serangan terinfeksi mengeluarkan getah pada daun yang tua";
arGejala[22]="Gejala serangan pelepah daun bagian bawah patah";
arGejala[23]="Gejala serangan bercak coklat dikelilingi warna kuning dan terlihat sebagai pembatas antara daun yang sehat dengan daun yang tidak sehat/terserang penyakit";
arGejala[24]="Gejala serangan pelepah berukuran abnormal atau kecil-kecil";
arGejala[25]="Gejala serangan akar tanaman yang sakit berwarna coklat atau kemerah-merahan dan membusuk";
for(int i=0;i<jg;i++) {
arGB[i] = R.drawable.tipsbnr;
}
arPenyakit[0]="Penyakit Busuk Titik Tumbuh";
arPenyakit[1]="Penyakit Busuk Kuncup";
arPenyakit[2]="Penyakit Busuk Batang Atas";
arPenyakit[3]="Penyakit Busuk Pangkal Batang";
arPenyakit[4]="Penyakit Busuk Kering Pangkal Batang";
arPenyakit[5]="Penyakit Akar";
arPenyakit[6]="Penyakit Antraknosa";
arPenyakit[7]="Penyakit Garis Kuning";
arPenyakit[8]="Penyakit Tajuk";
arPenyakit[9]="Penyakit Busuk Tandan";
arPenyebab[0]="Penyebab serangan bakteri erwinia";
arPenyebab[1]="Penyebab serangan ini sampai saat ini masih dalam kajian dan belum menemukan penyerang yang pasti";
arPenyebab[2]="Penyebab serangan jamur fomex noxius";
arPenyebab[3]="Penyebab serangan jamur Ganoderma";
arPenyebab[4]="Penyebab serangan jamur Ceratocytis paradoxa";
arPenyebab[5]="Penyebab serangan jamur Rhizoctonia lamellifera";
arPenyebab[6]="Penyebab serangan jamur Melanconium sp, Botryodiplodia palmarum, Glomerella cingulata";
arPenyebab[7]="Penyebab serangan jamur Fusarium oxysporum";
arPenyebab[8]="Penyebabnya biasanya dikarenakan menurunnya sifat genetik indukan";
arPenyebab[9]="Penyebab serangan jamur Marasmius palmivorus";
arSolusi[0]="pengendalian dapat mengaplikasikan bakteri yang berfungsi sebagai pemangsa bagi bakteri erwinia";
arSolusi[1]="Pengendalian yang dilakukan masih sebatas melakukan pemotongan bagian kuncup yang terserang";
arSolusi[2]="pengendalian penanganan dengan cara membuang bagian batang yang terserang dan menutup bekas luka dengan obat luka yang ada. Pada kondisi parah tanaman dibongkar dan dimusnahkan.";
arSolusi[3]="pengendalian dapat melakukan aplikasi dengan menggunakan bahan yang mengandung Tricodherma ( produk CustomBio ), dapat disemprotkan kebagian yang terserang dan penyemprotan pada tanah sekeliling tanaman pokok secara melingkar";
arSolusi[4]="pengendalian untuk tanaman yang sudah terserang secara hebat dengan melakukan pembongkaran dan pemusnahan dengan cara dibakar";
arSolusi[5]="pengendalian dimulai sejak awal kegiatan di dalam pesemaian dengan mempersiapkan media yang tidak terkontaminasi jamur, drainase yang baik agar tidak terjadi kekeringan yang ekstrim pada tanaman";
arSolusi[6]="pengendalian sejak awal mulai dari pemindahan bibit, dimana seluruh media tanah bibit disertakan, jarak tanam, penyiraman dan pemupukan yang dilakukan secara teratur dan berimbang, aplikasi Captan 0.2 % atau Cuman 0.1 %";
arSolusi[7]="pengendalian melakukan proses inokulasi pada bibit dan tanaman muda, atau dengan melakukan aplikasi bahan yang mengandung Tricodherma & Bacillus ( produk CustomBio )";
arSolusi[8]="pengendalian dimulai sejak awal terutama melakukan seleksi indukan yang bersifat karier penyakit ini, sehingga akan didapatkan bibit yang mempunyai sifat-sifat yang sehat.";
arSolusi[9]="pengendalian dengan menjaga sanitasi kebun terutama pada musim penghujan, aplikasi difolatan 0.2 %, melakukan penyerbukan buatan atau kastrasi";
arRelasi[0]="ABS";
arRelasi[1]="BGT";
arRelasi[2]="CIO";
arRelasi[3]="DKP";
arRelasi[4]="ENOPQW";
arRelasi[5]="FPZ";
arRelasi[6]="GTX";
arRelasi[7]="FHN";
arRelasi[8]="ILY";
arRelasi[9]="JMR";
String abj="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char[]ar=abj.toCharArray();
int pj=ar.length;
for(int i=0;i<pj;i++) {
String ch=String.valueOf(ar[i]);//A B C D ...
for(int j=0;j<jp;j++) {
String relasi=arRelasi[j];//ABC
}//j
} //for
}
int getIndex(String ch){
int id=0;
if(ch.equals("A")){id=0;}
else if(ch.equals("B")){id=1;}
else if(ch.equals("C")){id=2;}
else if(ch.equals("D")){id=3;}
else if(ch.equals("E")){id=4;}
else if(ch.equals("F")){id=5;}
else if(ch.equals("G")){id=6;}
else if(ch.equals("H")){id=7;}
else if(ch.equals("I")){id=8;}
else if(ch.equals("J")){id=9;}
else if(ch.equals("K")){id=10;}
else if(ch.equals("L")){id=11;}
else if(ch.equals("M")){id=12;}
else if(ch.equals("N")){id=13;}
else if(ch.equals("O")){id=14;}
else if(ch.equals("P")){id=15;}
else if(ch.equals("Q")){id=16;}
else if(ch.equals("R")){id=17;}
else if(ch.equals("S")){id=18;}
else if(ch.equals("T")){id=19;}
else if(ch.equals("U")){id=20;}
else if(ch.equals("V")){id=21;}
else if(ch.equals("W")){id=22;}
else if(ch.equals("X")){id=23;}
return id;
}
void lihat() {//ABCLUV
radA.setChecked(false);
radB.setChecked(false);
jumsoal=pola.length();
dataIndex=pola.substring(indexke,indexke+1);
sudah=sudah+dataIndex;
ike=getIndex(dataIndex);
txtTanya.setText((ke + 1) + "." + arGejala[ike]);
radA.setText("Ya, Saya Mengalami");
radB.setText("Tidak, Saya Tidak Mengalami");
txtTanyake.setText("");
txtTanyake.setText("#Pertanyaan ke " + (ke + 1) + "#Group:" +index+"#Pola:"+arRelasi[index]+"/Replace:"+ pola+ " "+arPenyakit[index]+"#Y:"+pilYes+"#N:"+sudahNo);
if(ke%6==0){gb=R.drawable.tipsbnr;}
else if(ke%6==1){gb=R.drawable.tipsbnr;}
else if(ke%6==2){gb=R.drawable.tipsbnr;}
else if(ke%6==3){gb=R.drawable.tipsbnr;}
else if(ke%6==4){gb=R.drawable.tipsbnr;}
else if(ke%6==5){gb=R.drawable.tipsbnr;}
imgGambar.setImageResource(gb);
}
public void selesai() {
new AlertDialog.Builder(this).setTitle("Hasil Analisa Kerusakan")
.setMessage("Kelapa Sawit Terdiagnosa "+arPenyakit[index])
.setNeutralButton("Hasil", new OnClickListener() {
public void onClick(DialogInterface dlg, int sumthin) {
Calendar cal = Calendar.getInstance();
int jam = cal.get(Calendar.HOUR);
int menit = cal.get(Calendar.MINUTE);
int detik = cal.get(Calendar.SECOND);
int tgl = cal.get(Calendar.DATE);
int bln = cal.get(Calendar.MONTH)+1;
int thn = cal.get(Calendar.YEAR);
String stgl = String.valueOf(tgl) + "-"
+ String.valueOf(bln) + "-"
+ String.valueOf(thn);
String sjam = String.valueOf(jam) + ":"
+ String.valueOf(menit) + ":"
+ String.valueOf(detik);
Intent i = new Intent(Diagnosa.this,Hasil.class);
i.putExtra("hasil", arPenyakit[index]);
i.putExtra("solusi", arSolusi[index]);
i.putExtra("penyebab", arPenyebab[index]);
i.putExtra("gb", gb);
i.putExtra("keterangan",stgl+ " " + sjam+ "\n"+ "Forward Chaining");
startActivity(i);
finish();
}
}).show();
}
public void none() {
new AlertDialog.Builder(this).setTitle("Hasil Analisa Penyakit")
.setMessage("Kelapa Sawit Gagal Terdiagnosa ")
.setNeutralButton("Hasil", new OnClickListener() {
public void onClick(DialogInterface dlg, int sumthin) {
finish();
}
}).show();
}
public void keluarYN() {
AlertDialog.Builder ad = new AlertDialog.Builder(Diagnosa.this);
ad.setMessage("Apakah anda yakin ingin kembali?");
ad.setPositiveButton("YA", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
ad.setNegativeButton("TIDAK", new OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
}
});
ad.show();
}
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
keluarYN();
;
return true;
}
return super.onKeyDown(keyCode, event);
}
}
+++++++++++++++++++++++++++++++++++++++++++++
<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"
tools:context=".MainActivity" >
<ScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="50dip"
android:background="#999999" >
<TableLayout
android:id="@+id/TableLayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#fff" >
<ImageView
android:id="@+id/myGambar"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_centerHorizontal="true"
android:src="@drawable/tipsbnr" />
<TableRow
android:id="@+id/TableRow00"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/txtTanya"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1.Apakah Anda mengalami gejala Pusing2" />
</TableRow>
<RadioGroup
android:id="@+id/RadioGroup01"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/radA"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ya"
android:textColor="#000" >
</RadioButton>
<RadioButton
android:id="@+id/radB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tidak"
android:textColor="#000" >
</RadioButton>
</RadioGroup>
<TableRow
android:id="@+id/TableRow02"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="" />
</TableRow>
<TableRow
android:id="@+id/TableRow02s"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="" />
</TableRow>
<TableRow
android:id="@+id/TableRow02a"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/txtTanyaKe"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pertanyaan ke-1" />
</TableRow>
</TableLayout>
</ScrollView>
</RelativeLayout>
Tidak ada komentar:
Posting Komentar