Fabio Donatantonio

Resta connesso

Software Developer / Adjunct Professor

Esercizio 25 – Generatore numeri primi

Realizzare una classe PrimeGenerator con metodo nextPrime() che genera il prossimo numero primo.
Scrivere e testare un programma che chiede all’utente un intero n e stampa tutti i numeri primi compresi tra 2 ed n.
Ad esempio se l’input è 20, il programma stampa:
2
3
5
7
11
13
17
19

La classe PrimeGenerator.java:

public class PrimeGenerator
{
	int numero;
	
  	// Metodo Costruttore vuoto
	public PrimeGenerator(int n){
		this.numero = n;
		nextPrime(2);
	}

	// Metodo che calcola i numeri primi compresi tra 1 e n
	public void nextPrime(int n)
	{	  
	    int posMax = (int)Math.sqrt(n + 1);
	 
	    for(int divisore = 2; divisore <= posMax; divisore++){
	    	if (n % divisore == 0 && n!=2){
	    		if(n<=numero){
	    			nextPrime(n+1);
	    		} 
	    		return;
	    	}
	    }
	    System.out.println(n);
	    if(n<=numero){
	    	nextPrime(n+1);
	    }
	}
}

La classe di test:

import java.util.Scanner;
public class TestPrime
{
	public static void main(String[] args){
		Scanner in = new Scanner(System.in);

		// Prendo in input un numero
		System.out.println("Dammi un numero: ");
		int num = in.nextInt();
		
		PrimeGenerator NumeriPrimi = new PrimeGenerator(num);
		
	}
}
Fabio Donatantonio

Fabio Donatantonio. Analista e sviluppatore full-stack di applicazioni web in linguaggio PHP. Professore a Contratto per le cattedre di Fondamenti di Informatica e Archivistica Digitale presso Università degli Studi eCampus. Dal 2008 curatore del sito www.donatantonio.net, da sempre appassionato di programmazione, mare, sigari e... musica.

Leave a reply

Your email address will not be published. Required fields are marked *

 

Didattica

Università degli Studi eCampus
Data Evento
05/07/2019
11:30
Esame Archivistica Digitale e Informatica per le Scienze Umane - Cds Filologia Moderna - Lettere - Novedrate(CO)
05/07/2019
11:30
Esame Introduzione all'Archivistica Digitale e all'Informatica per le Scienze Umane - Cds Letteratura, Arte, Musica e Spettacolo - Lettere - Novedrate(CO)
05/07/2019
11:30
Esame Abilità Informatiche e Telematiche - Cds Design e Discipline della Moda - Lettere - Novedrate(CO)
12/07/2019
11:30
Esame Introduzione all'Archivistica Digitale e all'Informatica per le Scienze Umane - Cds Letteratura, Arte, Musica e Spettacolo - Lettere - Roma
12/07/2019
11:30
Esame Archivistica Digitale e Informatica per le Scienze Umane - Cds Filologia Moderna - Lettere - Roma
12/07/2019
11:30
Esame Abilità Informatiche e Telematiche - Cds Design e Discipline della Moda - Lettere - Roma
Risorse
Guida HTML/CSS per principianti (link)
Introduzione agli ipertesti (link)
Esercizi guidati in Java (link)
Intelligenza artificiale (link)
Libri
Fondamenti di Informatica (2011) (link)
Informatica per le Scienze Umane (2011) (link)
Fondamenti di Informatica (2014) (link)
Pagina Docente
uniecampus.it - Scheda Docente (link)
Contatti
fabio.donatantonio[at]uniecampus.it

JWhisper, sviluppato presso il Dipartimento di Informatica Applicata dell'Università degli Studi di Salerno:

Stay Connected

Twitter

Le mie foto

Foto di Fabio Donatantonio
×