Nombres parfaits
sweetwink
Messages postés
91
Statut
Membre
-
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
ca c 1 nouvo programme kom d'habitude je poste mon travail et celui qui mle corrige sera le bienvenu
pour un programme qui permet d'afficherles nombres parfaits inférieuurs a 1000
#include <stdio.h>
void main()
{
int i , n,
do
printf ( "saisir le nombre ",n);
scanf(n);
for (i=1;i<=n;i++)
{
i=1;
while (n%i=0)
{
printf (" i est un divseur de n");
i++;
}
if ( som+i=n)
printf ( " n n'est pas un nombre parfait");
else
printf("n n'est pa un nombre parfait");
}
while(n >1000)
}
ca c 1 nouvo programme kom d'habitude je poste mon travail et celui qui mle corrige sera le bienvenu
pour un programme qui permet d'afficherles nombres parfaits inférieuurs a 1000
#include <stdio.h>
void main()
{
int i , n,
do
printf ( "saisir le nombre ",n);
scanf(n);
for (i=1;i<=n;i++)
{
i=1;
while (n%i=0)
{
printf (" i est un divseur de n");
i++;
}
if ( som+i=n)
printf ( " n n'est pas un nombre parfait");
else
printf("n n'est pa un nombre parfait");
}
while(n >1000)
}
A voir également:
- Nombres parfaits
- Code binaire des nombres - Guide
- Nombres faciles - Télécharger - Outils professionnels
- Formule excel écart entre deux nombres - Forum Excel
- Citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum LibreOffice / OpenOffice
- Barbara veut calculer automatiquement son budget dans un tableau. citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum Excel
1 réponse
Salut,
Regarde bien ton code corrigé, et compare le bien avec ta version.
Attention à l'utilisation de printf, scanf et surtout l'algorithme.
En C, l'égalité est == (double égal). L'affectation est = (simple égal).
Ton algo initial n'était pas bon. Par exemple, i va de 1 à n-1. n ne doit pas être pris en considération pour le calcul du nombre parfait.
Note : Pourquoi se limiter à 1000 pour le nombre parfait ? Le C peut aller bien plus haut ;)
Cdlt
Regarde bien ton code corrigé, et compare le bien avec ta version.
Attention à l'utilisation de printf, scanf et surtout l'algorithme.
En C, l'égalité est == (double égal). L'affectation est = (simple égal).
Ton algo initial n'était pas bon. Par exemple, i va de 1 à n-1. n ne doit pas être pris en considération pour le calcul du nombre parfait.
#include <stdio.h>
int main(void)
{
int i,n,som;
do{
printf("saisir le nombre : ");
scanf("%d",&n);
}while(n>1000);
som=0;
for (i=1;i<n;i++){
if(n%i==0){
printf("%d est un diviseur de n\n",i);
som+=i;
}
}
if (som==n)
printf("%d est un nombre parfait\n",n);
else
printf("%d n'est pas un nombre parfait\n",n);
return 0;
}
Note : Pourquoi se limiter à 1000 pour le nombre parfait ? Le C peut aller bien plus haut ;)
Cdlt