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 :

Exercice avec menu, calcul de max, min, addition et produit de tableaux


Sujet :

avec Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2015
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Exercice avec menu, calcul de max, min, addition et produit de tableaux
    Bonjour,

    J'ai un exercice en Java à faire.

    J'ai déjà commencé mais je n'ose pas montrer mon code tellement ça ne me semble pas montrable.
    Ecrire une méthode qui génère le menu suivant :
    - 1. Saisir les données
    - 2. Max
    - 3. Min
    - 4. Moyenne
    - 5. Addition tableau
    - 6. Produit tableau
    - 7. Quitter

    L’utilisateur doit saisir un nombre pour choisir quel action va être exécuté

    Les actions Max, Min, Moyen, addition tableau et produit tableau sont invisible au début de l’exécution.

    Les données sont les suivant 4 tableaux de n éléments (c’est à l’utilisateur de définir la taille des tableaux)

    L’utilisateur saisi les deux premiers tableaux et les deux autres vont être calculé.

    Après la saisie des deux tableaux les actions Max, Min, Moyen, addition tableau et produit tableau seront visible à l’utilisateur.

    L’action max :
    permet de chercher la valeur max entre les deux tableaux déjà rempli et l’indice de cette dernière
    L’action min : permet de chercher la valeur min entre les deux tableaux déjà rempli et l’indice de cette dernière
    L’action moyenne : permet de calculer la moyenne de chaque tableau
    L’action addition tableau : permet d’additionner le 1er tableau et le 2ème tableau pour constituer le 3 ème tableau et l’afficher à la fin.
    L’action produit tableau : permet de faire le produit du 1er tableau et de 2ème tableau pour constituer le 4ème tableau et l’afficher à la fin
    L’action Quitter : permet de quitter le programme

    PS : Chaque action est une méthode
    Pas de problème pour l'action Min, Max et Moyenne, j'ai déjà créé des méthodes pour ça.

    Quelqu'un saurait-il me guider un peu ?

    Merci d'avance pour votre aide.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 559
    Points : 21 621
    Points
    21 621
    Par défaut
    Bonjour,
    Citation Envoyé par M4DH4X Voir le message
    J'ai déja commencé mais je n'ose pas montrer mon code tellement cela ne me semble pas montrable.
    Il va pourtant bien falloir.
    Il te faut nous expliquer concrètement, où ça va très bien, et où ça devient confus et quelque chose te gêne...

  3. #3
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2015
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Bon ok voila mon code :
    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
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    package exam1;
    import java.util.Scanner;
     
    public class exam1 {
     
    public static void main(String[] args) {
     
    int tailleT = 0;
    int taille = 2;
    int []T1 = new int [tailleT];
    String []tab1 = new String [taille];
    menu1(tab1,taille);
    }
     
    public static void menu1(String[] tab, int taille ){
     
    String []tab1 = {"Saisir les données","Quitter"};
    String []tab2 = {"Saisir les données","Max","Min","Moyenne","Addition tableau","Produit tableau","Quitter"};
     
    for(int i = 0;i<taille; ++i){
     
    System.out.println((i+1)+"."+tab1[i]);
    }
     
    int choix = -1;
    int tailleT = 0;
    int T1 [] = new int [tailleT];
    int T2 [] = new int [tailleT];
    int T3 [] = new int [tailleT];
    int T4 [] = new int [tailleT];
     
    System.out.println("Entrez votre choix");
    choix= lireInt();
     
    if (choix == 1){
    System.out.println("Entrez la taille des tableaux");
     
    tailleT = lireInt();
     
    System.out.println ("Tableau 1 :" );
     
     
    for (int i = 0 ; i < tailleT ; i ++ ) {
    System.out.println ("Veuillez saisir un nombre :" );
    T1[i] = lireInt();
    }
     
    System.out.println ("Tableau 2 :" );
    for (int j = 0 ; j < tailleT ; j ++ ) {
    System.out.println ("Veuillez saisir un nombre :" );
    T2[j] = lireInt();
    }
    }
    else
    System.out.println ("Au revoir" );
     
    }
     
    public static Integer lireInt(){
    try {
     
    Scanner in = new Scanner(System.in);
    return in.nextInt();
     
    }
    catch (Exception e){
     
    return null;
    }
    }
    }
    Il ne fonctionne même pas, ça me met "Exception in thread" quand je rentre la 1ere donnée du tableau 1.

    Ce que je comprends mal, c'est par rapport aux méthodes. Il y en a bien 5 en tout non ?

    edit: je ne sais pas pourquoi j'ai fais un tableau pour la liste, j'aurais pu juste l'afficher avec println, faire une condition pour l'affichage des options et un switch pour le choix...

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par M4DH4X Voir le message
    Bon ok voila mon code :
    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
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    package exam1;
    import java.util.Scanner;
     
    public class exam1 {
     
        public static void main(String[] args) {
     
            int tailleT = 0;
            int taille = 2;
            int  []T1 = new int [tailleT];
            String  []tab1 = new String [taille];
            menu1(tab1,taille);
        }
     
        public static void menu1(String[] tab, int taille ){
     
             String []tab1 = {"Saisir les données","Quitter"};
             String []tab2 = {"Saisir les données","Max","Min","Moyenne","Addition tableau","Produit tableau","Quitter"};
     
             for(int i = 0;i<taille; ++i){
     
                    System.out.println((i+1)+"."+tab1[i]);
            }
     
            int choix = -1;
            int tailleT = 0;
            int  T1 [] = new int [tailleT];
            int  T2 [] = new int [tailleT];
            int  T3 [] = new int [tailleT];
            int  T4 [] = new int [tailleT];
     
            System.out.println("Entrez votre choix");
            choix= lireInt();
     
            if (choix == 1){
                System.out.println("Entrez la taille des tableaux");
     
                tailleT = lireInt();
     
                System.out.println ("Tableau 1 :" );
     
     
                for (int i =  0 ; i < tailleT ; i ++ ) {
                    System.out.println ("Veuillez saisir un nombre :" );
                    T1[i] = lireInt();
                }
     
                System.out.println ("Tableau 2 :" );
                for (int j = 0 ; j < tailleT ; j ++ ) {
                    System.out.println ("Veuillez saisir un nombre :" );
                    T2[j] = lireInt();
                }
            }
            else 
                System.out.println ("Au revoir" );
     
        }
     
        public static Integer lireInt(){
            try {
     
                Scanner in = new Scanner(System.in);
                return in.nextInt();
     
            }
            catch (Exception e){  
     
                return null;
            }
        }
    }
    Il ne fonctionne même pas, ça me met "Exception in thread" quand je rentre la 1ere donnée du tableau 1.
    ligne 27, le Tableau T1 a une taille 0.(!)
    ligne 45, si tailleT > 0, tu essayes d'accéder à un indice hors limite du tableau (ArrayIndexOutOfBoundsException)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
                for (int i =  0 ; i < T1.length ; i ++ ) {
                    System.out.println ("Veuillez saisir un nombre :" );
                    T1[i] = lireInt();
                }

  5. #5
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2015
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par plawyx Voir le message
    ligne 27, le Tableau T1 a une taille 0.(!)
    ligne 45, si tailleT > 0, tu essayes d'accéder à un indice hors limite du tableau (ArrayIndexOutOfBoundsException)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
                for (int i =  0 ; i < T1.length ; i ++ ) {
                    System.out.println ("Veuillez saisir un nombre :" );
                    T1[i] = lireInt();
                }
    Merci pour ta réponse
    Mais la variable tailleT je lui fait recevoir la valeur saisie par l'utilisateur donc ça devrais écraser zéro normalement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	System.out.println("Entrez la taille des tableaux");
    			tailleT = lireInt();
    Si j'utilise T1.length comment faire pour que ce soit l'utilisateur qui puisse définir la taille du tableau ?

    Merci

  6. #6
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Citation Envoyé par M4DH4X Voir le message
    Mais la variable tailleT je lui fait recevoir la valeur saisie par l'utilisateur donc ça devrais écraser zéro normalement
    Oui, mais ça n'agit pas (rétroactivement) sur les création des tableaux, qui sont faites avant la saisie.
    Citation Envoyé par M4DH4X Voir le message
    Si j'utilise T1.length comment faire pour que ce soit l'utilisateur qui puisse définir la taille du tableau ?
    Crée les tableaux après avoir saisi tailleT.

  7. #7
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2015
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par joel.drigo Voir le message
    Salut,


    Oui, mais ça n'agit pas (rétroactivement) sur les création des tableaux, qui sont faites avant la saisie.

    Crée les tableaux après avoir saisi tailleT.
    Ok j'ai régler le problème merci .

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

Discussions similaires

  1. [Débutant] calculer l'axe min et l'axe max d'une région
    Par miss_angel dans le forum Images
    Réponses: 2
    Dernier message: 06/07/2009, 21h54
  2. calcul des max et min d'un plot
    Par zepek dans le forum Images
    Réponses: 2
    Dernier message: 19/03/2009, 12h10
  3. calcul entre max et min d un tableau
    Par adelsunwind dans le forum VBA Access
    Réponses: 3
    Dernier message: 07/07/2008, 08h29
  4. calcul entre max et min d un tableau
    Par sunwind dans le forum VBA Access
    Réponses: 0
    Dernier message: 07/07/2008, 01h59
  5. Enregistrements concourants (avec calcul de MAX)
    Par Mandotnet dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/11/2007, 08h49

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