Decomposition d un polynome

Contenu du snippet

un polynome entre sous forme de chaine comme parametre est decompose par le programme en monome. ce programme ne gere pas encore les erreurs.
pour le lancer la commande est java chaine+paramatre (>java chaine +120x5+30x3-26x1+5x0)

Source / Exemple :


import java.util.*;

class chaine{
  
     public static void main(String args[]){
          int nb=0;
          String mot;
          int number;
          int longueur;
          Vector index_signe=new Vector();
          Vector signe=new Vector();
          Vector index_degre=new Vector();
          Vector degre=new Vector();
          Vector coefficient=new Vector();
          longueur=args[0].length();

//recherche des + et - dans la chaine
          for(int i=0;i<longueur;i++){
               if(args[0].charAt ( i )=='+'||args[0].charAt ( i )=='-'){
                      mot=""+i;     // converti i en un string
                      index_signe.addElement(mot);
                      mot=""+args[0].charAt ( i );
                      signe.addElement(mot);
                      nb++;
                }
           }

//determination du degre du monome		
        int debut=0,fin=0;
        for(int i=0;i<nb+1;i++){
             if (i==0){
                  debut=0;
                  }
                  else {
                  mot=(String)index_signe.elementAt(i-1);
                  debut=Integer.parseInt(mot);
             }
             if (i==nb){
                  fin=longueur;
	  }
                  else{ 
                  mot=(String)index_signe.elementAt(i);
                  fin=Integer.parseInt(mot);
             }
             for(int j=debut;j<fin;j++){
                  if(args[0].charAt (j)=='x'){				         mot=""+j;     // converti i en un string
                         index_degre.addElement(mot);	
                         if (fin>j){	
                                 mot=args[0].substring(j+1,fin);
                                 degre.addElement(mot);		
                         }
                   }	
             }		
        }

//determination des coefficients
         int number1=0,number2=0;
         for(int i=0;i<nb;i++){
               mot=(String)index_signe.elementAt(i);
               number1=Integer.parseInt(mot)+1;
               System.out.println("number1="+number1);
               mot=(String)index_degre.elementAt(i);
               number2=Integer.parseInt(mot);
               System.out.println("number2="+number2);		
               mot=args[0].substring(number1,number2);
               System.out.println("mot="+mot);		
               coefficient.addElement(mot);		
          }	

//affichage final	
         for(int i=0;i<nb;i++){
            System.out.println("le monome "+i+" est "+signe.elementAt(i)+"coefficient "+coefficient.elementAt(i) +" degre "+degre.elementAt(i));
          }
      }
}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.