IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Lire un nombre généré aléatoirement


Sujet :

avec Java

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 217
    Points : 218
    Points
    218
    Par défaut Lire un nombre généré aléatoirement
    Bonjour à tous, j'étudie différentes fonction du package math et on me donne un exercice d'entrainement qui consiste, en la création de neuf nombres aléatoires différents de zéro, pour éviter des valeurs trop hautes j'ai mis une limite de 1 à 100. Jusque la tout va bien, par contre quand j'arrive à la partie ou on me demande de calculer la surface des cercles de 1 à 9, auxquels correspondent les rayons qui ne sont autres que les nombres généré précédemment. Le problème c'est que je sais comment lire une entrée clavier mais je ne sais pas comment lire les différents nombre généré sans séparément.

    Voici mon code:

    Ps: la consigne disait qu'il fallait demander à l'utilisateur d'entrer un nombre de 9 à 18 inclus avant de pouvoir continuer, c'est pour cela qu'il y a une partie du code avec des conditions.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    import java.math.*;
    import java.util.Scanner;
    public class Information{
     
    	static Scanner test = new Scanner(System.in);
     
    	public static void main(String[] args) {
     
        String nombre1 = null;
    	int condition_nombre = 0; // initalisation variable
     
    	while (condition_nombre == 0) { // tant que la condition n'est pas egale à 1
     
    		System.out.print(" Entrez un nombre  inferieur ou égal à 18 et supérieur à 9:");
     
    		nombre1 = test.nextLine();// extraction du contenu de la dernière ligne tapée par l'utilisateur
     
    		if (Integer.parseInt(nombre1) > 18) { 
     
    			System.out.println("Entrez un nombre  inferieur ou égal à 18 et supérieur à 9:");
     
    			condition_nombre = 0; // variable à zero tant que la condition n'est pas remplie
     
    		}
     
    		else if (Integer.parseInt(nombre1) < 9)
     
    		{ 
     
    			System.out.println("Entrez un nombre  inferieur ou égal à 18 et supérieur à 9:");
     
    			condition_nombre = 0; // variable à zero tant que la condition n'est pas remplie
    		}     
     
    		else {
     
    			condition_nombre = 1;
     
    		} // quand la condition est remplie passage à 1 et sortie de la boucle
     
    	}
    	  int Untirage;
    	for (int i = 0; i < 9; i++) {
            Untirage = randomInt(1, 100);
            System.out.print(Untirage + " ");
        }
    }
    	 public static int randomInt(int petit, int grand) {
    	        int resultat = ((int) (Math.random() * (grand - petit + 1)) + petit);
    	        return resultat;
    	    }
     
    	}

  2. #2
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Je n'ai pas compris ta question:

    Est-ce que tu veux qu'on t'explique comment calculer la taille d'un cercle à partir de son rayon ?
    Est-ce que tu veux qu'on t'explique comment faire une fonction qui calcule la taille des cercles ayant pour rayon X à Y ?

    Dans tout les cas, il faudrait que tu nous explique un peu plus sur ce qui pose problème.

    je ne sais pas comment lire les différents nombre généré sans séparément.
    Peux-tu nous refaire cette phrase en plus clair ?

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 217
    Points : 218
    Points
    218
    Par défaut
    Bien sur,pardon, en fait ce que je voulais savoir c'est comment faire lire au programme les 9 nombres généré, ce qui me permet après d'appliquer la formule pi*r*r.

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Soit, tu le fait dans ta boucle for et tu utilise pas variable UntirageSoit, tu le fait en dehors de ta boucle et là il va falloir que tu crée un tableau de valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int[] valeurTiree = new int[9];
    for (int i = 0; i < 9; i++) {
            valeurTiree[i]= randomInt(1, 100);
            System.out.print(valeurTiree[i]);
    }

    Note: La convention de nommage pour les variable est le lowCamelCase !
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 217
    Points : 218
    Points
    218
    Par défaut
    C'est peut être mieux que je le fasse à l’extérieur de la boucle, par contre je comprend pas trop dans le code que tu as mit ce que tu as modifié.

  6. #6
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Si tu ne le comprends pas je te conseil d'aller lire les tutoriels du site sur les bases du langage Java.

    http://baptiste-wicht.developpez.com.../java/debuter/
    http://mbaron.developpez.com/javase/java/

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 217
    Points : 218
    Points
    218
    Par défaut
    Je me suis mal exprimé ce que je comprenais pas c'est en quoi il me permettrait par la suite d’extraire les valeurs.
    Merci pour le liens, je vais aller voir.

  8. #8
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    C'est bien ce que je dis, tu devrais aller lire les tutoriels de base sur le Java.

    Car valeurTiree = new int[9]; est un tableau de 9 valeur entiers. Celle-ci est facilement parcourable par une boucle for. Donc si tu as besoin ces valeurs à un autre endroit dans ton programme tu n'as qu'à transmettre le tableau qui lui contient l'ensemble des valeurs que tu as crée.

    Sachant que la manipulation des tableaux et les boucles for se trouve dans la partie La syntaxe et les éléments de bases de Java de tout manuel qui se respecte !

    Donc je réitère ma réponse, va lire les tutoriels sur les bases du langage.. Tu gagnera du temps...
    Si tu ne comprends pas ce qu'explique le tutoriel revient avec la question lié au manuel. J'y répondrai, mais le tutoriel couvre l'ensemble de ta problématique :
    3.8.1. La déclaration des tableaux
    3.8.3. Le parcours d'un tableau
    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  9. #9
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 217
    Points : 218
    Points
    218
    Par défaut
    Ok d'accord merci je vais aller voir histoire de ne pas bloquer sur petit truc simple.

  10. #10
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 93
    Points : 127
    Points
    127
    Par défaut
    Premièrement tu devrais poser le problème en forme de grande ligne et après quand tu ne sais pas maitriser une ligne tu recherches sur Google.


    Si j'ai bien compris :

    1. Demande d'une saisie
    2. Tant que cette saisie est > 18 et < 9
    3. >>>>>Resaisie
    4. De 1 au NombreSaisi
    5. >>>>>Stocke des nombre générés aléatoirement
    6. Pour Chaque nombre stocké
    7. >>>>>Affiche le nombre et le resultat de sa formule


    1) Tu sais faire
    2) While (tu sais faire)
    3) Tu sais faire
    4) For (tu sais faire)
    5) Tu ne sais pas faire, conseil utiliser des listes ou tableaux
    6) Tu ne sais pas faire, conseil utiliser for spécifique à une liste (c'est mieux c'est plus parlant) [for each] ou simple for comme dans le cour suffit amplement
    7) Tu sais faire


    Après quand on débute faut chercher le fonctionnel, une fois que ça fonctionne on cherche l'optimisation et la bonne pratique bien que j'en doute que ça soit du ressort de ta formation actuelle.

  11. #11
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 217
    Points : 218
    Points
    218
    Par défaut
    Merci beaucoup pour vos conseils que j'ai suivis, d’ailleurs je viens de faire ce que tu as dit Kangourex, en effet les tableaux ça aide surtout quand on génère différents nombre et que l'on cherche à en extraire quelques uns seulement. Bon il me reste pas mal de truc à voir, mais deja je comprend mieux certaine choses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 15/10/2009, 21h18
  2. générateur de nombres pseudo-aléatoire
    Par salseropom dans le forum C
    Réponses: 3
    Dernier message: 22/08/2006, 13h21
  3. total des nombres générés dans un fichier.xls?
    Par loukoulouk dans le forum Modules
    Réponses: 4
    Dernier message: 22/06/2006, 11h22
  4. Générateur de nombres pseudo-aléatoires
    Par gege2061 dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 25/08/2005, 13h38
  5. [Nombres pseudo-aléatoires]Génération de bits
    Par kaisse dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 25/02/2004, 20h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo