Java algo td2

De The Linux Craftsman
Aller à la navigation Aller à la recherche

Exercice 1

Déroulez sous la forme d’un tableau le programme suivant :

VAR
    a : entier
DEBUT
    a <- 1
    TantQue (a < 4) Faire
        Ecrire a
        a <- a + 1
    FinTantQue
FIN

Afficher la solution:

Exercice 2

Déroulez sous la forme d’un tableau le programme suivant :

VAR
    a, b : entiers
DEBUT
    a <- 1
    b <- 11
    Repeter
        b <- b - 4
        a <- a + 1
    TantQue (b >= 0)
    Ecrire a, b
FIN

Afficher la solution:

Exercice 3

Déroulez sous la forme d’un tableau le programme suivant :

VAR
    a, b, n : entiers
    DEBUT
    Lire n
    a <- 5
    b <- 2
    Pour b De 1 A n Faire
        a <- a * b
        b Suivant
    FinPour
    Ecrire a, b
FIN

Afficher la solution:

Exercice 4

Écrire un programme qui affiche des étoiles selon divers modes:

  • n étoiles sur la même ligne;
  • n étoiles en allant à la ligne à chaque fois

Afficher la solution:

package fr.esicad.algo;

import java.util.Scanner;

public class Td2 {

	static Scanner in = null;

	public static String getFromConsole() {
		if (in == null) {
			in = new Scanner(System.in);
		}
		String s = in.next();
		return s;
	}

	public static void exo4() {
		System.out.print("Combien d'étoile voulez-vous : ");
		String s = getFromConsole();
		int etoile = Integer.parseInt(s);
		String choix = "";
		while (!choix.equals("Y") && !choix.equals("n")) {
			System.out.print("En ligne (Y/n) : ");
			choix = getFromConsole();
		}
		for (int i = 0; i < etoile; i++) {
			if(choix.equals("n")){
				System.out.println("*");
			}else{
				System.out.print("*");				
			}
		}
	}

	public static void main(String[] args) {
		exo4();
	}

}

Exercice 5

On souhaite réaliser un programme qui permet de saisir un nombre positif. Une vérification sera effectuée afin de refuser les nombres négatifs:

Saisissez un nombre positif : -5
Saisissez un nombre positif : -3
Saisissez un nombre positif : 2
Le nombre saisi est 2.

Afficher la solution:

package fr.esicad.algo;

import java.util.Scanner;

public class Td2 {

	static Scanner in = null;

	public static String getFromConsole() {
		if (in == null) {
			in = new Scanner(System.in);
		}
		String s = in.next();
		return s;
	}

	public static void exo5() {
		String s = "";
		int nombre = 0;
		while (nombre <= 0) {
			System.out.print("Saisisez un nombre positif : ");
			s = getFromConsole();
			nombre  = Integer.parseInt(s);
		}
		System.out.println("Le nombre saisie est : "+nombre);
	}

	public static void main(String[] args) {
		exo5();
	}

}

Exercice 6

On souhaite améliorer le programme précédent afin que le message ne soit pas le même lors de la demande suite à une erreur de saisie:

Saisissez un nombre positif : -5
Saisie incorrecte, recommencez votre saisie : -3
Saisie incorrecte, recommencez votre saisie : 2
Le nombre saisi est 2.

Afficher la solution:

package fr.esicad.algo;

import java.util.Scanner;

public class Td2 {

	static Scanner in = null;

	public static String getFromConsole() {
		if (in == null) {
			in = new Scanner(System.in);
		}
		String s = in.next();
		return s;
	}

	public static void exo6() {
		String s = "";
		int nombre = 0;
		System.out.print("Saisisez un nombre positif : ");
		s = getFromConsole();
		nombre = Integer.parseInt(s);
		while (nombre <= 0) {
			System.out.print("Saisie incorrecte, recommencez votre saisie : ");
			s = getFromConsole();
			nombre = Integer.parseInt(s);
		}
		System.out.println("Le nombre saisie est : " + nombre);
	}

	public static void main(String[] args) {
		exo6();
	}

}

Exercice 7

On souhaite réaliser un programme qui demande un nombre compris entre 10 et 20, jusqu’à ce que la réponse convienne.

En cas de réponse supérieure à 20, on fera apparaître un message : « Plus petit ! », et inversement, « Plus grand ! » si le nombre est inférieur à 10.

Afficher la solution:

Exercice 8

Écrire un programme qui demande un nombre de départ, et qui calcule la somme des entiers jusqu’à ce nombre.

Par exemple, si l’on entre 5, le programme doit calculer : 1 + 2 + 3 + 4 + 5 et afficher 15.

Afficher la solution:

Exercice 9

Écrire un programme qui demande successivement 5 nombres à l’utilisateur, et qui indique lequel de ces nombres est le plus grand.

Afficher la solution:

Exercice 10

Modifiez ensuite le programme pour qu’il affiche aussi la position de ce nombre dans la séquence de nombres saisis.

Afficher la solution:

Exercice 11

Réécrire le programme précédent en prenant en compte cette fois-ci que le nombre de nombres saisis n’est pas connu par avance.

L’utilisateur arrête la saisie en entrant la valeur zéro.

Afficher la solution: