Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
pub:labprog:20171030 [2017/10/30 15:39]
atrent
pub:labprog:20171030 [2017/10/30 17:07] (current)
atrent
Line 47: Line 47:
 // D: Ma String arg[] è facoltativo?​ Cosa significa? differenza tra arg e args? sono intercambiabili... // D: Ma String arg[] è facoltativo?​ Cosa significa? differenza tra arg e args? sono intercambiabili...
 // R: no, è obbligatorio. arg è una variabile // R: no, è obbligatorio. arg è una variabile
 +}
 +
 +</​code>​
 +
 +
 +
 +<code java>
 +/*
 +- chiedere all'​utente quale funzione va plottata (sin, cos, tan....)
 +- chiedere all'​utente i limiti per x (min, max)
 +- chiedere all'​utente il carattere da usare per plottare
 +- PLOTTARE funzione
 +*/
 +
 +import java.util.Scanner;​
 +
 +public class Plot  {
 +    public static void main(String[] arg)
 +     ​throws Exception {
 +        double maxR, minR;
 +        String scelta;
 +        char carattereDiPlot;​ // not yet implemented
 +
 +        Scanner in = new Scanner(System.in);​
 +
 +        System.out.print("​Inserisci la partenza (minX): ");
 +        minR = in.nextDouble();​
 +
 +        System.out.print("​Inserisci l'​arrivo (maxX): ");
 +        maxR = in.nextDouble();​
 +
 +        System.out.println("​Vuoi Sin, Cos, Tan, x^2 o x? SCELTA: ");
 +        scelta=in.nextLine();​
 +        scelta=in.nextLine();//​non ho capito perché ​  R: perché nextInt non svuota il buffer di tastiera dai newline ergo ne rimangono "in canna" e un successivo nextLine si prenderebbe solo il newline senza la stringa
 +        scelta=scelta.toLowerCase();​
 +//perchè non lo abbiamo fatto con variabili double? come si potrebbe fare per avere valori di y scanditi meglio(funzione '​continua'​)?​
 +
 + System.out.println("​\n\n\n\n\n\n\n | (x)\n |\n---------------------------------------------------------->​(y)"​);​
 +        for(double x = minR; x<=maxR; x+=Math.PI/​20) {
 +            System.out.print("​ | ");
 +            int y=0;
 +            double limx=0;
 +
 +            switch (scelta) {
 +            //case "​sin"​|"​Sin"​|"​SIN": ​ // verificare
 +            //case "​Sin": ​ // verificare
 +            //case "​SIN": ​ // verificare
 +            case "​sin":​
 + limx= 5*Math.sin(x)+20;​
 +                break;
 +            case "​cos":​
 + limx= 5*Math.cos(x)+20;​
 +                break;
 +            case "​tan":​
 + limx= 5*Math.tan(x)+20;​
 +                break;
 +            case "​x^2":​
 +            limx= (x*x);
 +                 ​break;​ NON FUNZIONANTE
 +            case "​x":​
 + limx= x;
 +                break;
 +            }
 +
 +            for(; y < limx; y++) {  //D: Math.PI : PI serve a?
 +                System.out.print("​ "​);​ //​y=x
 +            }
 +            System.out.print(y);​
 +            Thread.sleep(50);​ //50 millisecondi di pausa ogni iterazione
 +
 +            System.out.println();​
 +        }
 +        System.out.println("​ V");
 +    }
 } }
  
 </​code>​ </​code>​
pub/labprog/20171030.txt · Last modified: 2017/10/30 17:07 by atrent
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0