algorithme algobox suite de Cyracuse
- 
					
					
					
					Kkuznik dernière édition par
 je dois effectuer un algoritme avec algobox pour une suite numerique dans la quelle je dois inclure deux conditions " si n est pair et si n est impair" comment s'ecrivent ces conditions ? merci 
 
- 
					
					
					
					mtschoon dernière édition par  
 BONJOUR ( un petit "bonjour" fait plaisir ! ) Idées, Tu prends "Si...Alors" et tu coches Sinon 
 
- 
					
					
					
					Kkuznik dernière édition par
 excusez moi c'est la premiere fois que j'oublie de saluer ! j'ai bien pris " si..alors" mais je crois qu'algobox le comprend pas les mots " pairs et impairs " comment les exprimer autrement ? merci 
 
- 
					
					
					
					mtschoon dernière édition par  
 Pour pair : Si tu as appelé n la variable nombre utilisée , tu peux utiliser "floor(n/2)" qui calcule le quotient entier de n par 2 . 
 Si le quotient entier de n/2 vaut n/2 , alors n est pair , Sinon n est impair.Tu dois pouvoir utiliser : floor(n/2)==n/2 ( pour n pair ) Il faudra tester 
 
- 
					
					
					
					mtschoon dernière édition par  
 floor(n/2) représente le quotient entient de n/2. Pour comprendre , je te donne des exemples . un exemple de n pair : n=6 donc n/2=3 donc floor(n/2)=3 
 un exemple de n impair : n=7 donc n/2=3.5 donc floor(n/2)=3floor(n/2)=n/2 est une traduction de n pair 
 floor(n/2)≠n/2 est une traduction de n impair
 
- 
					
					
					
					Kkuznik dernière édition par
 floor(n/2) représente le quotient entient de n/2. Pour comprendre , je te donne des exemples .  merci voici mon essai qui est refusé par algobox ? merci voici mon essai qui est refusé par algobox ?
 
- 
					
					
					
					mtschoon dernière édition par  
 tu as mis une parenthèse de trop ! Indique l'énoncé précis de ton exercice , si autre chose te gène. 
 
- 
					
					
					
					Kkuznik dernière édition par
 je vous remercie voici l'enoncé 
 Un est definiepar son 1er terme Uo et par le procede suivant-si n est pair, Un+1=1/2n 
 -si n est impair, Un+1= 3n+1ecrire un algoritme demandant la valeur du 1er terme puis les 10 termes de Un 
 
- 
					
					
					
					mtschoon dernière édition par  
 Es-tu sûr de ton énoncé ? C'est peut-être cela , mais si , pour UnU_nUn pair , il y avait eu "un+1=un2u_{n+1}=\frac{u_n}{2}un+1=2un" et pour UnU_nUn impair "un+1=3un+1u_{n+1}=3u_n+1un+1=3un+1" , ce serait l'agorithme classique de Cyracuse ? 
 
- 
					
					
					
					mtschoon dernière édition par  
 Pour le cas où c'est bien l'algorithme que je t'ai indiqué : 
 Premier terme U0U_0U0 appelé a et suite de Cyracuse , je t'indique un algorithme possible.
 Il fonctionne maisteste le ( je ne l'ai pas testé ) , et modifie le éventuellement si ce n'est pas la bonne suite.C'est seulement un exemple.  [/img] [/img]
 
- 
					
					
					
					Kkuznik dernière édition par
 merci bien encore une petite precision je ne trouve pas sur mon clavier comment faire la fleche horizontale qui est apres le "0" du 1er " afficher ? 
 
- 
					
					
					
					mtschoon dernière édition par  
 J'ai utilisé -> ( "moins" suivi de "supérieur" ) Tu n'es pas obligé de faire ainsi ! Tu peux rédiger avec plus de détails. C'est pour la lisibilité des réponses : A l'affichage , chaque indice est écrit en correspondance avec la valeur du terme de la suite. 
 
- 
					
					
					
					Kkuznik dernière édition par
 je ne comprends pas pourquoi il y a 3 variables , ( a ? ) 
 
- 
					
					
					
					mtschoon dernière édition par  
 a est la valeur du premier terme u0u_0u0 de la suite 
 u est un terme de la suite ( qui prend les valeurs u1u_1u1,u2u_2u2,...,u10u_{10}u10 )
 i est le "compteur " de tours ( de 1 à 10)
 
- 
					
					
					
					Kkuznik dernière édition par
 je vous remercie j' abandonne..... j'ai choisi "s "car j'aimais bien les math mais ces algoritmes me font perdre beaucoup de temps et je n'en vois pas l'interet .Ce n'est pas du raisonnement mais l'art de " couper les cheveux en 4 merci de votre aide 
 
- 
					
					
					
					mtschoon dernière édition par  
 Ce serait bien que , au moins , tu comprennes les algorithmes faits ( en les testant toi même avec un papier et un crayon pour comprendre le fonctionnement ) et petit à petit , tu t'habitueras. L'algorithmique est un exercice de logique très particulier qui amène à la programmation en informatique . 
 Dans les études de Maths en enseignement supérieur , il y a , entre autre , un peu de programmation . Alors , il ne faut pas les négliger en totalité .Bon courage ! 
 
- 
					
					
					
					Kkuznik dernière édition par
 merci je fais un dernier essai............... mais que signifie "0->" qui ne figure pas dans les variables ?  
 
- 
					
					
					
					mtschoon dernière édition par  
 Je croyais te l'avoir déjà indiqué... AFFICHER "0 -> " ainsi que AFFICHER "->" n'est que du TEXTE pour que les résultats obtenus soient facilement compréhensibles . Cela ne sert pas au fonctionnement du programme . Tu peux supprimer ces deux lignes d'affichage pour voir ce que cela donne. Le programme marche aussi bien mais on comprend moins bien les résultats. Tu peux(toujours entre guillemets "...") faire afficher tout le texte que tu veux pour améliorer la présentation des résultats. 
 
- 
					
					
					
					Kkuznik dernière édition par
 mtschoon 
 Je croyais te l'avoir déjà indiqué...AFFICHER "0 -> " ainsi que AFFICHER "->" n'est que du TEXTE pour que les résultats obtenus soient facilement compréhensibles . Cela ne sert pas au fonctionnement du programme . Tu peux supprimer ces deux lignes d'affichage pour voir ce que cela donne. Le programme marche aussi bien mais on comprend moins bien les résultats. Tu peux(toujours entre guillemets "...") faire afficher tout le texte que tu veux pour améliorer la présentation des résultats. je vous remercie j'ai lu sur internet que cet algo de syracuse se terminait toujours par 1 Celui que j'ai refait sur algobox avec a = 3 ne s'arrete plus !!  
 
- 
					
					
					
					mtschoon dernière édition par  
 L'algorithme que tu montres et qui s'arrête à la ligne 17 n'est pas terminé. Si ton algorithme est bien tapé , seules les 10 premières valeurs ( u1u_1u1...u10u_{10}u10 )sont calculées et affichées vu que i varie de 1 à 10 Ce que tu as lu était peut-être confus...l'algorithme de syracuse ne se termine pas par 1 ... 
 Si tu es curieux , je te propose un article ( mais on s'éloigne de ton exercice )
 
- 
					
					
					
					Kkuznik dernière édition par
 bonjour merci de me preciser si, quand Uo= 15 cet algoritme dont on demande les 50 premiers t  emes est correct ? emes est correct ?
 
- 
					
					
					
					mtschoon dernière édition par  
 Je vais répondre OUI et NON ! Ton programme fonction mais seulementpour le premier terme égal à 15. 
 Dans ce cas , il faut supprimer la variable a et la ligneLire aqui ne servent à rienSi tu veux un programme général qui soit utilisable dans tous les cas , il fautlaisser la variable a , laisser la ligne lire a et mettre u prend la valeur a 
 Ainsi , le programme attend que l'utilisateur donne la valeur du premier terme a ( 15 par exemple , ou toute autre valeur ) et s'exécute.
 
- 
					
					
					
					Kkuznik dernière édition par
 Avec un camarade nous avons comparé nos resultats qui sont differents le sien se termine par une serie de " 4 2 1 4 2 1 4 2 1................. dans la condition des nombres pairs il l'ecrit u%2==0 ou est la verité ? merci 
 
- 
					
					
					
					mtschoon dernière édition par  
 La condition u%2==0 pour "nombre pair" est bonne mathématiquement . Maintenant , il faut analyser ces algorithmes et de les tester pour voir ce que comprend Algobox. 
 
- 
					
					
					
					mtschoon dernière édition par  
 Je viens de tester l'algorithme "à la main" ( ce que je t'avais conseillé de faire ) La réaction d'Algobox est bizarre avec floor ( cette commande fonctionne bien sur ma calculette ; Algobox ne donne pas de massage d'erreur mais comprend mal ! ). Avec u%2==0 ( qui veut dire que "le reste de la division de n par 2 est nul" ) , Algobox comprend parfaitement bien et ne se trompe pas. Tu prends donc cette condition pour n pair , sans toucher à tout le reste du programme 
 
- 
					
					
					
					Kkuznik dernière édition par
 je vous remercie j'ai enfin terminé! je ne suis pas convaincu que l'informatique me fera gagner du temps !! 
 
- 
					
					
					
					mtschoon dernière édition par  
 Gagner du temps ! vraiment pas ... c'est sûr !! 
 Mais , c'est très satisfaisant quand ça fonctionne !Bon DM . 
 
- 
					
					
					
					Mmathtous dernière édition par
 Si je puis me permettre, kuznik, il ne s'agit pas d'informatique mais d'algorithmique. 
 De nombreux problèmes ne sont résolus qu'en utilisant des algorithmes.
 Ainsi, le plus célèbre (et le plus utile) est l'algorithme donnant le PGCD de deux entiers : il n'y a pas de "formule" pour le calculer.
 
- 
					
					
					
					mtschoon dernière édition par  
 Tout à fait Mathtous. kuznik pensait , je crois , à la programmation en informatique , qui est l'écriture de l'algorithme dans un langage informatique .