TD - Algo Java Eclipse

publicité
ISN
LORGUES
TD
Durée :
2H
TD - Algo Java Eclipse
1. L’Algorithme de conversion d’un entier écrit en base 10 vers la base b.
1.1. Exemple d’utilisation :
A l’aide du tableau ci-dessous traduire n=45 en binaire (base b=2)
Entier n
Quotient division par b
Reste de la division par b
Justification
45
22
1
45 = 2 x 22 + 1
Conclusion : 53= ( ………………. )2
1.2. Algorithme utilisé lors de ces calculs :
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.
→ Données nécessaires au traitement (devront être déclarées dans le programme):
* ….
* ….
* ….
* ….
→ Traitement :
Saisir l’entier n (au clavier)
Saisir l’entier b
Tant que n strictement positif, faire :
Calculer q, le quotient de la division de n par b
Calculer r, le reste de la division de n par b
Afficher r
Remplacer n par q.
→ Sortie des résultats :
Affichage des restes au fur et à mesure
Traduction de cet algorithme en Java
1.5.
import java.util.Scanner;
public class changement_base {
/**
* @param args
*/
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;
}
}
}



Créez un nouveau projet sous « Eclipse »  voir le fichier « Utilisation Eclipse.pdf ».
Recopiez le code de la fonction « main ».
Exécutez le programme.
2. Un deuxième algorithme.
2.1. Algorithme
→ Préparation du traitement :
Demander trois nombres entiers a, b et c positifs avec c le plus grand des 3.
→ Traitement :
Calculer x =a² + b²
Si x est égal à c² alors :
conclusion= « 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
Traduction de cet algorithme en Java
2.3.
import java.util.Scanner;
public class triangle {
public static void main(String[] args) {
// TODO Auto-generated method stub
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.");
}
}
}



Créez un nouveau projet sous « Eclipse »  voir le fichier « Utilisation Eclipse.pdf ».
Recopiez le code de la fonction « main ».
Exécutez le programme.
3. Exercices:
AFFECTATION DES VARIABLES
En algorithmique, l’affectation se code ← et l’on dit « prend la valeur ». À l’issue des algorithmes suivants :
A←1
B←A+1
A←B+2
B←A+2
A←B+3
B←A+3
N←1
S←N
N←N+1
S←S+N
N←N+1
S←S+N
N←N+1
S←S+N
N←N+1
S←S+N
Quelles sont les valeurs contenues dans les variables Quelles sont les valeurs contenues dans les variables
A et B ?
N et S ?
A = ….....
B = …......
N = ….....
S = …......
4.
Exercices :
ALGORITHMMES
4.1) 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.
4.2) Rendre la monnaie
On désire écrire un algorithme aidant à rendre 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 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
Téléchargement