Dessinons la solitude des nombres premiers et tous les facteurs des nombres naturels analysés

Voici le code sur deux fichiers pour exécuter l'impression des nombres premiers graphiquement

Voici le code sur deux fichiers pour exécuter l'impression des nombres premiers graphiquement.

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(1800, 1000); t.setVisible(true);

}
}

Voici le code d'impression

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);
// cette instruction suivante publie
// un rectangle à la position 5,5 en haut à gauche
int n=1;
String sn="";
for (int r=45;r<1000;r=r+41) { for(int i=0;i<1800;i=i+41) { if (IsPrimeFactor(n)>2||IsPrimeFactor(n)==1)
{g.setColor(Color.BLACK);
}
else
{g.setColor(Color.white);}
 g.fillRect(i,r,40,40); g.setColor(Color.black); if (IsPrimeFactor(n)==2){ sn=Integer.toString(n);} else{ sn=Integer.toString(IsPrimeFactor(n)); g.setColor(Color.white);} if (IsPrimeFactor(n)>2||IsPrimeFactor(n)==1){ g.drawString(sn, i+10, r+30); g.drawString(Integer.toString(n), i+10, r+10);} else{ g.drawString(sn, i+10, r+15);} n++; } }
}
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;

}

public int IsPrimeFactor(int n){
int x=2,fattori=2;
if(n!=1){
while(x<=n/2)
{if (n%x==0)
{fattori+=1;}
x++;}}
else{fattori=1;}
return fattori;
}

}

voici le résultat

Pour exécuter le programme ci-dessus, vous avez besoin de créer le projet disegno avec le main et d'ajouter la classe Tela

Suivez le cours de Java en ligne et les leçons vidéo. Bon divertissement !