Un Challenge Algorithmique ?

Un Challenge Algorithmique ?

Messagepar askolein le 28 Oct 2012, 00:23

Qui as un challenge algorithmique pour terminale?

Comme les précédents, mais non résolus svp :Bleh:

Merci :oui:
~~~~  () ()      ~~~~
~~~~ (-.-)    ~~~~
~~~~   ( )    ~~~~
~~     (") (")o  ~~~~
Mathias Dail.
askolein
~ membre génial ~
 
Messages: 78
Inscrit le: 30 Sep 2012, 19:14
Localisation: Terre, Voie Lactée, Univers 42.

Re: Un Challenge Algorithmique ?

Messagepar sc le 28 Oct 2012, 10:56

Bonjour, en voici un :

On se place dans l’ensemble des entiers naturels. Un entier naturel supérieur ou égal à deux est dit :
 Parfait si la somme de ses diviseurs distincts de lui-même lui est égale.
 Abondant si la somme de ses diviseurs distincts de lui-même lui est supérieure.
 Déficient sinon.
Exemples :
 6 est parfait : ses diviseurs (à part lui-même) sont 1, 2, 3 et 1+2+3=6
 12 est abondant : ses diviseurs (à part lui-même) sont 1, 2, 3, 4, 6 et 1+2+3+4+6=16>12
 9 est déficient : il n’a que 1 et 3 comme diviseurs distincts de lui-même : 1+3=4<9

Écrire un algorithme ou un programme en Python ou Java qui :
-demande à l’utilisateur de saisir un entier naturel supérieur ou égal à 2,
-et affiche en résultat la nature de ce nombre : parfait, abondant, ou déficient. Cet algorithme doit utiliser la fonction som_div écrite ci-dessus

NB :
en Python la division euclidienne se code "//". Exemple : 15//4 renvoie 3
en Java, la division euclidienne de code "/" à condition que les variables soient de type int.
Penser à utiliser la balise [ code=python][/code] ou [ code=java][/code]pour le programme ou [ code][/code] pour l'algorithme
(Pour l'affectation, copier-coller ce caractère : ← )
Avatar de l’utilisateur
sc
~ administrateur ~
 
Messages: 1439
Inscrit le: 29 Aoû 2017, 10:46

Re: Un Challenge Algorithmique ?

Messagepar askolein le 28 Oct 2012, 12:00

Merci, ça à l'air très intéressant ! 8)
~~~~  () ()      ~~~~
~~~~ (-.-)    ~~~~
~~~~   ( )    ~~~~
~~     (") (")o  ~~~~
Mathias Dail.
askolein
~ membre génial ~
 
Messages: 78
Inscrit le: 30 Sep 2012, 19:14
Localisation: Terre, Voie Lactée, Univers 42.

Re: Un Challenge Algorithmique ?

Messagepar kilag le 28 Oct 2012, 12:19

un algo qui permet de passer d'une base x à une base y :D
bonne chance :wink:
un peut comme sa
http://www.dcode.fr/conversion-base-n
on a les moyens de le réussir ou c'est hors de portée?
Dernière édition par kilag le 28 Oct 2012, 18:26, édité 1 fois au total.
Le Soleil, c'est l'endroit le plus chaud de la Terre
Avatar de l’utilisateur
kilag
~ membre surdoué ~
 
Messages: 23
Inscrit le: 02 Oct 2012, 19:23
Localisation: capitale de France : Lyon

Re: Un Challenge Algorithmique ?

Messagepar Valentin le 28 Oct 2012, 15:17

Voici le code java pour le programme qu'il dit si un nombre est parfait, abondant ou déficient :


Il peut-être améliorer je pense, mais sinon, le principal est là. J'ai utilisé le modulo afin de vérifier si le reste de la division valait zéro.
Valentin
~ membre hyper actif ~
 
Messages: 48
Inscrit le: 02 Oct 2012, 14:57

Re: Un Challenge Algorithmique ?

Messagepar sc le 28 Oct 2012, 15:53

C'est impeccable Valentin,
Je me suis permis de cacher ton code dans un spoilertempo pour laisser 4 jours de recherche aux autres !
Avatar de l’utilisateur
sc
~ administrateur ~
 
Messages: 1439
Inscrit le: 29 Aoû 2017, 10:46

Re: Un Challenge Algorithmique ?

Messagepar Valentin le 28 Oct 2012, 15:55

Merci.

Bonne journée.
Valentin
~ membre hyper actif ~
 
Messages: 48
Inscrit le: 02 Oct 2012, 14:57

Re: Un Challenge Algorithmique ?

Messagepar kilag le 28 Oct 2012, 18:07

voici ma version:

:D
Dernière édition par kilag le 28 Oct 2012, 18:37, édité 2 fois au total.
Le Soleil, c'est l'endroit le plus chaud de la Terre
Avatar de l’utilisateur
kilag
~ membre surdoué ~
 
Messages: 23
Inscrit le: 02 Oct 2012, 19:23
Localisation: capitale de France : Lyon

Re: Un Challenge Algorithmique ?

Messagepar askolein le 28 Oct 2012, 18:33

Voila mon code en java, ( par contre la basile spoiler outeur du [code =jave] détruit les caractères dans le java, donc on ne peux pas cacher notre code )


Merci pour ce challenge sympa ! :clapclap:
~~~~  () ()      ~~~~
~~~~ (-.-)    ~~~~
~~~~   ( )    ~~~~
~~     (") (")o  ~~~~
Mathias Dail.
askolein
~ membre génial ~
 
Messages: 78
Inscrit le: 30 Sep 2012, 19:14
Localisation: Terre, Voie Lactée, Univers 42.

Re: Un Challenge Algorithmique ?

Messagepar csamborski le 28 Oct 2012, 19:30

Voilà mon implémentation avec l'utilisation d'une fonction som_div :
Texte caché : cliquez sur le cadre pour l'afficher

Code: Tout sélectionner

#IU
n = int(input("Entrez un entier supérieur ou égal à 2 : "))
s = som_div( n , 0 )

if( s == n ):
    print( "%i"%n +" est un entier naturel parfait" )
elif( s > n ):
    print( "%i"%n +" est un entier naturel abondant (la somme de ses diviseurs vaut %i)"%s )
else:
    print( "%i"%n +" est un entier naturel déficient (la somme de ses diviseurs vaut %i)"%s )


Concernant la recherche des diviseurs, je pars du principe que si b divise a et a/b=c alors c divise a et on a a/c = b, du coup comme le compteur monte, on sait qu'on a besoin de tester au maximum jusqu'à n/2, n/3, n/4, etc...

Concernant le challenge algorithmique du passage de base (Kilag, qui es-tu ?), j'ai déjà été amené à le faire mais en JavaScript, du coup il est possible de le tester en ligne. En éditant la première ligne il est possible d'étendre "dynamiquement" l'ensemble des symboles (vive la programmation agile). Je laisse le soin à ceux qui le veulent d'en faire un équivalent en Python ou autre. :P


Je voulais aussi proposer mon petit challenge :
Programmez un algorithme capable de calculer la probabilité d'obtenir 0 à 250 multiples de 3 en lançant simultanément 1000 dés à 6 faces, avec une précision au 1000ème.
Le problème est que Python a été "conçu" pour les maths donc il n'y a pas trop de challenge, mais si vous avez un peu de temps : faîte ça sur votre calculatrice. (Le but du challenge est de trouver comment contourner les limites techniques.)
Skype : csamborski
Sur navigateur moderne : http://ld24pm-easy.quantum-softwares.fr/
Avatar de l’utilisateur
csamborski
~ membre surdoué ~
 
Messages: 26
Inscrit le: 02 Oct 2012, 17:46
Localisation: Vienne

Re: Un Challenge Algorithmique ?

Messagepar askolein le 28 Oct 2012, 19:49

Ah mince je n'ai pas utilisé de fonction :Bleh:


Charles, je trouve que ton programme est pas mal compliqué 8)


et ton challenge, à voir ! :lol:
~~~~  () ()      ~~~~
~~~~ (-.-)    ~~~~
~~~~   ( )    ~~~~
~~     (") (")o  ~~~~
Mathias Dail.
askolein
~ membre génial ~
 
Messages: 78
Inscrit le: 30 Sep 2012, 19:14
Localisation: Terre, Voie Lactée, Univers 42.

Re: Un Challenge Algorithmique ?

Messagepar Valentin le 28 Oct 2012, 19:52

C'est charles, il complique toujours xD
Valentin
~ membre hyper actif ~
 
Messages: 48
Inscrit le: 02 Oct 2012, 14:57

Re: Un Challenge Algorithmique ?

Messagepar kilag le 28 Oct 2012, 20:05

kilagg c'est audran :D
Le Soleil, c'est l'endroit le plus chaud de la Terre
Avatar de l’utilisateur
kilag
~ membre surdoué ~
 
Messages: 23
Inscrit le: 02 Oct 2012, 19:23
Localisation: capitale de France : Lyon

Re: Un Challenge Algorithmique ?

Messagepar sc le 29 Oct 2012, 08:56

Bonjour et bravo à tous pour vos programmes. C'est une bonne habitude de privilégier une programmation fonctionnelle ou procédurale et de faire appel aux fonctions définies en amont dans le programme principal.
Charles, il faut que tu précises un peu ton énoncé (peut être dans un nouveau post). S'agit il d'une simulation de calcul de proba ou d'un calcul direct. Dans ce dernier cas, les autres ont tout à fait intérêt à aller voir la définition de la loi binomiale sur Wikipédia..... Dans les deux cas, le challenge est intéressant!!
Bonnes vacances
Avatar de l’utilisateur
sc
~ administrateur ~
 
Messages: 1439
Inscrit le: 29 Aoû 2017, 10:46


Retourner vers Algorithmique

Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron