Correction et Optimisation d'un Algorithme de Saisie de Nombre

Correction de l'agorithme du nombre compris entre 10 et 20
Vidéo non disponible ! Réessayez plus tard
Cette vidéo fait partie de la formation
Apprendre l'algorithmique
Revoir le teaser Je m'abonne
4,2
Transcription

59,90€ Je commande

À partir de
27€ /mois
Je m'abonne à Elephorm

Description Programme Avis
4,2
59,90€ Je commande

À partir de
27€ /mois
Je m'abonne à Elephorm

L'objectif de cette vidéo est de démontrer comment corriger un algorithme de saisie de nombre et l'optimiser en remplaçant les valeurs fixes par des constantes pour améliorer la flexibilité et la maintenabilité du code.

Découvrez comment corriger et optimiser un algorithme de saisie de nombre, en remplaçant les valeurs fixes par des constantes pour une meilleure flexibilité.

Plongeons dans la correction d'un algorithme de saisie de nombre. Nous commencerons par une correction de base pour atteindre les résultats attendus. Ensuite, nous démontrerons comment optimiser notre solution. Dans cet exercice, l'utilisateur saisit un nombre qui est stocké dans une variable intitulée nombre. Pour commencer, nous déclarons cette variable en lui assignant un type entier, bien qu'un type réel soit aussi acceptable.

Le traitement implique de vérifier si le nombre se trouve dans une fourchette de valeurs. Si le nombre est compris entre 10 et 20, le résultat affichera 'dans la fourchette'. Sinon, il affichera 'en dehors de la fourchette'. Nous utiliserons des opérateurs logiques pour effectuer cette vérification.

Pour optimiser notre algorithme, nous proposons d'utiliser des constantes au lieu de valeurs fixes. Ainsi, les bornes de la fourchette peuvent être définies par des constantes C1 et C2, respectivement. Cela signifie que toute modification future des bornes ne nécessitera l'édition que des déclarations initiales des constantes, et non une modification de chaque instance dans l'algorithme. Cette approche contribue à une meilleure maintenance et évolutivité de notre code.

Voir plus
Questions réponses
Quelle est l'importance d'utiliser des constantes dans un algorithme?
Utiliser des constantes rend l'algorithme plus facile à maintenir et à modifier, car il suffit de changer la valeur des constantes définies au début au lieu de rechercher et modifier chaque instance de la valeur dans l'algorithme.
Comment tester si un nombre est dans une fourchette de valeurs?
Pour tester si un nombre est compris entre deux valeurs, on utilise des conditions avec les opérateurs logiques. Par exemple, 'si nombre ≥ C1 et nombre ≤ C2'.
Quels avantages présente la déclaration des variables au début de l'algorithme?
Déclarer les variables au début de l'algorithme améliore la clarté et l'organisation du code, et permet de centraliser les modifications futures.
Passons maintenant à la correction. Alors, je vais vous expliquer une première correction qui peut tout à fait satisfaire puisqu'on va arriver au résultat escompté. Ensuite, je vais vous montrer comment on peut optimiser un peu notre solution. Dans l'énoncé, on a un nombre qui est saisi par l'utilisateur. Cela signifie pour vous qu'après le titre, vous avez réservé une place pour déclarer votre variable. Dans notre exercice, la variable, je l'ai appelée nombre. N'oubliez pas, vous déclarez la variable, vous mettez son nom et ensuite le type de la valeur que va recevoir cette variable. Donc c'est un nombre, je vais le mettre de type entier. On aurait pu mettre type réel, c'est comme vous voulez. On ne l'a pas précisé dans l'énoncé, donc c'est comme vous voulez. Ensuite, on arrive donc au corps de l'algo. Vous avez écrit début, j'ai, moi, mis l'instruction affichée donner un nombre. Cela signifie qu'à l'écran, l'utilisateur va voir apparaître la phrase donner un nombre. Il va donc saisir un nombre. Comme moi, ma deuxième instruction, c'est saisir un nombre, saisir nombre, pardon. Je vais donc prendre la valeur saisie par l'utilisateur et je vais la stocker dans ma variable qui s'appelle nombre. Ensuite, le traitement, on se souvient bien de l'énoncé, il faut que je teste ce nombre pour voir. Soit il est supérieur ou égal à 10, inférieur ou égal à 20. Donc si c'est le cas, je vais pouvoir afficher dans la fourchette. Soit il n'est pas dans cette fourchette et je vais afficher en résultat en dehors de la fourchette. Il faut que je teste nombre. Je vais regarder nombre. Si nombre est supérieur ou égal à 10, j'ai mon opérateur logique et, nombre inférieur ou égal à 20. Je vais tester nombre. Je vais regarder s'il est supérieur ou égal à 10 et s'il est inférieur ou égal à 20. Donc regarder tout simplement s'il est compris dans cette fourchette. Si c'est le cas, l'ordinateur va aller exécuter l'instruction qui se trouve après le alors. Donc il va afficher à l'écran dans la fourchette. Si ce n'est pas le cas, ça veut dire que si l'un des deux tests est faux, la machine va aller après le sinon et afficher à l'écran en dehors de la fourchette. Donc là, c'est la première solution. Si vous avez fait ça, c'est bon. Moi, développeur, je me dis que je peux optimiser mon programme parce que si je mets en dur le 10 et le 20, le jour où j'ai envie de changer la fourchette, je me dis finalement que je vais faire le même programme mais je vais regarder si le nombre est compris entre 30 et 40 et non pas entre 10 et 20. Si je laisse comme ça cet algo, je vais être obligée d'aller lire l'algo, d'aller dans l'algo et de changer à la main le 10 et le 20. Là, je vais améliorer un petit peu ça. Je vais éviter de mettre des valeurs en dur dans mon programme. Je me dis après tout, le 10 et le 20, ce pourraient être des constantes. Dans la déclaration, je vais mettre constante C1, C2 qui sont deux types entiers et je vais mettre dans C1 la valeur qui m'intéresse, 10, dans C2 la valeur qui m'intéresse, 20. Donc ça, je le fais dans la partie déclaration. Ensuite, quand je vais dans l'algo, au lieu de mettre 10 et 20 dans mon test, je vais mettre, je vais réécrire le test pour que ce soit bien clair, si nombre est supérieur ou égal à C1 et nombre inférieur ou égal à C2, alors je fais ce traitement. Ça veut dire quoi ? Ça veut dire que le jour où je décide de changer la fourchette et de ne plus prendre ni 10 ni 20, je vais aller tout au départ de mon algo, donc dans la déclaration, et je vais tout simplement changer la valeur que j'ai affectée à chacune de ces constantes et je n'aurai pas à parcourir tout mon algo pour retrouver ces valeurs. Donc j'optimise comme ça mon programme et surtout, moi en tant que développeur, je prévois une évolution possible à mon programme. Quand vous faites un algo, comme on n'est pas en langage programmation, ce n'est pas facile de voir cette nuance-là, de se dire après tout, plus tard je serai susceptible d'utiliser l'algorithmique que j'ai fait, donc l'algo que j'ai fait, donc il me faut plutôt limiter les valeurs rendues dans l'algo, mais prenez cette habitude, vous verrez qu'après, quand vous passerez en langage de programmation, c'est très utile d'avoir, non pas à parcourir tous les programmes pour rechercher une valeur, mais à ne parcourir que la partie déclaration de variables et de constantes.

Programme détaillé de la formation

10 commentaires
4,2
10 votes
5
4
3
2
1
conrad.bernadel
Il y a 3 months
Commentaire
Très bonne formation les explications son simple et bienstructuré. Une bonne base y est présenté. Par contre la formstion fini sur une énoncée qui n'est pas présente dans la formation.
nathanrosier
Il y a 8 months
Commentaire
Pensez-vous que la partie tableau sera disponible ?
sophieblanchon
Il y a 10 months
Commentaire
En effet.. les tableaux ??
dany.levy
Il y a 1 year
Commentaire
Il manque la partie "tableaux"
agnes-colin
Il y a 2 years
Commentaire
Super bien expliqué pour des débutant en algorithmique.
J'enlève une étoile car il n'y pas d'exercices sur la boucle for, la structure de choix, et on attend toujours le cours sur les tableaux.
jamal_2
Il y a 2 years
Commentaire
Pourquoi la partie tableau n'est pas évoqué ?
tmassel
Il y a 2 years
Commentaire
Bonjour,
très bonne formation, qui finie en annonçant une suite qui aborde les tableaux... mais elle n'apparait pas !... merci de me dire si elle existe ou pas...
Bonne continuation...
thomasbucher.fr
Il y a 2 years
Commentaire
Bonjour, Merci pour cette formation, très bien expliquée pour un novice !

Auriez vous des liens supplémentaires, types cahiers d'exercices / corrigés intéressants, pour compléter la formation ?

Je me questionne sur l'exercice 9, d'après se que j'ai compris la réponse est de 40 (8*5) et non 45 ?

Merci
stephane.gourdin
Il y a 3 years
Commentaire
déjà développeur, cela reste une formation très intéressante. je retire une étoile car a deux reprises l'énoncé de l'exercice (que je ne citerais pas pour ne pas spoiler les futurs élèves) m'a emmené a écrire l'algorithme d'une façon différente de ce qui était attendu... j'attends malgré tout la suite avec impatience...
gabamano85
Il y a 3 years
Commentaire
Formation bien expliquer et facile à comprendre.