import java.util.*;
class CDatos
{
public int tamanio;
private int indice;
private int [] arreglo;
Random r;
public CDatos(int tam)
{
tamanio = tam;
indice = 0;
arreglo = new int[tamanio];
r = new Random();
}
public void asignar(int valor, int indice)
{
arreglo[indice] = valor;
}
public synchronized void calculo(String nomHilo)
{
int x = r.nextInt(100);
System.out.println(+indice+" Numero= " + x + " Hilo= "+nomHilo);
asignar(x, indice);
indice ++;
}
public boolean total()
{
if(indice < tamanio-1)
return true;
else
return false;
}
}
class CObtenerDatos extends Thread
{
private CDatos obj;
public CObtenerDatos(CDatos objeto)
{
obj = objeto;
}
public void run()
{
while(obj.total())
{
obj.calculo(getName());
}
}
}
class test1
{
public static void main(String []args)
{
int numero;
System.out.println("Cuantos elementos en el arreglo: ");
numero = Leer.DatoInt();
CDatos datos = new CDatos(numero);
CObtenerDatos obj1 = new CObtenerDatos(datos);
CObtenerDatos obj2 = new CObtenerDatos(datos);
obj1.start();
obj2.start();
}
}