package tugasSD;
/**
*
* @author Afini_
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.*;
import java.util.ArrayList;
public class Inteporasi_Linier_ArrayList {
static ArrayList datax = new ArrayList();
static ArrayList datay = new ArrayList();
static ArrayList hasila = new ArrayList();
static ArrayList hasilb = new ArrayList();
static ArrayList hasilubahtes = new ArrayList();
static ArrayList hasilc = new ArrayList();
static ArrayList X = new ArrayList ();
public static void main(String[] arg) {
String jmlkmpk = JOptionPane.showInputDialog(null, "Inputan Data Maksimal 8 data");
double a= Double.parseDouble(jmlkmpk);
if (a <= 8) {
for (int i = 0; i < a; i++) {
System.out.print("masukan nilai ke X " + (i + 1) + " : ");
double x=inputdata();
datax.add(x);
System.out.print("masukan nilai ke Y " + (i + 1) + " : ");
double y=inputdata();
datay.add(y);
}
CetakDatax(hasila);
CetakDatay(hasilb);
int ulang=0;
do{
String m = JOptionPane.showInputDialog(null,"Silahkan pilih angka menu untuk edit data : \n"
+ " 1. Hitung data \n"
+ " 2. Penyisipan data \n"
+ " 3. Tambah data \n"
+ " 4. Hapus data \n"
+ " 88. Keluar");
int c = Integer.parseInt(m);
switch (c){
case 1:
//Hitung data
seleksi();
System.out.println();
ulang=1;
break;
case 2:
//Merubah data
ubahtes(hasilubahtes);
//Mencetak data
CetakDatax(hasila);
CetakDatay(hasilb);
seleksi();
System.out.println();
ulang=1;
break;
case 3:
//Tambah data
tambah(hasilc);
//Mencetak data
CetakDatax(hasila);
CetakDatay(hasilb);
seleksi();
System.out.println();
ulang=1;
break;
case 4:
//Menghapus data
Hapus(datax);
Hapusy(datay);
//mencetak data
CetakDatax(hasila);
CetakDatay(hasilb);
System.out.println();
ulang=1;
break;
case 88:
//keluar
System.exit(ulang);
break;
default:
System.out.println("Tidak ada dalam pilihan");
break;
}
} while(ulang==1);
}
}
static double inputdata() {
BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
String angkaInput=null;
try{
angkaInput=bfr.readLine();
}catch (IOException e){
e.printStackTrace();
}
double Data=Double.valueOf(angkaInput).doubleValue();
return Data;
}
private static void CetakDatax( ArrayList hasila) {
System.out.println("\nData urut :");
for (int h=0; h hasilc) {
String nilaiSisip = JOptionPane.showInputDialog(null,"Masukkan Penambahan angka data X ");
double x = Double.parseDouble(nilaiSisip);
datax.add(x);
String nilaiSisipy = JOptionPane.showInputDialog(null,"Masukkan Penambahan angka data Y");
double y = Double.parseDouble(nilaiSisipy);
datay.add(y);
return hasilc;
}
private static ArrayList Hapus(ArrayList datax) {
double yangDihapus = 0;
int ulang=0;
do{
String nilaiHapus = JOptionPane.showInputDialog(null, "Masukkan angka data X yang akan dihapus");
yangDihapus = Double.parseDouble(nilaiHapus);
if (datax.contains(yangDihapus)) {
datax.remove(yangDihapus);
} else {
JOptionPane.showMessageDialog(null, "Maaf, angka yang dihapus tidak ada!");
ulang=0;
}
}while(ulang==1);
return datax;
}
private static ArrayList Hapusy(ArrayList datay) {
double yangDihapus = 0;
int ulang=0;
do{
String nilaiHapus = JOptionPane.showInputDialog(null, "Masukkan angka data Y yang akan dihapus");
yangDihapus = Double.parseDouble(nilaiHapus);
if (datay.contains(yangDihapus)) {
datay.remove(yangDihapus);
} else {
JOptionPane.showMessageDialog(null, "Maaf, angka yang dihapus tidak ada!");
ulang=0;
}
}while(ulang==1);
return datay;
}
}