AR89 Inviato 2 Aprile 2011 Segnala Condividi Inviato 2 Aprile 2011 Ho fatto un programma sui numeri complessi: public class Complex { private double re, im; public Complex (double re, double im){ this.re=re; this.im=im; }//costruttore normale public Complex (Complex c){ this.re= c.re; this.im= c.im; }//costruttore di copia public double getRe(){return this.re;} public double getIm(){return this.im;} public double modulo(){ return Math.sqrt(re*re+im*im); }//modulo public Complex coniugato(){ double re=0; double im=0; re= this.re; im= -this.im; Complex con= new Complex (re, im); return con; }//coniugato public Complex add(Complex z){ double r=0; double i=0; r= this.re+z.re; i= this.im+z.im; return new Complex(r,i); }//add public Complex sub(Complex z){ double r=0; double i=0; r= this.re-z.re; i= this.im-z.im; return new Complex(r,i); }//sub public Complex mul(Complex z){ double r=0; double i=0; r= this.re*z.re+((this.im*z.im)*(-1)); i= this.re*z.im+this.im*z.re; return new Complex (r,i); }//mul public Complex div(Complex z){ double r=0; double i=0; Complex con= z.coniugato(); Complex num= this.mul(z); Complex den= z.mul(z); r=num.re/den.re; i= num.im/den.im; return new Complex (r,i); }//div public Complex mult (double s){ double r=0; double i=0; r= this.re*s; i= this.im*s; return new Complex (r,i); }//mult public String toString(){ return this.re+", j"+this.im; }//toString public boolean equals(Complex z){ if (this.re==z.re && this.im==z.im){ return true; } else return false; }//equals public static void main (String []args){ Complex z1= new Complex (-3,5); Complex z2= new Complex (4,-7); Complex mul= z1.mul(z2); System.out.println(mul); Complex quo= z1.div(z2); System.out.println(quo); double modulo= z1.modulo(); System.out.printf("%1.2f", modulo); Complex coni= z1.coniugato(); System.out.println("coniugato di z1"+coni); boolean f= z1.equals(z2); System.out.println(f); }//main }//Complex Il mio problema è qui System.out.printf("%1.2f", modulo); Eclipse nn riconosce questo metodo, visto che nn lo riconosce sono costretto a far uscire questo output: modulo=5.830951894845301 invece di questo modulo=5.83 (che è quello che otterrei col metodo printf). Qualcuno ha avuto problemi del genere? http://www.2shared.com/file/oiZtjX1r/TetrisMac.html Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80. Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Archiviato
Questa discussione è archiviata e chiusa a future risposte.