Section courante

A propos

Section administrative du site

Introduction

Lorsqu'on parle de «types scalaires», on parle d'un type de données contenant uniquement qu'une seule donnée élémentaire. On ne retrouve pas à ce niveau de données complexes comme des structures par exemple. Les types scalaires sont définis en deux groupes : les types discrets et les types réels.

Les types discrets

Les types discrets se définit, comme, avec un ensemble de valeurs possibles et énumérables ainsi qu'avec nombre précis. Ainsi, il n'y a pas de nombre infini, mais uniquement des nombres finis. Dans ce type de données, on parle d'abord de nombres, mais le concept comprend également des valeurs de toute sorte. La plupart des langages contiennent donc les types discrets suivants :

Dans certains langages de programmation, comme le Pascal, les types discrets ne peuvent pas s'échanger des valeurs entre eux et nécessite une fonction de conversion comme «ORD» par exemple, tandis que des langages de programmation comme le C, eux, sont un peu trop permissif et tolèrent les mélanges de toutes sortes. La raison pour laquelle certains langages préfèrent obliger l'utilisateur à utiliser une fonction réside dans le fait que le programmeur doit indiquer consciemment qu'il demande de faire une exception sur une règle précise et qu'il ne s'agit pas d'une erreur de distraction. À l'inverse, un langage de programmation comme le C se base sur le fait que le programmeur est très vigilant à ce qu'il fait et qu'il ne fait donc jamais d'erreur !

Un des langages de programmation les plus poussés au niveau des types discrets, demeure le langage de programmation Pascal.

Les types réels

Les types réels, bien qu'aujourd'hui banal, dans la plupart des langages de programmation, cause énormément de problème. La raison de cette complexité tient du fait qu'un nombre réel est, par définition, dénombrable et potentiellement infini. Toutefois, l'ordinateur, dans ses mécanismes de base est tout le contraire, soit, sans aucune abstraction, précise, rigide et avec des exactitudes. On arrive dans avec un nouveau concept, lequel est l'approximation !

Ainsi, les types réels, ayant des contraintes machines, sont assez différentes des propriétés que l'on connait dans la science de la mathématique. En résumé, en informatique, (X / Y) x Y n'est pas forcément égal à X à cause de toute sorte de facteurs comme l'arrondissement par exemple.

Très peu de langages de programmation permettent de choisir différentes représentations de nombre réel, parmi les plus flexibles ont retrouve le langage de programmation Ada et Delphi.

Conclusion

Si l'on compare les types discrets et les types réels, dans le premier cas, ils sont facilement représentables au niveau matériel d'un microprocesseur et ne demandent aucun traitement spécifique pour être représentés, tandis que les nombres réels ne sont pas spécifiques à un microprocesseur ou à un langage de programmation, ils sont étroitement reliés au compilateur ou à l'interpréteur de langage de programmation. Il est donc impossible de convertir directement une valeur réelle en binaire d'une machine à l'autre, contrairement aux types discrets.



Dernière mise à jour : Samedi, le 8 avril 2017