java program to make a GUI based calculator using frames
we are going to make a calculator’s gui … (more…)
we are going to make a calculator’s gui … (more…)
Before Checking Deadlock Program in java Lets Understand the meaning of Deadlock in Java
Deadlock in java is a part of multi threading. Deadlock can occur in a situation when a thread is waiting for an object lock, that is acquired by another thread and second thread is waiting for an object lock that is acquired by first thread. Since, both threads are waiting for each other to release the lock, the condition is called deadlock.
Java Keywords that are synchronized are to make class thread-safe which means only one of the method has the lock of the synchronized method which can use it.
If the program that we are operating is running in a multi-threaded environment where two or more than two of the threads are working together. But this is not mandatory to work all the time this type of problem is called Deadlock in Java.
Here is Example of Java Program on Deadlock
class Resource { int sum; synchronized void sumCalc () { String tname = Thread.currentThread().getName() ; System.out.println(tname + " is starting to calculate the sum ....." ); for(int i = 1 ; i<= 10 ; i++) { int x = (int ) (Math.random() *100 ); sum+=x ; } System.out.println("sum of " + tname + " : " +sum); if(tname.equals ("first")) { System.out.println(tname + "is getting sum of the other thread ....."); int otherSum = Factory.r2.getSum() ; int total = sum + otherSum ; System.out.println("total sum in "+ tname + " = "+total ); } if(tname . equals ("second")) { System.out.println(tname + "is getting sum of the other thread ....."); int otherSum = Factory.r1.getSum() ; int total = sum + otherSum ; System.out.println("total sum in "+ tname + " = "+total ); } } synchronized int getSum() { return (sum ); } } class Factory { static Resource r1,r2 ; static {r1 = new Resource(); r2 = new Resource() ; } } class MyThread extends Thread { MyThread (String name ) { super (name ); start() ; } public void run () { String tname = getName () ; if(tname.equals ("first")) { Factory.r1.sumCalc() ; } if(tname.equals ("second")) { Factory.r2.sumCalc() ; } } } class DeadlockTest { public static void main(String s[] ) { new MyThread ("first"); new MyThread ("second"); } }
import java.awt.*; import java.awt.event.*; class EventTest implements ActionListener {Frame fr; Button b1,b2,b3,b4; TextField tf1,tf2,tf3; Label lb1,lb2,lb3; EventTest( ) { fr = new Frame("myframe" ); fr.setLayout(null); b1= new Button ("Add") ; b2= new Button ("Sub") ; b3= new Button ("Mul") ; b4= new Button ("Div") ; tf1 = new TextField() ; tf2 = new TextField() ; tf3= new TextField() ; lb1 = new Label("no1") ; lb2 = new Label("no2") ; lb3 = new Label("res") ; tf1.setBounds( 50,50,100,50) ; tf2.setBounds( 50,120,100,50) ; tf3.setBounds( 50,190,100,50) ; lb1.setBounds(10,50,35,50); lb2.setBounds(10,120,35,50); lb3.setBounds(10,190,35,50); b1.setBounds( 30,260,35,50); b2.setBounds( 85,260,35,50); b3.setBounds( 140,260,35,50); b4.setBounds( 195,260,35,50); fr.add( tf1) ; fr.add( tf2) ; fr.add( tf3) ; fr.add( lb1) ; fr.add( lb2) ; fr.add( lb3) ; fr.add( b1) ; fr.add( b2) ; fr.add( b3) ; fr.add( b4) ; b1.addActionListener( this ); b2.addActionListener( this ); b3.addActionListener( this ); b4.addActionListener( this ); fr.setSize(600,700); fr.setVisible(true); } public void actionPerformed (ActionEvent e ) { if ( e.getSource() == b1 ) { String str1 = tf1.getText() ; String str2 = tf2.getText() ; int s1 = Integer.parseInt(str1) ; int s2 = Integer.parseInt(str2) ; int result = (s1+s2) ; String str3 =" " + result ; tf3.setText ( str3) ; } if ( e.getSource() == b2 ) { String str1 = tf1.getText() ; String str2 = tf2.getText() ; int s1 = Integer.parseInt(str1) ; int s2 = Integer.parseInt(str2) ; int result = s1-s2 ; String str3 =" " + result ; tf3.setText ( str3) ; } if ( e.getSource() == b3 ) { String str1 = tf1.getText() ; String str2 = tf2.getText() ; int s1 = Integer.parseInt(str1) ; int s2 = Integer.parseInt(str2) ; int result = s1*s2 ; String str3 =" " + result ; tf3.setText ( str3) ; } if ( e.getSource() == b4 ) { String str1 = tf1.getText() ; String str2 = tf2.getText() ; int s1 = Integer.parseInt(str1) ; int s2 = Integer.parseInt(str2) ; int result = (s1/s2) ; String str3 =" " + result ; tf3.setText ( str3) ; } } public static void main (String s[] ) { new EventTest(); } }
Java Program/source code for working Pacman Game. This program is primarily based on the game pacman….. A running pacman eating piece according to light signals red ,green or yellow just run this java program to see live working pacman game ,
It consist of three (2 java files + 1 html file ) files :
1)PackManAndRedLight.java
2)RedLight.java
3)redlight+packman.html
Copy the code and save three files in same folder with names as mentioned above
compile two files at a time via running this command on cmd :
javac *.java
after that open redlight+packman.html in your browser
Done 🙂
so here is the source code for running pacman game
import java.awt.Color; import java.awt.Graphics; import java.applet.Applet; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionListener; import javax.swing.JApplet; import java.applet.AppletContext; class mythread1 extends Thread { PackManAndRedLight pack; char dir; mythread1(PackManAndRedLight pack) { this.pack=pack; pack.x=0; pack.y=0; pack.ang=315; pack.stang=23; dir='r'; start(); } public void run() { try { for(;pack.y<=550;) { if(pack.rd.clr=='g') { pack.repaint(); if(dir=='r') { pack.x+=5; pack.recy=pack.y; pack.recx=pack.x-25; pack.repaint(); if(pack.x>760) { pack.recx=740; pack.repaint(); pack.showStatus(""+pack.rd.clr); dir='d'; } if(pack.x%50==45) { pack.ang=360; pack.stang=270; } else { pack.stang=23; pack.ang=315; } } if((dir=='d')) { pack.recx=pack.x; pack.recy=pack.y-25; pack.y+=5; if(pack.y%50==0) { if(pack.x>50) { pack.repaint(); pack.showStatus(""+pack.rd.clr); dir='l'; } else dir='r'; } if(pack.y%50==30) { pack.ang=360; pack.stang=270; } else { pack.stang=293; pack.ang=315; } } if(dir=='l') { pack.recy=pack.y; pack.recx=pack.x+25; //pack.stang=203; pack.x-=5; if(pack.x<20) dir='d'; if(pack.x%50==30) { pack.ang=360; pack.stang=0; } else { pack.ang=315; pack.stang=203; } } Thread.sleep(50); } } } catch(Exception e) { e.printStackTrace(); } } } public class PackManAndRedLight extends JApplet implements MouseMotionListener { int x,y,stang,ang; int recx,recy; boolean flag; mythread1 mth; String str=""; RedLight rd; @Override public void init() { flag=false; x=0; y=0; stang=23; ang=315; addMouseMotionListener(this); AppletContext ct=getAppletContext(); rd=(RedLight)ct.getApplet("redlight"); System.out.println(""+rd); } public void start() { flag=false; mth=new mythread1(this); } @Override public void mouseDragged(MouseEvent e) { } @Override public void mouseMoved(MouseEvent e) { str=(" x = "+e.getX()+" y = "+e.getY()); } @Override public void paint(Graphics g) { if(flag==false) { flag=true; int x1=75,y1=25; for(;y1<600;) { g.setColor(Color.red); g.fillOval(x1+10, y1-5, 10, 10); if(x1>750) { x1=-25; y1+=50; } x1+=50; } } g.setColor(Color.white); g.fillRect(recx, recy, 50,50); g.setColor(Color.yellow); g.fillArc(x, y, 50,50, stang, ang);showStatus(str+rd.clr); } }
RedLight.java
import java.applet.Applet; import java.awt.Color; import java.awt.Graphics; class red_thread extends Thread { char lclr; RedLight rl; red_thread(RedLight rl) { this.rl=rl; start(); } @Override public void run() { while(true) { try { if(rl.clr=='r') { Thread.sleep(10000); lclr='r'; rl.clr='y'; } else if(rl.clr=='g') { Thread.sleep(10000); lclr='g'; rl.clr='y'; } else if(rl.clr=='y') { Thread.sleep(3000); if(lclr=='r') rl.clr='g'; else rl.clr='r'; } rl.repaint(); } catch(Exception e) { e.printStackTrace(); } } } } public class RedLight extends Applet { int clr='r'; public void init() { new red_thread(this); } @Override public void paint(Graphics g) { g.fillRect(40,40,120,360); g.setColor(Color.DARK_GRAY); g.fillOval(50,50,100,100); g.fillOval(50,170,100,100); g.fillOval(50,290,100,100); if(clr=='r') { g.setColor(Color.red); g.fillOval(50,50,100,100); } else if(clr=='y') { g.setColor(Color.orange); g.fillOval(50,170,100,100); } else { g.setColor(Color.green); g.fillOval(50,290,100,100); } } }
redlight+packman.html
2.
3.
So, this was all for now about the JAVA Program for working Pacman Game. To know more about programming and more such stuff, check out https://www.worldtopupdates.com/.
Examples to Pascal’s Triangle in C Programming using control statements.
You might have studied while studying Binomial Theorem in Mathematics. Read below for the best Information
In mathematics, Pascal’s triangle is a triangular array of the binomial coefficients. In much of the Western world, it is named after the French mathematician Blaise Pascal, although other mathematicians studied it centuries before him in India,
/* Write a C program to generate Pascal's triangle. */ #include<stdio.h> #include<conio.h> void main() { int bin,p,q,r,x; clrscr(); bin=1; q=0; printf("Rows you want to input:"); scanf("%d",&r); printf("\nPascal's Triangle:\n"); while(q<r) { for(p=40-3*q;p>0;--p) printf(" "); for(x=0;x<=q;++x) { if((x==0)||(q==0)) bin=1; else bin=(bin*(q-x+1))/x; printf("%6d",bin); } printf("\n"); ++q; } getch();}
mkjgvfhffdfdrdclass Fibonacci { public static void main ( String s [] ) { int n2 =1 ;int n1 =0 ; System.out.println(n1); System.out.println (n2); int sum ; for ( int i = 0;i <25 ;i++) { sum = n1+n2; n1 = n2 ; n2 = sum; System.out.println ( sum ); } } }
import java.util.Scanner ; class CheckPrime { public static void main ( String s[] ) { System.out.println ( " Enter a number: "); Scanner value = new Scanner ( System.in ); int number = value.nextInt ( ); int flag =0; int c = (int) Math.sqrt( number ); for ( int i = 2 ; i <=c ; i++ ) { if ( (number % i ) == 0 ) { System.out.println ( " the number" + number + " is not a prime number "); flag =1 ; break ; } } if (flag == 0 ) System.out.println ( " the number is a prime number" ); } }
In this program, you’ll learn to check whether a number is palindrome or not in Java. This is done by using for and while loop.
A palindrome number is a number that is same after reverse. For example 141, 757, 38583, 747, 171, 52925 are the palindrome numbers. It can also be a string like LOL, NITIN etc.
import java.io.* ; import java.util.Scanner; class CheckPalindrome { public static void main (String s[] ) { Scanner console = new Scanner(System.in); int number ; System.out.println( " Enter the array size " ); int size = console.nextInt(); int array[] = new int[size]; for ( int i=0; i<size;i++) { System.out.println ( "Enter the number : array["+i+"]"); number = console.nextInt() ; array[i] = number ; } int c = array.length-1 ; for ( int i = 0; i < array.length ; i++) { if ( array[i] == array[c]) { c--; } } if (c == (-1) ) { System.out.println ( " this array is a palindrome "); } else {System.out.println( " this is not a palindrome " ); } System.out.println( " this is the second method to solve palindrome " ); int flag1 = 1; for(int i = 0, k = array.length-1; i<array.length&k>(-1);i++,k--) { if ( array[i] != array[k]) { System.out.println ("this is not a palindrome"); flag1 = 0; break ; } } if (flag1==1){ System.out.println( " this is a palindrome " ); } } }