Quelle est la différence entre le pseudocode et l'algorithme?

Quelle est la différence entre le pseudocode et l'algorithme?

En termes très simples, Pseudocode est un récit décrivant la logique de l'algorithme.

Le pseudocode n'est pas du code exécutable, donc pas obligatoire pour utiliser une syntaxe exacte; Cependant, il est utile de suivre une norme largement utilisée dans l'industrie, qui peut être facilement comprise par l'équipe Solutions.

Le langage de modélisation unifiée (UML) et d'autres méthodologies de modélisation des entreprises peuvent également être appelées exemples de pseudocode.  Bien qu'ils ne soient pas purement basés sur le texte, ces outils sont utilisés pour fournir une représentation visuelle d'une tâche ou d'un processus exécutable.

Il est de la meilleure pratique de documenter clairement le pseudocode structuré et complet pour aider à le traduire avec précision et c'est un élément essentiel dans la planification de la solution et de la logique de programmation.

Si le pseudocode n'existe pas pour un algorithme, le temps inutile est passé à réfléchir à la solution, ou à extraire une idée vague dans le stade de codage, généralement avec une échéance qui se profile.

Lors du dépannage d'un algorithme, le pseudocode offre la réflexion sur la façon dont elle a été assemblée et le développeur peut ou non être toujours là pour aider à le comprendre.

Regardez cet exemple de pseudocode de la Khan Academy[je]:

Il s'agit d'un pseudocode textuel écrit dans un outil de développement de logiciels.

Les traits précédents // indiquent que le texte est un commentaire (ou commenté en termes de développement) et ne fait donc pas partie du code exécutable.

Le texte en gras ci-dessous montre la syntaxe et les dimensions du développeur car elles l'interprètent à partir des exigences du pseudocode en code exécutable.

// Comment pouvons-nous mettre nos idées dans le code?

// dessine le visage, un ovale au centre
ellipse (largeur /2, hauteur/2, 200, 300));

// dessine les deux yeux, deux ovales, environ 2/3 sur le visage et 1/5 de la taille du visage
ellipse (largeur /2 - 40, hauteur/2 - 50, 40, 40));
ellipse (largeur /
2 + 40, hauteur/2 - 50, 40, 40));

Un autre exemple ci-dessous montre une approche plus technique et structurée pour écrire un pseudocode:

Si la note de l'étudiant est supérieure ou égale à 60

Imprimer «Bravo!"

autre

Imprimez "Désolé, vous avez échoué"

Lorsque vous faites référence à un pseudocode structuré, il existe des termes standard qui représentent la logique de l'algorithme, comme SÉQUENCE, ALORS QUE, If-then-else et des constructions supplémentaires qui sont également utiles RÉPÈTE JUSQU'À, CAS, et POUR.

Ces termes sont compris par les développeurs et utiles pour construire des exigences sans utiliser d'argot ou de termes personnels qui peuvent ne pas être compris par d'autres.

  • SÉQUENCE indique l'exécution de haut en bas des tâches séquentiellement.
  • ALORS QUE Une boucle répétitive est-elle exécutée jusqu'à ce qu'une condition, définie au début, soit remplie.
  • If-then-else est une décision prise entre deux conditions:
Exemple

Si les heures-aimes> Normalweek alors

Afficher le message de la feuille de temps des heures supplémentaires

AUTRE

Afficher le message normal de la feuille de temps

  • RÉPÈTE JUSQU'À Une boucle répétitive est-elle exécutée jusqu'à ce qu'une condition, définie à la fin, soit remplie.
Exemple

RÉPÉTER

séquence

Jusqu'à condition

  • CAS prévoit plusieurs décisions en fonction de la valeur d'une expression.
  • POUR est une boucle de comptage répétitive

Notez que pour chaque tâche ou processus, utilisez le FIN/ /FIN SI (où est utilisé) à la fin pour indiquer que c'est le point de terminaison ou le résultat de sortie.

Lorsque les constructions sont imbriquées les unes dans les autres, elles doivent être clairement en retrait de leurs constructions de parents, donc en d'autres termes, toutes les déclarations qui montrent une dépendance doivent être en retrait.

Avec des verbes, les mots «faire», utilisez des termes tels que le processus, l'ordinateur, la réinitialisation, l'incrément, l'ajout, la multiplication, l'imprimer, l'affichage, etc. et noter que l'indentation favorise le pseudocode souhaitable.

Regardons maintenant les algorithmes et comment ils sont différents de Pseudocode.

Premièrement, qu'est-ce qu'un algorithme?

«De manière informelle, un algorithme est une procédure de calcul bien définie qui prend
une certaine valeur, ou ensemble de valeurs, en entrée et produit une certaine valeur ou un ensemble de valeurs, comme
sortir. Un algorithme est donc une séquence d'étapes de calcul qui transforment le
entrée dans la sortie
." [ii]

Ainsi, en termes plus simples, un algorithme est une logique de code exécutable définie par une séquence d'étapes pour résoudre un problème ou terminer une tâche.

Contrairement à Pseudocode, la personne qui rédige l'algorithme a besoin de connaissances en programmation car elle est interprétée par l'ordinateur - pas un développeur - Pour exécuter des tâches, manipuler, crypter et extraire des données.

Les algorithmes indiquent fondamentalement à un programme informatique d'effectuer une tâche, telle que définie dans la logique du code.  Les erreurs dans toute syntaxe de programmation empêcheront une exécution réussie de ces tâches, c'est là que les connaissances en programmation sont nécessaires.

Lors de l'écriture de pseudocode au stade de la planification, n'oubliez pas que l'algorithme doit être efficace, axé et atteindre un résultat final; Tous les aspects de la solution doivent toujours être pris en compte.

Que fait l'algorithme?  Fondamentalement, il est exécuté par un déclencheur, ou un processus, ou un autre algorithme et accepte les données comme entrée.  Les données passent par les étapes des instructions et des manipulations pour produire la sortie.

Les données sont stockées en variables et chaque variable est nommée pour l'algorithme pour y attribuer les données pendant le processus d'exécution.

Les algorithmes sont également nommés car ils peuvent inclure des références et des appels à d'autres algorithmes.  Il peut y avoir de nombreuses complexités et détails techniques lors du développement d'algorithmes, quel que soit le logiciel de codage utilisé et doit donc être bien défini pour produire des résultats précis et souhaités.

Un autre aspect important à considérer avec la conception et la mise en œuvre d'un algorithme est la rapidité.  Cela est de plus en plus évident avec les utilisateurs finaux qui s'habituent à des logiciels plus rapides et des appareils plus rapides.

Par exemple, appliquer des filtres aux critères de recherche et attendre inhabituellement longtemps que les résultats s'affichent peut être une expérience insupportable.  Les développeurs étudieraient ensuite comment et quand les données sont reçues, les données peuvent-elles être filtrées dans un sous-processus, etc.

La rédaction de la logique de code qui ralentit tout processus a des répercussions négatives sur les utilisateurs, le développeur et l'entreprise.

En résumé, Pseudocode est un récit important pour planifier la logique du code et implémenter des solutions robustes.  Ces solutions sont implémentées à l'aide d'algorithmes bien structurés, rapides et efficaces qui produisent des résultats précis et souhaités.