Téléchargé 1 fois
						
					
					
						Vote des utilisateurs
					
					
	 0
0  0
0 
						Détails
					
					Licence : Non renseignée
						Mise en ligne le 24 janvier 2017
												
																		
													Langue : Français
						
					
							Référencé dans
						
						
										
					
						Navigation
					
					
				
						
							
							
								Nombres premiers							
						 
					
					
								Nombres premiers							
						Code incluant deux fonctions :
											- is_prime déterminant si un nombre est premier
- first_primes retournant les N premiers nombres premiers
							Nos ressources disponibles
						
						| Code C++ : | Sélectionner tout | 
bool is_prime(unsigned long long p)
| Code C++ : | Sélectionner tout | 
vector first_primes(vector::size_type value)
Bonjour, 
Je vous propose un nouvel élément à utiliser : Nombres premiers
bool is_prime(unsigned long long p)
renvoie true si p est premier ( n'est pas 2 ni trois de 3 et non multiple 6n±1 ≤ √p avec n>= 1 et n entier)
vector first_primes(vector::size_type value)
renvoie les value premiers entiers; il ajoute les entiers 6n±1 en vérifiant s'il n'est pas multiples des premiers nombres premiers déjà calculés
Qu'en pensez-vous ?
					Je vous propose un nouvel élément à utiliser : Nombres premiers
bool is_prime(unsigned long long p)
renvoie true si p est premier ( n'est pas 2 ni trois de 3 et non multiple 6n±1 ≤ √p avec n>= 1 et n entier)
vector first_primes(vector::size_type value)
renvoie les value premiers entiers; il ajoute les entiers 6n±1 en vérifiant s'il n'est pas multiples des premiers nombres premiers déjà calculés
Qu'en pensez-vous ?
Bonjour,
J'aurais passé le std::vector en référence, au lieu de le passé en copie et de le retourner.
					J'aurais passé le std::vector en référence, au lieu de le passé en copie et de le retourner.
En C++11 le vector retourné sera déplacé et non copié. Donc ca me semblerait OK pour moi.
					Oui, j'avais oublié ce détail.
Mais bon, première ligne de la fonction :
	
	Ça fait lourd, je trouve (du moins dans l'idée).
					Mais bon, première ligne de la fonction :
| Code : | Sélectionner tout | 
vector<unsigned long long> result(value);
"Et une fois de plus, une boucle qui progresse par pas de 1, et donc passe systématiquement par tous les nombres pairs."
pour is_prime
il vérifie s'il nest pas multiple de 2 et qu'il ne soit pas 2
même chose pour 3
puis verifie s'il n'est pas multiple de 6n±1 en commençant par n = 1 soit (5, 7, 11, 13, 17, 19, 23, 25) où sont les nombres pairs ?
pourquoi 6n ± 1 :
6n + 1 peut être premier
6n + 2 est pair donc non premier
6n + 3 est multiple de trois
6n + 4 est pair
6n + 5 peut être premier
					pour is_prime
il vérifie s'il nest pas multiple de 2 et qu'il ne soit pas 2
même chose pour 3
puis verifie s'il n'est pas multiple de 6n±1 en commençant par n = 1 soit (5, 7, 11, 13, 17, 19, 23, 25) où sont les nombres pairs ?
pourquoi 6n ± 1 :
6n + 1 peut être premier
6n + 2 est pair donc non premier
6n + 3 est multiple de trois
6n + 4 est pair
6n + 5 peut être premier
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
		
	

 
			 
			 
																	