Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Nb premier
Ti64CLi Hors ligne Membre Points: 629 Défis: 65 Message

Nb premier

Posté le 24/03/2015 13:58

Comment ce fait il que ce code ne marche pas:
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int nb=0;
    int nbt;
    scanf("%d",&nb);
    nbt=2;
    int prime=0;
    while (nbt <= nb-1)
    {
        if ((nb/nbt) != floor(nb/nbt))
        {
            printf("is not prime");
            return 0;
        }
        if (nbt == nb-1)
        {
            break;
        }
    }
    if (prime == 0)
    {
        printf("is prime");
    }
    return 0;
}



Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 24/03/2015 14:15 | #


sur PC ou calto?
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 24/03/2015 16:30 | #


printf donc PC
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 24/03/2015 18:05 | #


Ben justement, le problème vient peut être de là...
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24146 Défis: 170 Message

Citer : Posté le 24/03/2015 18:57 | #


Ouh là, mais c'est pas optimisé tout ça.
D'une part ta variable prime ne sert à rien vu qu'il y a un return.
D'autre part ça ne sert à rien de tester les diviseurs strictement supérieurs à la racine carrée du nombre à tester.
Et enfin y'a moyen de sévèrement optimiser au niveau de la structure.
Ah oui, et le test pourrait se faire sur un modulo, mais si je ne suis pas sûr que ce soit vraiment plus rapide.
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 24/03/2015 19:44 | #


#include <stdio.h>
#include <stdlib.h>

int main()
{
    int nb=0;
    int nbt;
    scanf("%d",&nb);
    nbt=2;
    while (nbt <= nb-1)
    {
        if ((nb/nbt) != floor(nb/nbt))
        {
            printf("is not prime");
            return 0;
        }
    }
    printf("is prime");
    return 0;
}


c'est quand même plus propre
-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

Citer : Posté le 24/03/2015 19:59 | #


dis moi le différents tu met "! =" ?
In Arch, I trust ! And you ?
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 24/03/2015 20:00 | #


nan,c'est le site qui transforme ! = en !=

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 106 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd