Initiation à l’algorithmique.  Découverte d’Eclipse et du langage Java
4 pages
Français

Initiation à l’algorithmique. Découverte d’Eclipse et du langage Java

-

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
4 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Exercices d'algorithmique

Informations

Publié par
Nombre de lectures 34
Licence : En savoir +
Paternité, pas d'utilisation commerciale, partage des conditions initiales à l'identique
Langue Français

Extrait

ISN- semaine 3 Initiation à l’algorithmique.
Découverte d’Eclipse et du langage Java
Activités d’approche
Compétencesattendues:
• Savoirlireunalgorithmesimpleutilisantlesmotscléssuivants:
«ß»;«tantque….faire:…»;«si…faire…sinon…»
• SavoirlireuncodeJavasimpleetsavoirletraduireenlangagenaturel,notammentlesmotscléssuivants:
«=»;while(…){…}»;«if(…){…}else{…}»
• Savoirconstruireuntableaudesvariablespermettantdesuivrel’évolutiondesvariablesaucoursd’un
algorithme
• SurlaplateformeEclipse:
àSavoircréerunnouveauprojetetunnouveauprogramme(appeléune«classe»)
àEtrefamiliariséaveclesiconesprincipales.

1. Découverte d’un algorithme de conversion d’un entier écrit en base 10 vers la base b.

1.1. Introduction :

A l’aide du tableau ci-dessous traduire n=53 en binaire (base b=2)

Entier n Quotient de la Reste de la division Justification
division par b=2 par b=2
53 26 1 53=2 x 26 + 1
26 … .. …






Conclusion : 53=2 x 26 + 1=2 x (2x13+0)+ 1= 2 x (2x (2x…+…)+0)+ 1
53=……………………………………………………………
53=
Ainsi : 53= ( ………………. ) 2

1.2. Rappel de la notion d’algorithme

Un algorithme est une suite finie séquentielle de règles que l’on applique à un
nombre fini de données, permettant de résoudre une classe de problèmes
semblables.


1.3.Traduction de notre algorithme en langage courant.

àVariables nécessaires au traitement (devront être déclarées dans le programme):

§ ….
§ ….
§ ….
§ ….

1 àTraitement (ou implémentation) :
§ Saisir l’entier n (au clavier)
§ Saisir l’entier b
§ Tant que n strictement positif, faire :
Calc uler q, le quotient de la division de n par b
Calc uler r, le reste de la division de n par b
Affic her r
Remplacer n par q.


àSortie des résultats (optionnelle)

§ Affichage des restes au fur et à mesure



1.4. Traduction de cet algorithme en Java

import java.util.Scanner;

public class changement_base {

public static void main(String[] args) {

Scanner saisie = new Scanner(System.in);
System.out.println("Veuillez saisir un nombre n :");
int n = saisie.nextInt();
System.out.println("Veuillez saisir une base b :");
int b = saisie.nextInt();
System.out.println("Résultat, à lire de bas en haut:");
int q,r;

while (n>0) {
q=n/b;
r=n%b;
System.out.println(r);
n=q;
}
}
}


2. Un deuxième algorithme.
2.1. Algorithme
àVariables
§ a, b et c : entiers positifs .

àTraitement :
§ Saisir les entiers a, b et c positifs avec c le plus grand des 3.
§ x ß a² + b²
§ Si (x =c²) alors :
Conc lusionß « Le triangle ayant pour côtés a, b et c est rectangle »
sinon :
Conclusionß « Le triangle ayant pour côtés a, b et c n’est pas rectangle »

àSortie des résultats :
§ Afficher la phrase Conclusion
2 2.2. Traduction de cet algorithme en Java
import java.util.Scanner;


public class triangle {

public static void main(String[] args) {


Scanner saisie = new Scanner(System.in);
System.out.println("Veuillez saisir un entier a :");
int a = saisie.nextInt();
System.out.println("Veuillez saisir un entier b :");
int b = saisie.nextInt();
System.out.println("Veuillez saisir un entier c :");
int c = saisie.nextInt();



if (a*a+b*b==c*c) {

System.out.println("le triangle est rectangle.");
}
else {
System.out.println("le triangle n'est pas rectangle.");
}


}

}


2. Un troisième algorithme à compléter


àRôle :
donne le tarif SNCF d’une personne prenant un train régional en fonction de son âge
en utilisant le barème suivant : 0€ de 0 à 10 ans – 10€ de 11 à 26 ans – 17€ sinon


àVariables
§ âge : entier positif




àTraitement :





àSortie des résultats :

3 ISN-semaine3 ALGORITHMIQUE–Fiched’exercicesn°1

1) Affectation
En algorithmique, l’affectation se code officiellement « ß» et l’on dit « prend la valeur »

1.1) Soit l’algorithme suivant :



A l’aide d’un tableau de variables, donner les valeurs contenues dans les variables A et B.
A←1

B←A+1
C←B+2
B←A+2
A←B+C
B←A+3
C←A+1
A l’aide d’un tableau des variables, donner les valeurs contenues dans les variables A, B et C.

1.2) Soit l’algorithme suivant :


Nß1
Sß3
NßN+S
Tant que (S<15) faire :
SßS+N
NßN+1
SßN+10
NßN+1
A l’aide d’un tableau des variables, donner les valeurs contenues dans les variables N et S .

2) Périmètre et aire d’un rectangle
Écrire un algorithme demandant à l’utilisateur la longueur et la largeur d’un rectangle, et affichant son périmètre et son aire.

3) Traduire le programme suivant en langage naturel, quel est son rôle ?

import java.util.Scanner;


public class programme {

public static void main(String[] args) {


double somme = 10000;
double taux=1.35;
int annee=2013;

while (somme<50000) {
annee=annee+1 ;
somme=somme + somme*taux/100 ;
}
system.out.println("Vous disposez de 50000 euros en "+annee) ;

}

}

4) Rendre la monnaie (à déposer en ligne avant le 30/09/2013)

On désire écrire un algorithme rendant la monnaie. On suppose qu’on dispose d’un nombre illimité de pièces de 1, 2, 5, 10,
20 et 50 centimes. Une somme S (en centimes) étant donnée, on veut la décomposer en le plus petit nombre possible de
pièces de monnaie.
Par exemple, si l’on doit rendre S=93 centimes, le programme devra afficher :
Pour rendre 93 centimes, il faut donner :
- 1 pièce de 50 centimes, - 2 pièces de 20 centimes, - 0 pièces de 10 centimes,
- 0 pièces de 5 centimes, - 1 pièces de 2 centimes, - 1 pièces de 1 centime
4

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents