code ini dapat menampilkan program mencari berdasarkan nama depan/belakang tergantung keinginan kita
import java.util.*;
class jarwo{
public static void main(String []args) {
Scanner sc=new Scanner(System.in);
System.out.print("Ada berapa nama yang akan dimasukan : ");
int a=sc.nextInt();
int aa=a-1;
String b[][]=new String[a][2];
for(int i=0;i<a;i++){
System.out.print("Nama ke-"+(i+1)+" : ");
b[i][0]=sc.next();
b[i][1]=sc.next();
}
System.out.println("");
System.out.print(" masukan nama yang ingin dicari: ");
String masuk=sc.next();
int f=0, t=0;
while(f<=aa){
t=Fungsi(aa, f);
if((b[t][0].compareTo(masuk)==0) || (b[t][1].compareTo(masuk)==0)){System.out.print("ada di posisi ke " +(t+1));
System.exit(0);}
else{
if((b[t][0].compareTo(masuk)<0) || (b[t][1].compareTo(masuk)<0)) f=t+1;
else
aa=t-1;}
}
System.out.print("tidak ada");
}
static int Fungsi(int l, int f){
double c=((l-f)/2)+f;
int t=(int)(Math.floor(c));
return t;
}
}
import java.util.*;
class jarwo{
public static void main(String []args) {
Scanner sc=new Scanner(System.in);
System.out.print("Ada berapa nama yang akan dimasukan : ");
int a=sc.nextInt();
int aa=a-1;
String b[][]=new String[a][2];
for(int i=0;i<a;i++){
System.out.print("Nama ke-"+(i+1)+" : ");
b[i][0]=sc.next();
b[i][1]=sc.next();
}
System.out.println("");
System.out.print(" masukan nama yang ingin dicari: ");
String masuk=sc.next();
int f=0, t=0;
while(f<=aa){
t=Fungsi(aa, f);
if((b[t][0].compareTo(masuk)==0) || (b[t][1].compareTo(masuk)==0)){System.out.print("ada di posisi ke " +(t+1));
System.exit(0);}
else{
if((b[t][0].compareTo(masuk)<0) || (b[t][1].compareTo(masuk)<0)) f=t+1;
else
aa=t-1;}
}
System.out.print("tidak ada");
}
static int Fungsi(int l, int f){
double c=((l-f)/2)+f;
int t=(int)(Math.floor(c));
return t;
}
}
Untuk Download Artikel Klik Gambar
Tidak ada komentar:
Posting Komentar