Besoin d'aide pour écrire un prg java

Fermé
ninie_pimpim Messages postés 17 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 30 avril 2011 - 25 nov. 2008 à 10:00
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 - 26 nov. 2008 à 10:31
Bonjour,

je dois écrire un programme en java mais je suis carrément perdue.

Le programme doit calculer le pourcentage de nombres négatifs parmi une série de nombres.
Le programme commence par demander à l’utilisateur combien il veut entrer de nombres, puis il lit chacun de ces nombres au clavier.

les nb entrés pas l'utilisateurs sont de type int et mon pourcentage de type double
Zéro est considéré comme positif.
je ne traite pas les erreur de saisie


je du mal à saisir comment comment le prog va lire mes variables soit qu'elles soit toutes initialisés, puisque il y aura autant de variables que ne nb entré par l'utilisateurs.

Merci de votre aide

3 réponses

tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
25 nov. 2008 à 10:15
Salut,

Vous devez créer un tavleaux, donc certainement il y aura une limite pour les nombres à lire, par exmeple 100.
Java ne lit que des chaines decracatères, donc vous devez les transformer en "int".

Vous ne manipuler pas vraiment d'objets, je pense que l'utilisation de Java est comme l'utilisation d'un canon pour tuer une mouche :).

import java.io.*;


public class ClaculPour100ageNegatives
{
         public static void main(String args[]) 
         {
                int tableau[100];
                InputStream entree = new InputStream(System.in);

                int nombreElements = Integer.parseInt(entree.readLine());
                int nombresNegatifs = 0;

                for(int i = 0; i < nombreElements; i++)
                {
                      tableau[i] = Integer.parseInt(entree.readLine());

                      if (tableau[i] < 0)
                      {
                            nombresNegatifs++;
                      }
                }

                double pourcentage = nombresNegatifs / nombreElements; 

                
         }
}



il y a des betises, j'ai pas testé mais ça ne doit pas être loin de ça :)
0
Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 326
25 nov. 2008 à 10:33
Bonjour,
En utilisant une LinkedList à la place d'un tableau, tu n'auras plus de limitation de taille.
Pour lire le clavier, tu peux utiliser la classe Scanner, qui peut automatiquement mapper l'entrée lue dans un Integer.
Ainsi l'utilisation de java ne sera plus un "canon pour tuer des mouches", vu qu'on n'utilisera plus que des classes et non plus des types primitifs et tableaux.

Cordialement,
0
ninie_pimpim Messages postés 17 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 30 avril 2011
25 nov. 2008 à 10:30
merci pour votre réponse;

est il possible d'écrire ce programme sans passé par un tableau (cad avec des if, et des boucles for et while) ?
parce que les tableaux je maitrise pas du tout.
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
26 nov. 2008 à 10:31
Si vous ne voulez pas garder les nombres lus: Oui c'est possible, il sera de la forme:

import java.io.*;


public class ClaculPour100ageNegatives
{
         public static void main(String args[]) 
         {
               
                InputStream entree = new InputStream(System.in);

                int nombreElements = Integer.parseInt(entree.readLine());
                int nombresNegatifs = 0;

                int tempon;

                for(int i = 0; i < nombreElements; i++)
                {
                      tempon = Integer.parseInt(entree.readLine());

                      if (tempon < 0)
                      {
                            nombresNegatifs++;
                      }
                }

                double pourcentage = nombresNegatifs / nombreElements; 

                
         }
}



J'ai entendu parlé de la classe Scanner qui est disponible de la version 1.5, mais malheureusement, j'ai appris Java sous la version 1.4, donc je ne sais pas grande chose à propos, mais je pense qu'elle est plus performante.


Bon Courage.
0