Algorithmie

Généralités

23 janvier 2012

Antoine


Un algorithme est une méthode logique de résolution d’un problème donné. C’est une suite logique d’actions à mettre en place pour aboutir à un résultat. On peut donc dire également que c’est un programme. On peut cependant apporter la nuance qui suit entre programme et algorithme : avec l’algorithmie on se concentre sur l’aspect logique, la rapidité d’obtention de la solution et la minimalisation de l’espace mémoire occupée. Un programme ne cherche pas forcément à mettre en place ces problématiques et cherche uniquement à apporter une solution au problème de départ.

On utilise généralement le pseudo-code pour écrire les algorithmes, ainsi on peut se concentrer sur l’écriture d’un algorithme sans se soucier d’une syntaxe particulière propre aux différents langages de programmation.

L’algorithmie procède de l’écriture. En effet, lorsqu’on écrit un programme on met en place une technique pour explicité un résultat. On écrit donc des phrases dans un langage de programmation qui met en place nos idées; la cohérence, la rigueur et la rapidité, à rendre compte d’un problème donné, déterminent la qualité de l’écriture de l’algorithmes. Il y a aussi la culture dans ce domaine qui aide à avoir des idées. Ci-dessous, l’algorithme d’Eratsotène pour déterminer tous les nombres premiers inférieur n. Bien sûr un algorithme dépend du temps qu’il lui faut pour déterminer tout ce qu’il doit écrire comme résultat, ceci est lié à des contraintes matériels.

function Crible_Eratostene(n){
	var tab_crible = new Array(), trouver = false ;
	for( var i = 2; i <= n; i++ ){
		var elem = i;
			//on rentre le premier élément 2
		if( elem == 2 ){
			tab_crible[0] = elem;
		}else{
			var max = tab_crible.length;
			/*on teste si elem n'est pas un multiple 
d'un nombre que l'on a déjà dans notre tableau*/
			for( var j = 0; j < max; j++){
				if( (elem % tab_crible[j]) == 0  ){
						trouver = true;
				}
			}
			if( !trouver ){
					/*si on ajoute un élément au tableau
 ça taille augmente de 1*/
					tab_crible[max] = elem;
			}
		}
		trouver = false;
	}
 
	return tab_crible;
}

Recherche

Catégories

Pour les étudiants

Covoiturage