Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAS Base Discussion :

Détecter si un nombre est premier ou pas


Sujet :

SAS Base

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mars 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mars 2018
    Messages : 7
    Points : 9
    Points
    9
    Par défaut Détecter si un nombre est premier ou pas
    bonjour

    je cherche à réaliser une macro qui détecte si une variable est un nombre premier ou pas

    voila mon code mais il ne marche pas
    merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    %macro dett(nb);
    %let count=0;
    %do i=1 %to &nb ;
     
    %let modul=%sysfunc(mod(&nb,&i));
    %if  &modul. eq 0 %then &count=%eval(&count+1);
    %end;
    %put &count;
    %if &count gt 2 %then %put " &nb pas premier ";
    %else  %put " &nb est premier ";
    %mend;

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur en SAS/ Statisticien
    Inscrit en
    janvier 2013
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur en SAS/ Statisticien
    Secteur : Enseignement

    Informations forums :
    Inscription : janvier 2013
    Messages : 451
    Points : 1 485
    Points
    1 485
    Par défaut
    Bonjour,
    Cette solution peut répondre à ta requête (ton code repris et rectifié) à vérifier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    %macro dett(nb) ;
    %do i=1 %to &nb. ;
    	%do j=2 %to &i.-1 ;
    		%if %sysfunc(mod(&i., &j.)) eq 0 %then %do  ; 
    		%put " &i. n'est pas premier "  ;  %goto leave  ; 
                                                          %end  ;
            %end ;
    %put " &i. est premier ";	
    %leave: ;
    %end ;
    %mend;	%dett(10) ;
    Bon courage
    Ward

Discussions similaires

  1. comment tester si un nombre est premier en php ?
    Par Shyboy dans le forum Langage
    Réponses: 1
    Dernier message: 09/03/2007, 18h08
  2. Réponses: 9
    Dernier message: 30/01/2007, 22h03
  3. Savoir si un nombre est premier
    Par Jihnn dans le forum Vos contributions VB6
    Réponses: 4
    Dernier message: 11/08/2006, 11h14
  4. Comment savoir si un nombre est premier ?
    Par Extra-Nitro dans le forum Général Python
    Réponses: 9
    Dernier message: 03/01/2006, 15h28
  5. Déterminer si un nombre est premier
    Par Fandefruit dans le forum Langage
    Réponses: 7
    Dernier message: 30/12/2005, 11h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo