Aide pr ma premiere aplic java [Résolu/Fermé]

Signaler
Messages postés
21
Date d'inscription
mercredi 31 octobre 2007
Statut
Membre
Dernière intervention
23 mars 2010
-
 tof5962 -
Bonjour,
j'utilise le logiciel eclipse, je suis en formation a domicile.
Mon premier travail est une aplic banale : Calculer l'age d'une personne dont on aura demandé le prenom et l'année de naissance.
le faire au plus simple j'ai reussi, mais je complique les choses. dans mon projet et le meme package que cet exo j'ai cette classe :


package packlire;
import java.io.*;
public class Lire
{
public static String S() // Lire un String
{
String tmp = "";
char C='\0';
try {
while ((C=(char) System.in.read()) !='\n')
{
if (C != '\r') tmp = tmp+C;

}
}
catch (IOException e)
{
System.out.println("Erreur de frappe");
System.exit(0);
}
return tmp;
} // fin de S()

public static int i() // Lire un entier
{
int x=0;
try {
x=Integer.parseInt(S());
}
catch (NumberFormatException e) {
System.out.println("Format numérique incorrect");
System.exit(0);
}
return x ;
}

je voudrai utiliser cette classe pour saisir le prenom et la date de naissance de la personne. mais je ne sais pas comment l'ecrire. est que je dois utiliser Lire() ou S(), j'ai tourné tourné, et je fais appel a vous.
je vous donne mon aplic si vous avez du temp a me donner :

package packlire;
import java.io.IOException;
import java.util.Date;

public class exo1 {


public static void main(String[] args) {

int age=0; // declaration de variable age et mise a valeur 0
int annee = 2007;// declaration de variable annee initialisé a 2007
int naissance =0; // declaration de variable naissance et mise a valeur 0
String prenom=new String(); // declaration de la variable prenom

System.out.println("Bonjour, comment tu t'apelles?");
?????saisi du prenom, helpppp
System.out.println("et quel est ton année de naissance cher " +prenom);
?????saisi de naissance, helpppp
age=(annee-naissance);
System.out.println("Oh mais si tu es de " +naissance+",tu as deja "+age+" ans");

3 réponses


bonjour,

import java.io.*;

public class IntroClavier

{

public static String donnees()

{
String sdonnees = "";
try
{
// Definir un flux de caracteres d'entrée: fluxE
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader fluxE = new BufferedReader(isr);
// Intro. L'intro termine par <INTRO>
sdonnees = fluxE.readLine();
}

catch(IOException e)

{
System.err.println("Erreur: " + e.getMessage());
}
return sdonnees; // delivrer les données frappées

}


public static short donneesShort()

{
try
{
return Short.parseShort(donnees());
}

catch(NumberFormatException e)

{
return Short.MIN_VALUE; // valeur la plus petite
}
}


public static int donneesInt()

{
try
{
return Integer.parseInt(donnees());
}

catch(NumberFormatException e)

{
return Integer.MIN_VALUE; // valeur la plus petite
}
}


public static long donneesLong()

{
try
{
return Long.parseLong(donnees());
}

catch(NumberFormatException e)

{
return Long.MIN_VALUE; // valeur la plus petite
}
}


public static float donneesFloat()

{
try
{
return Float.parseFloat(donnees());
}

catch(NumberFormatException e)

{
return Float.NaN; // Non numérique ; valeur float.
}
}


public static double donneesDouble()

{
try
{
return Double.parseDouble(donnees());
}

catch(NumberFormatException e)

{
return Double.NaN; // Non numérique ; valeur double.
}
}
}

concernant le calcul de l'age:


import java.util.GregorianCalendar;
import java.util.Calendar;

.........................


// date de naissance
Calendar datedenaissance = new GregorianCalendar(1995,Calendar.JUNE,27);
// date du jour
Calendar aujourdhui = Calendar.getInstance();
// l'age en années
int age = aujourdhui.get(Calendar.YEAR) - datedenaissance.get(Calendar.YEAR);
datedenaissance.add(Calendar.YEAR,age);
if (aujourdhui.before(datedenaissance))
{
age--;
}
Bonjour,
je te remercie pour ton aide.