package
{
import flash.display.Sprite;

/**
* ...
* @author rg
*/
public class Main extends Sprite
{
private var tabNombres : Array = new Array(5,3,1,2,6,4);

public function Main():void
{
trace(tabNombres); //tableau non trié
tri_selection(tabNombres);
trace(tabNombres); //tableau non trié

}

private function tri_selection(tab : Array) : void
    {
        var longueur, maxi, i : int;
        longueur = tab.length;

        while(longueur>0) {
            //recherche de la position du plus grand élément dans le tableau non encore trié
            maxi=0;

            for (i = 1; i < longueur; i++)

                if(tab[i]>tab[maxi]) 
                    maxi = i;
                
             }

            //echange du plus grand élément avec le dernier
            //echanger(T,maxi,longueur-1)
var memo : int = tab[longueur -1];
tab[longueur - 1] = tab[maxi];
tab[maxi] = memo;

            //traitement du reste du tableau
            longueur = longueur - 1;

}
         }
}


}

 

Creer une page internet :

http://www.w3.org/Style/Examples/011/firstcss.fr.html

 

  • Initiation au positionnement CSS

http://openweb.eu.org/articles/initiation_float/

Les positionnements absolu, fixe et relatif

http://fr.openclassrooms.com/informatique/cours/apprenez-a-creer-votre-site-web-avec-html5-et-css3/les-positionnements-absolu-fixe-et-relatif

Rechercher un élément dans un tableau trié par une méthode dichotomique

Solution :

package
{
    import flash.display.Sprite;
    
    /**
     * ...
     * @author rg
     */
    public class Main extends Sprite
    {
        private var tableau : Array = new Array(0, 2, 5, 7, 12);
        
        
        public function Main():void
        {
            
            trace( recherche(tableau, 5 ) ); //resultat true
            trace( recherche(tableau, 9 ) ); //resultat false
            trace( recherche(tableau, 70 ) ); //resultat false
            
            
        }
        
        private function recherche(tab :Array, number:Number):Boolean
        {
            var i : int = 0;
            while (i< tab.length)
            {
                if (tab[i] == number)  
                {
                    return true;
                }
                else
                        if (tab[i]>number)  
                        {
                            return false;
                        }
                        else i = i + 1;
           }
           
           return false;
            
        }
        
    }
    
}

 

Correction Séquence 7:

package
{
import flash.display.Sprite;

/**
* ...
* @author rg
*/
public class Main extends Sprite
{


public function Main():void
{
trace( factorielle(50) ) ;
trace( randint(44) ) ;
trace( genererMotDePasse(10) );
trace( genererMotDePasse(6) );
trace( tirageCarte() );
trace( tirageCarte() );
trace( tirageNcarte(8) );
trace( tirageNcarte(25) );

}

private function tirageNcarte(number : int):Array
{
var listeCarte : Array = [ '2s', '2h', '2d', '2c', '3s', '3h', '3d', '3c', '4s', '4h', '4d', '4c', '5s', '5h', '5d', '5c', '6s', '6h', '6d', '6c', '7s', '7h', '7d', '7c', '8s', '8h', '8d', '8c', '9s', '9h', '9d', '9c', 'Ts', 'Th', 'Td', 'Tc', 'Js', 'Jh', 'Jd', 'Jc', 'Qs', 'Qh', 'Qd', 'Qc', 'Ks', 'Kh', 'Kd', 'Kc', 'As', 'Ah', 'Ad', 'Ac' ] ;
var tirage : Array = [number] ;

for (var i:int = 0; i < number ; i++)
{

tirage[i] = listeCarte[randint(listeCarte.length)] ;
listeCarte.splice( i , 1 );
}

return tirage;

}

private function tirageCarte() : String
{
var listeCarte : Array = [ '2s', '2h', '2d', '2c', '3s', '3h', '3d', '3c', '4s', '4h', '4d', '4c', '5s', '5h', '5d', '5c', '6s', '6h', '6d', '6c', '7s', '7h', '7d', '7c', '8s', '8h', '8d', '8c', '9s', '9h', '9d', '9c', 'Ts', 'Th', 'Td', 'Tc', 'Js', 'Jh', 'Jd', 'Jc', 'Qs', 'Qh', 'Qd', 'Qc', 'Ks', 'Kh', 'Kd', 'Kc', 'As', 'Ah', 'Ad', 'Ac' ] ;
return listeCarte[randint(listeCarte.length)];
}

private function genererMotDePasse(number:int):String
{
var chaine : String = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
var chaineMotDePasse : String = '';
for (var i:int = 0; i < number ; i++)
{
chaineMotDePasse += chaine.charAt(randint(chaine.length));
}
return chaineMotDePasse;

}

private function randint(entier : int):int
{
return Math.random() * entier;
}

private function factorielle(number:Number):Number
{
if (number == 1) return 1 ;
else return number * factorielle(number - 1 );
}

}

}


Logo Lycée Paul Sérusier

J'enseigne au
Lycée Paul SERUSIER
Avenue de Waldkappel
29270 CARHAIX PLOUGUER
Tél : 02 98 99 29 29
Site : www.lycee-serusier.fr

footer2

Richard GAUTHIER
Professeur de Physique Appliquée
Certification ISN
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

 

 


Mentions légales


Plan du site

  Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.