Showing posts with label java. Show all posts
Showing posts with label java. Show all posts

Tuesday, August 22, 2017

HangMan

Following Code is Hangman Like game without graphics inspired by Duta http:duta.in:


Code:

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Main {
static String check="AEIOU";
public static void main(String[] args) {
ArrayList<String> questions=new ArrayList<>();
questions.add("ABRUPTLY");
questions.add("BOOKWORM");
questions.add("GALAXY");
questions.add("PNEUMONIA");
questions.add("STRONGHOLD");
questions.add("WHIZZING");
questions.add("PUZZLING");
questions.add("WRISTWATCH");
questions.add("ZODIAC");
questions.add("THUMBSCREW");
questions.add("YACHTSMAN");
questions.add("MNEMONIC");
questions.add("TRANSPLANT");
questions.add("RHYTHM");
questions.add("MICROWAVE");
Collections.shuffle(questions);
String ques=questions.get(0);
   char[] given=new char[ques.length()];
   int count=0;
   for(int i=0;i<given.length;i++) {
    if(varcheck(ques.charAt(i))) {
    given[i]=ques.charAt(i);
    }else {
    given[i]='_';
    }
   }
   boolean win=false;
   Scanner in=new Scanner(System.in);
   StringBuffer buffer=new StringBuffer();
outer:
   while(count<7 && !win) {
    for(int i=0;i<given.length;i++) {
    System.out.print(given[i]+" ");
    }
    System.out.println();
    System.out.println("Guess a Letter");
    char c=in.nextLine().toUpperCase().charAt(0);
    int i=0;
    while(i<given.length) {
    if(given[i]==c) {
    System.out.println("Already Present in Word!!");
    System.out.println("Guessed Letters : "+buffer);
    System.out.println("Chances left : "+(7-count));
    System.out.println("------------------------------");
    continue outer;
    }i++;
    }
    if(buffer.toString().contains(c+"")) {
    System.out.println("Already Guessesed!!");
    System.out.println("Guessed Letters : "+buffer);
    System.out.println("Chances left : "+(7-count));
    System.out.println("------------------------------");
    continue outer;
    }
    if(ques.contains(c+"")) {
    int idx=ques.indexOf(c);
    while(idx>=0) {
    given[idx]=c;
    idx=ques.indexOf(c,idx+1);
    win=true;
    }
    System.out.println("Good Guess!!");
    }else {
    count++;
    System.out.println("Bad Guess!!");
    }
    buffer.append(c+",");
    System.out.println("Guessed Letters : "+buffer.toString().substring(0,buffer.length()-1));
    System.out.println("Chances left : "+(7-count));
    for(char x: given) {
    if(x=='_') {
    win=false;
    }
    }
    System.out.println("--------------------------------\n");
   }
    System.out.println("Word is : "+ques);
   if(win) {
    System.out.println("Congratulations,You win!!");
   }else {
    System.out.println("You Loose!!,Don't Worry Try Again");
   }
   in.close();
}
static boolean varcheck(char c) {
if(check.contains(c+"")) return true;
return false;
}

}

Output:






Sunday, August 20, 2017

Desired Number of Quark Pairs

Following Code will give you desired number of quark pairs:


Code:

import java.util.Scanner;

public class MainQuark {
public static void main(String[] nt) {
System.out.print("Enter Value of N :");
int n;
Scanner in=new Scanner(System.in);
n=in.nextInt();
        int count=0,i=1,num;
        StringBuffer buffer=new StringBuffer();
while(count!=n) {
num=i;
int q=quark(num);
if(!prime(q)) {
for(int j=num+1;j<q;j++) {
if(q==quark(j)) {
buffer.append(i+"-"+j+"\n");
count++;
}
}
}
i++;
}
System.out.println("Pairs are\n"+buffer.toString());
}
static int quark(int n) {
int one=0,i=n;
while(n>0) {
if(n%2==1) {
one++;
}n=n/2;
}return one*(i);
}

static boolean prime(int n) {
for(int i=2;i<n/2;i++) {
if(n%i==0) return false;
}return true;
}

}


Output:




Quark Pairs Upto N

Quark Pairs: 



Code:

import java.util.Scanner;

public class MainQuark {
public static void main(String[] nt) {
System.out.print("Enter Value of N :");
int n;
Scanner in=new Scanner(System.in);
n=in.nextInt();
int[] quarks=new int[n];
int num=0;
for(int i=0;i<n;i++) {
num=i+1;
int one=0;
while(num>0) {
if(num%2==1) {
one++;
}num=num/2;
}
quarks[i]=one*(i+1);
}
StringBuffer buffer=new StringBuffer();
for(int i=0;i<n;i++) {
for(int j=i+1;j<n;j++) {
if(quarks[i]==quarks[j]) {
buffer.append((i+1)+"-"+(j+1)+"\n");
}
}
}
System.out.println("All Pairs upto "+n+" : ");
System.out.println(buffer.toString());
}

}


Output:


Saturday, August 19, 2017

K-means Clustering

 What is K-means? 
1. Partitional clustering approach 
2. Each cluster is associated with a centroid (center point) 
3. Each point is assigned to the cluster with the closest centroid 
4 Number of clusters K must be specified 


Following Code will find the value of K :


Code:

Main.Java

import java.util.ArrayList;
import java.util.Collections;

public class Main {

   public static void main(String[] args) {
        long start=System.currentTimeMillis();
       int k=1;
      Point[] p=new Point[5];
      p[0]=new Point(1,1);
      p[1]=new Point(1,0);
      p[2]=new Point(0,2);
      p[3]=new Point(2,4);
      p[4]=new Point(3,5);
      
      ArrayList<Point> given=new ArrayList<>();
      given.add(p[0]);
      given.add(p[1]);
      given.add(p[2]);
      given.add(p[3]);
      given.add(p[4]);
      
      Collections.shuffle(given);
      Point c1=new Point(given.get(0));
      Point c2=new Point(given.get(1));


      ArrayList<Point>cluster1=new ArrayList<>();
      ArrayList<Point>cluster2=new ArrayList<>();

      ArrayList<Point>newcluster1=new ArrayList<>();
      ArrayList<Point>newcluster2=new ArrayList<>();

      double dc1,dc2;
      for(int i=0;i<5;i++) {
         dc1=c1.distance(p[i]);
         dc2=c2.distance(p[i]);
         if(dc1<dc2) {
            cluster1.add(p[i]);
         }else if(dc2<dc1) {
            cluster2.add(p[i]);
         }
      }
        c1.x=meanx(cluster1);
        c1.y=meany(cluster1);
        c2.x=meanx(cluster2);
        c2.y=meany(cluster2);
        do {
            if(!(newcluster1.isEmpty()&& newcluster2.isEmpty())) {
                cluster1.clear();
                System.out.println(cluster1.size());
                cluster1.addAll(newcluster1);
                cluster2.clear();
                cluster2.addAll(newcluster2);
                newcluster1.clear();
                newcluster2.clear();
            }
            for(int i=0;i<5;i++) {
                dc1=c1.distance(p[i]);
                dc2=c2.distance(p[i]);
                if(dc1<=dc2) {
                    newcluster1.add(p[i]);
                }else {
                    newcluster2.add(p[i]);
                }
            }
            c1.x=meanx(newcluster1);
            c1.y=meany(newcluster1);
            c2.x=meanx(newcluster2);
            c2.y=meany(newcluster2);
            k++;
        }while(!(compareCluster(cluster1, newcluster1)||compareCluster(cluster1, newcluster2))&&(compareCluster(cluster2, newcluster2)||compareCluster(cluster2, newcluster1)));
        System.out.println("Value of K is  : "+k);
      System.out.println("Time Taken : "+(System.currentTimeMillis()-start)+" milliseconds");
   }

    static boolean compareCluster(ArrayList<Point> c1,ArrayList<Point> c2) {
      if(c1.size()!=c2.size()||c1==null&&c2!=null||c1!=null&&c2==null) return false;
      if(c1==null && c2==null) return true;
      for(int i=0;i< c1.size();i++){
           if(! c2.contains(c1.get(i))) return false;
        }
        return true;
   }


   static double meanx(ArrayList<Point> c) {
      double sumx=0;
      for(int i=0;i<c.size();i++) {
         sumx+=c.get(i).x;
      }
      return sumx/c.size();
   }

    static double meany(ArrayList<Point> c) {
        double sumy=0;
        for(int i=0;i<c.size();i++) {
            sumy+=c.get(i).y;
        }
        return sumy/c.size();
    }
}


-------------------------------------------------------------------------------------------
Point.Java

public class Point {
   double x,y;
   
   Point(double a,double b){
      x=a;
      y=b;
   }
   Point(Point b){
      x=b.x;
      y=b.y;
   }
   
   double distance(Point b) {
      return Math.sqrt(Math.pow((x-b.x),2)+Math.pow((y-b.y),2));
   }

   @Override   public String toString() {
      return "Point [x=" + x + ", y=" + y + "]";
   }

}


For any Suggestions please Click Here


Output:



Saturday, July 1, 2017

GUI based Database Connectivity

Code:


NearurBank.java


JDBCUSE.java

Bank.java




Please refer to above links and Your Contribution is welcomed.........

Thursday, June 29, 2017

Registration Form JSwing

Code:


import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;

class form {
JFrame fr;
JPanel ptitle,pnam,peml,pmob,ppas,pgen,padr,psub,pall;
JButton btn;
JLabel ltitle,lnam,leml,lmob,lpas,lgen,ladr;
JTextField tnam,teml,tmob;
JTextArea tadr;
JPasswordField tpas;
JRadioButton male,fem;
ButtonGroup bg;
JDialog d;
Customers c=new Customers();

form(){
fr=new JFrame("Nearur Registration");

ptitle=new JPanel();
pnam=new JPanel();
peml=new JPanel();
pmob=new JPanel();
ppas=new JPanel();
pgen=new JPanel();
padr=new JPanel();
psub=new JPanel();
pall=new JPanel();

ltitle =new JLabel("Registration Form");
lnam =new JLabel("Enter Your Full Name:");
leml =new JLabel("Enter Your Email:");
lmob =new JLabel("Enter Your Mobile Number:");
lpas =new JLabel("Enter Your Password:");
lgen =new JLabel("Gender:");
ladr =new JLabel("Enter Your Address:");

tnam=new JTextField(16);
teml=new JTextField(16);
tmob=new JTextField(10);
tadr=new JTextArea(3,20);
tpas=new JPasswordField(16);

btn =new JButton("Submit");

male=new JRadioButton("Male");
fem=new JRadioButton("Female");
bg=new ButtonGroup();


d=new JDialog();
}

void generate() {

ptitle.add(ltitle);

pnam.add(lnam);
pnam.add(tnam);

peml.add(leml);
peml.add(teml);

pmob.add(lmob);
pmob.add(tmob);

ppas.add(lpas);
ppas.add(tpas);

pgen.add(lgen);
bg.add(male);
bg.add(fem);
pgen.add(male);
pgen.add(fem);

padr.add(ladr);
padr.add(tadr);

psub.add(btn);

pall.add(ptitle);
pall.add(pnam);
pall.add(peml);
pall.add(pmob);
pall.add(ppas);
pall.add(pgen);
pall.add(padr);
pall.add(psub);

GridLayout layout = new GridLayout(8, 1);
pall.setLayout(layout);

fr.add(pall);

fr.pack();
fr.setVisible(true);

btn.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {
save();
}

});

}
void save() {
c.name=tnam.getText();
c.mobile=Long.parseLong(tmob.getText());
c.password=tpas.getPassword().toString();
c.Address=tadr.getText();
c.email=teml.getText();
if(male.isSelected()) {
c.g='M';
}
else {
c.g='F';
}
File f=new File("C:/Users/mrdis/Desktop","Customers.txt");
FileOutputStream w=null;
ObjectOutputStream oos=null;
try {
w = new FileOutputStream(f);
oos=new ObjectOutputStream(w);
oos.writeObject(c);
} catch (Exception e) {

e.printStackTrace();
}finally {
try {
w.close();
oos.close();
}catch(Exception e) {


}
}


JOptionPane.showMessageDialog(fr,"Successful");
tnam.setText("");
tpas.setText("");
teml.setText("");
tadr.setText("");
tmob.setText("");
bg.clearSelection();
}
}
public class NearurRegistration {

public static void main(String[] args) {
new form().generate();
       
}

}


Output:

Wednesday, June 28, 2017

Notepad Using Java

Code:

package com.nearur;

import java.awt.FileDialog;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.print.PrinterException;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTextArea;

class notep{
JFrame fr;
JTextArea a;
JMenuBar mb;
JMenu File,Edit,Format,View,Help;
JMenuItem New,Exit,Open,Save,Cut,Copy,Paste,Print,Delete;
FileDialog d,op;

       notep() {
fr=new JFrame("NotePad");
d=new FileDialog(fr,"Save",FileDialog.SAVE);
op=new FileDialog(fr,"Save",FileDialog.LOAD);
a=new JTextArea();

File=new JMenu("File");
Edit=new JMenu("Edit");
Format=new JMenu("Format");
View=new JMenu("View");
Help=new JMenu("Help");

New=new JMenuItem("New");
Exit=new JMenuItem("Exit");
Open=new JMenuItem("Open");
Save=new JMenuItem("Save");
Print=new JMenuItem("Print");
Cut=new JMenuItem("Cut");
Copy=new JMenuItem("Copy");
Paste=new JMenuItem("Paste");
Delete=new JMenuItem("Delete");

mb=new JMenuBar();

File.add(New);
File.add(Open);
File.add(Save);
File.add(Print);
File.add(Exit);

Edit.add(Cut);
Edit.add(Copy);
Edit.add(Paste);
Edit.add(Delete);

mb.add(File);
mb.add(Edit);
mb.add(Format);
mb.add(View);
mb.add(Help);

fr.setJMenuBar(mb);
Cut.setEnabled(false);
Copy.setEnabled(false);
Paste.setEnabled(false);
Save.setEnabled(false);
Delete.setEnabled(false);
Print.setEnabled(false);

New.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

fr.add(a);
fr.setTitle("Untitled-NotePad");
fr.setVisible(true);
Save.setEnabled(true);
Cut.setEnabled(true);
Copy.setEnabled(true);
Paste.setEnabled(true);
Delete.setEnabled(true);
Print.setEnabled(true);
}

});

Exit.addActionListener(new ActionListener() {


public void actionPerformed(ActionEvent arg0) {

fr.dispose();

}

});

Cut.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

try {
a.print();
} catch (PrinterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

});


Cut.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

a.cut();
}

});
Copy.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {
a.copy();
}

});
Paste.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

a.paste();
}

});
Delete.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {
a.replaceSelection("");
}

});
Save.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {
String data=a.getText();
d.setVisible(true);
File f =new File(d.getDirectory(),d.getFile());
FileOutputStream r=null;
try {

r=new FileOutputStream(f,true);
char a[]=data.toCharArray();
int i=0;
while(i<a.length){
r.write((int)a[i]);
i++;
}
r.close();
                                       fr.setTitle(d.getFile()+" Notepad");
} catch (Exception e) {

e.printStackTrace();
}
}

});
Open.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {
op.setVisible(true);
File f =new File(op.getDirectory(),op.getFile());
FileInputStream in=null;
try {
in=new FileInputStream(f);
int ch=0;
StringBuffer line=new StringBuffer();
while((ch=in.read())!=-1) {
line.append((char)ch+"");
}
a.setText(line.toString());
fr.add(a);
fr.setTitle(op.getFile()+" Notepad");
fr.setVisible(true);
in.close();
}catch(Exception e ){

}
}

});


fr.pack();
fr.setSize(300,300);
fr.setVisible(true);
}
}
public class Notepad {

public static void main(String[] args) {
new notep();
}

}
Output: