begin process at 2009 11 28 12:46:42
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > LISTES DES NOMBRES PARFAITS INFERIEURES À N

LISTES DES NOMBRES PARFAITS INFERIEURES À N


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Maths & Algorithmes Source .NET ( DotNet ) Classé sous :NOMBRE PARFAITS, parfaits, nombres Niveau :Débutant Date de création :30/10/2009 Date de mise à jour :30/10/2009 15:49:42 Vu / téléchargé :1 223 / 142

Auteur : Trezeguet

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Un nombre parfait est un nombre qui est egale a la somme de ses diviseurs. Ce programme permet d'afficher tous les nombres parfaits inferieurs à un nombre N

Source

  • #include<stdio.h>
  • #include<conio.h>
  • void main()
  • {
  • int x,i,j,r,som=0;
  • do{
  • printf("Entrer votre nombre ");
  • scanf("%i",&x);
  • }while(x<0);// controle du nombre saisi par l'utilisateur
  • for(j=1;j<x;j++)//parcourt de tous les nombres jusqu'a x
  • {
  • som=0;
  • for(i=1;i<j;i++)
  • {
  • r=j%i;
  • if(r==0)
  • {
  • som=som+i;
  • }
  • }
  • if(j==som)
  • {
  • printf("\n%d est parfait ",j);
  • }
  • else
  • {
  • // printf("\n%d n'est pas parfait ",j);
  • }
  • }
  • getch();
  • }
#include<stdio.h>
#include<conio.h>
void main()
{
int x,i,j,r,som=0;

do{
	printf("Entrer votre nombre ");
	scanf("%i",&x);

  }while(x<0);// controle du nombre saisi par l'utilisateur

 for(j=1;j<x;j++)//parcourt de tous les nombres jusqu'a x
  {
    som=0;
 	 for(i=1;i<j;i++)
  	{
  	r=j%i;

  		if(r==0)
  		{
      	som=som+i;
     	}
    }
  		if(j==som)
  		{
  		printf("\n%d est parfait ",j);
  		}
  			else
  			{
  		  //	printf("\n%d n'est pas parfait ",j);

   		}
  }

getch();
}



 Historique

30 octobre 2009 15:49:54 :
explication d'un nombre parfait

 Sources de la même categorie

Source avec Zip Source avec une capture COMPRESSION FICHIERS ALGORITHME HUFFMAN C par xtremejames183
Source avec Zip Source avec une capture LA CONJECTURE DE SIERPINSKI par pgl10
Source avec une capture MULTIPLICATIONS: PETIT EXERCICE DE MATHS par gmorris
Source avec Zip Source avec une capture CONVERSION EN FRACTION ÉGYPTIENNE par pgl10
[C/C++] DÉTERMINER LES DIVISEURS D'UN NOMBRE AVEC DES INFORM... par soso62fr

 Sources en rapport avec celle ci

Source avec Zip FACTORISATION D'UN NOMBRE EN NOMBRE PREMIER par Tearsofdestiny
Source avec Zip CALCUL DE FACTORIELLES par pabbati
RECHERCHE DES NOMBRES CHANCEUX SELON STANISLAW ULAM par Gueftones
NOMBRES EN LETTRES par blassiou083
NOMBRES TRIÉS par catamenia

Commentaires et avis

Commentaire de rclsilver02 le 30/10/2009 13:12:02

Salut,

Je pense que tu aurais pu, dans ta description, faire un rappel pour expliquer ce qu'est un nombre parfait, peut-être aussi expliquer comment ton code fonctionne etc... Eventuellement donner quelques exemples d'une utilisation concrète (à quoi ça pourrait servir).

Bonne continuation en tous cas :)

Cordialement,
rclsilver.

Commentaire de Trezeguet le 30/10/2009 19:46:09

Merci pour le commentaire rclsilver

Commentaire de Trezeguet le 30/10/2009 19:50:35

Bjr j'aimerais apprendre à programmer en VB office svp aidez moi a trouver la documentation

Commentaire de pgl10 le 31/10/2009 15:42:02 8/10

Ce code est parfait pour retrouver les 4 premiers nombres
parfaits qui étaient déjà connus à l'époque des grecs
anciens ( Euclide ... ). Mais il est illusoire de calculer
le 5-ième avec un code comme celui-ci. Par contre en reprenant
http://www.cppfrance.com/code.aspx?ID=25648 comme suit :
#include <stdio.h>
#include <stdlib.h>
#define nmax 34000000
int main(){ // tous les nbs parfaits connus sont pairs.    
long int nb, somme, div, quot;
for(nb=2; nb<=nmax; nb=nb+2){  
   somme=1;
   for(div=2; div*div<=nb; div++){
      if(nb%div==0){
         quot=nb/div;
         if (div==quot) somme=somme+div;
         else somme=somme+div+quot;
         }
      if(somme>nb) break;
      }
   if (nb==somme)
   printf("\n -> nombre parfait : %d", nb);
   }
printf("\n\n");
system("pause");
return 0;
}
on peut trouver le 5-ième avec une poignée de minutes d'attente. Ce qui est mieux.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Probleme sur un programme qui calcule un pgcd [ par El loco ] Voila j ai un probleme sur le programme suivant, il marche correctement avec une grande serie de nombres mais quand je tape 15 et 32 il me donne un pg class pour manipuler des grands nombres [ par Orkblutt ] Salut,j'aimerai implementer une classe qui me permettrai de manipuler (+,-, /,*,%) des grands nombres (Nb&gt;32bits) mais je ne sais pas du tout comm Cas des tres grds nombres en C [ par unclecrufek ] slt a tousJ'ai un projet de math a realiser en C:convertir des nombres d'une base a une autre.Ce n'est pas bien complique, sauf qu'il faut que j'envis traviller avec de grands nombres [ par alfred289 ] est-ce que quelqu'un aurait une façon simple de travailler avec de très grands nombres ( des miliers de chiffres par exemple) Les nombres aléatoires en C++ (Visual C++ 6.0) [ par Yabo ] Tout d'abord voilà le code :CODE #include &lt;iostream&gt;#include &lt;stdio.h&gt;#include &lt;stdlib.h&gt;#include &lt;time.h&gt;using namespace std convertir les nombres en lettres [ par djamine ] salut les amisje cherche un code pour convertir les nombres (1 2 3 .....) en lettres ( un, deux , trois....)l'utilisateur donne le nombre et le progra COMPTER LE NOMBRES D'IMPRESSIONS [ par bilal ] VGTABONJOUR G cherché et essayé et toujour pas trouvé ou je dois attaquer pour faire mon petit soft.enfait je voudrai juste compter le nombre d'impres Nombres dans fichier .txt [ par Franckyom50 ] Salut à tous !J'aimerais savoir comment je peux récupérer une série de nombres qui se trouvent dans un fichier texte, sous cette forme :365221655236-2 Acces a chaque bit d'un nombre binaire [ par djemmy ] Je dois obtenir, à partir de 4 nombres décimals(compris entre 0 et 15), les 4 nombre en binaire correspondants. De ces nombres binaires je dois en fab Lecture de nombres [ par ganfoud ] J'ai un probleme, quand je veux lire un nombre stocké dans une chaine:char ligne[50];double acc=0.0;while (fgets(ligne,14,fi) != NULL) sscanf


Nos sponsors


Sondage...

CalendriCode

Novembre 2009
LMMJVSD
      1
2345678
9101112131415
16171819202122
23242526272829
30      

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 26,863 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales