#!/usr/bin/perl
#File: is_prime.pl
#Author: Prabou MOUTTOU
#Description: checks if nombre is prime
#Version: 28 April 2019

use strict;
use warnings;

my $nombre=$ARGV[0];

#si le nombre est pair il n'est pas premier
if ( $nombre%2 == 0 ){
print "le nombre $nombre est pair, il n'est donc pas premier\n";
exit;
}
else
{

#calcul de la partie entiere de la racine carree du nombre
my $partie_entiere=int(sqrt($nombre));
if ($partie_entiere%2 == 0){$partie_entiere = $partie_entiere - 1;}

#calcul du reste de l'operation nombre/3,5,7...$partie_entiere
my $i=3;
while (($nombre%$i) != 0 && $i <= $partie_entiere) {
  $i = $i + 2;
}

if ( $i-2 != $partie_entiere ){print "$nombre n'est pas premier! $nombre est divisible par $i\n";}
else {print "$nombre est premier!\n";}

}
