Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 2200
Réponses : 6
Type : discussion
Etat : réponses autorisées

Problème très important sur les entiers naturels

Invité le 22/12/2011 à 09:42
Eh bien voilà, mon problème est que je n'arrive en aucun cas à vérifier dans un programme si le nombre est un entier naturel... sad.gif
The K le 22/12/2011 à 10:49
Un nombre entier n'a pas de virgule et de décimales.
La commande pour vérifier si il n'y en a pas est :

Code
If PartDec(A)=0


Ou A est le nombre à vérifier, cela signifie :
Si la partie décimale de A est égale à 0 (=si il n'y a pas de décimales)

Ce qui peut se transformer en (pour un peu d'optimisation : )

Code
If non(PartDec(A


Après, pour vérifier si le nombre est positif (entier naturel : ) on teste si il est supérieur ou égal à 0 :

Code
If A>=0                    //>= : supérieur ou égal


Pour mettre les deux conditions en même temps on utilise un connecteur logique (un boléen) le "et", ce qui va nous donner :

Code
If A>=0 et non(PartDec(A


Et voila winkle.gif
metallica le 22/12/2011 à 11:29
Ou tout simplement :
Code
If A=abs(PartEnt(A

Ce qui veut dire que A est égale à la valeur positif et entière de lui même donc qu'il est entier naturel.
The K le 22/12/2011 à 14:08
Désolé à mon avis c'est faux. Ce code vérifie si A à une partie entière positive, pas si A n'a pas de partie décimale et qu'il est positive.
metallica le 22/12/2011 à 14:42
Désolé de te décevoir mais ce code marche parfaitement et je l'ai déjà utilisé dans des programmes. happy.gif
The K le 22/12/2011 à 18:31
Aaaah oui. Oui bien sur ^^ Oui en effet. J'avais oublié la partie du "A=".

Oui si A = sa partie entière forcément ... bah bien vu en tous cas ^^
metallica le 23/12/2011 à 16:21
Merci glasses.gif