Java1

xxdelxx -  
choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
ecrire un programme qui lit 3 paremetres:un nombre entier ,un caractere representant l'operateur (+,-,x ou /) et un second nombre entier,puis qui effectue le calcul ainsi indiqué et affiche le résultat.(eviter les divisions par 0).nota:ne pas utiliser le signe * comme parametre ,il a une signification particuliere :reference au fichiers d'un repertoire.
aider moi sur cet exercice
Configuration: Windows Vista Internet Explorer 7.0

14 réponses

  1. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    Salut

    rien de bien compliqué, je te conseille d'utiliser un "switch case" pour les opérateurs.

    Lance toi et si tu as un soucis, mets ton code et on pourra t'aider.

    0
  2. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    voici le "squelette" de ton programme

    public class Demo{
    
    private int nbr1, nbr2;
    private char operator;
    private int result;
    
    
    
    public static int calcul(char opr, int fisrtNbre, int secondNbre){
    
    	nbr1 = firstNbre;
    	nbr2 = secondNbre;
    	operator = opr;
    
    	switch (operator){
    
    		case '+':
    			result = nbr1+nbr2;
    			break;
    
    		case '-':
    			result = ......;
    			break;
    
    		case '/':
    			result = ....;
    			break;
    
    		case 'X':
    			result = ....;
    			break;
    
    		default:
    			result = 0;
    			break;
    	}
    
    	return result;
          }
    }


    https://www.commentcamarche.net/contents/552-java-les-structures-conditionelles
    0
  3. xxdelxx
     
    public class exo6 {

    public static void main(String[] args) {
    int nbre1 = 0,nbre2 = 0;
    System.out.println(" le 1er nbre vaut:"+nbre1);
    System.out.println(" le 1er nbre vaut:"+nbre2);
    switch ( );
    case:nbre1 + nbre2 ;break;
    case:nbre1 - nbre2 ;break;
    case:nbre1 x nbre2;break;
    case:nbre1 / nbre2;break

    jai commencé mais ca indique bcp d'erreur
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    Salut

    en effet ...

    essaye avec le squelette que je t'ai donné..
    0
  6. xxdelxx
     
    le console indique tjrs des erreurs au niveau des opérateurs(+,-,x ou /)
    0
  7. xxdelxx
     
    public class exo6 {
    private static int nbre1;
    private static int nbre2;
    private static char opérateur ;
    private static int result;

    public static main calcul (char opr,int PremierNbre,int SecondNbre){
    nbre1=PremierNbre;
    nbre2=SecondNbre;
    opr=opérateur;
    switch (opérateur){
    case'+':
    result=nbre1 + nbre2;
    break;
    case'-':
    result=nbre1 - nbre2;
    break;
    case'/':
    result= nbre1 / nbre2;
    break;
    case'*':
    result= nbre1 * nbre2 ;
    break;
    default:
    result=0;
    break;
    }
    return result;
    }

    }
    c'est ce j'ai fais mais ca ne marche tjrs pas !!!!!!!!!!
    0
  8. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    quelles sont les erreurs remontées ?
    donne nous ce que remonte le compilateur
    0
  9. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    essaye un peu en changeant le nom de ta variable. Evite les accents, "opérateur" devient "operateur".

    ensuite dans ta méthode

    public static main calcul (char opr,int PremierNbre,int SecondNbre){
    nbre1=PremierNbre;
    nbre2=SecondNbre;
    opr=operateur; ce n'est pas bon ....

    mais ceci est correct

    operateur = opr;

    0
  10. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    il me semble aussi que tu devais éviter "*", c'est dans ton énoncé...

    donc il faut le remplacer par 'x'
    0
  11. xxdelxx
     
    java.lang.NoSuchMethodError: main
    Exception in thread "main"

    c'est l'erreur que ca indique
    0
  12. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
     
    public static main calcul (char opr,int PremierNbre,int SecondNbre)

    ta fonction de départ de ton programme doit s'appeler "main", pas "main calcul"
    0
  13. choubaka Messages postés 5535 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    en fait le squelette aurait dû être ...

    public class Launcher{

    public static void main (String[] args){

    Demo.calcul( .. les arguments);
    }

    }

    public class Demo{
    
    private int nbr1, nbr2;
    private char operator;
    private int result;
    
    
    public static int calcul(char opr, int fisrtNbre, int secondNbre){
    
    	nbr1 = firstNbre;
    	nbr2 = secondNbre;
    	operator = opr;
    
    	switch (operator){
    
    		case '+':
    			result = nbr1+nbr2;
    			break;
    
    		case '-':
    			result = ......;
    			break;
    
    		case '/':
    			result = ....;
    			break;
    
    		case 'X':
    			result = ....;
    			break;
    
    		default:
    			result = 0;
    			break;
    	}
    
    	return result;
          }
    }


    Mais bon c'était pas la question
    0