Aquí está el programa que dibuja círculos casuales en la pantalla con el lenguaje JAVA
package disegno;
import java.awt.*; import javax.swing.*;
public class Tela extends JPanel{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
this.setBackground(Color.WHITE);
g.setColor(Color.BLACK);
DisegnaCerchiA_Caso(3,10000,g);
}
public void DisegnaCerchiA_Caso(int raggio,int numeroCerchi,Graphics g)
{ int x,y;
int numero=0;
while(numeroCerchi>0)
{
x=(int)(Math.random()*1000); y=(int)(Math.random()*1000);
g.setColor(Color.BLACK);
if (IsPrime(numero)==1)
{ g.setColor(Color.RED);
g.drawOval(x, y, raggio, raggio);
}
else
{
g.drawOval(x, y, raggio, raggio);
}
numero++;
numeroCerchi–;
}
}
public int IsPrime (int n)
{ int primo=1;
int fattore=2;
boolean exit=false;
if (n==1)
{exit=true;
primo=0;}
while(fattore<=n/2 && !exit)
{
if (n%fattore==0)
{ primo=0;
exit=true;
}
fattore ++;
}
return primo;
}
}
Y aquí está el resultado. En rojo he resaltado los números primos. Raros entre 0 y 10000.
Aquí está el archivo donde encontrarás el main:
package disegno;
import javax.swing.*;
public class Disegno {
public static void main(String[] args) {
JFrame t= new JFrame("Grafica Iterativa");
t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Tela p = new Tela(); t.add(p); t.setSize(1000, 1000); t.setVisible(true); }
}
Para poner en funcionamiento el código, sigue el siguiente video