Program:
import java.util.Random;
class Square extends Thread
{
int x;
Square(int n)
{
x = n;
}
public void run()
{
int sqr = x * x;
System.out.println(“Square of ” + x + ” = ” + sqr );
}
}
class Cube extends Thread
{
int x;
Cube(int n)
{x = n;
}
public void run()
{
int cub = x * x * x;
System.out.println(“Cube of ” + x + ” = ” + cub );
}
}
class Number extends Thread
{
public void run()
{
Random random = new Random();
for(int i =0; i<5; i++)
{
int randomInteger = random.nextInt(100);
System.out.println(“Random Integer generated : ” + randomInteger);
Square s = new Square(randomInteger);
s.start();
Cube c = new Cube(randomInteger);
c.start();
try {
Thread.sleep(1000);
} catch (InterruptedException ex) {
System.out.println(ex);
}
}
}
}
public class Thr {
public static void main(String args[])
{
Number n = new Number();
n.start();
}
}
Output:
Random Integer generated : 32
Square of 32 = 1024
Cube of 32 = 32768Random Integer generated : 35
Square of 35 = 1225
Cube of 35 = 42875
Random Integer generated : 45
Square of 45 = 2025
Cube of 45 = 91125
Random Integer generated : 70
Square of 70 = 4900
Cube of 70 = 343000Random Integer generated : 5
Square of 5 = 25
Cube of 5 = 125