|
|
Dichiara, alloca e inizializza un vettore di reali contenente i valori successivi da 0.0 a 1.9 con passo 0.1 double[] v; v=new double[20]; for(int i=0; i < 20; i++) v[i]=i/10.0; // v[i]=(double)i/10; oppure ... for(double i=0.0; i < 2.0; i +=0.1) v[(int)(i*10.0)]=i; oppure... double[] v={ 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9,
1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9 };
Sottolinea i tipi di dato primitivi del linguaggio Java presenti nell’elenco seguente: byte, character, float, int, integer, long, real, short
Scrivi un blocco di selezione multipla che visualizza un saluto scelto tra 4 che corrispondono alle diverse ore della giornata. Utilizza il blocco switch() e il metodo Math.random(). int ora=(int)(24*Math.random());
switch(ora)
{
case 6: case 7: case 8: case 9: case 10: case 11: case 12;
System.out.pritln("Buongiorno");
break;
case 13: case 14: case 15: case 16: case 17:
System.out.pritln("Buon pomeriggio");
break;
case 18: case 19: case 20:
System.out.pritln("Buona sera");
break;
case 21: case 22: case 23: case 0: case 1: case 2: case 3: case 4: case 5:
System.out.pritln("Buona notte");
break;
}
Valuta, indicando i passi seguiti, i valori finali delle variabili contenute nel seguente codice int a=10, b=4; a=a/b; b++; b%=a; Sinteticamente 1. a <-- 10 2. b <-- 4 3. a <-- 10/4=2 4. b <-- 4+1=5 5. b <-- 5%2=1
Dati quattro numeri reali inseriti da tastiera, su richiesta del programma, visualizzare il valore massimo. Utilizza un metodo per max(x, y). Il metodo max() è presente nella classe Math ma lo riscriviamo per esercizio... static double max(double x, double y)
{
if(x >= y)
return x;
else
return y;
}ConsoleReader tastiera=new ConsoleReader();
double[] v=new double[4];
for(int i=0; i < 4; i++)
{
System.out.print((i+1) + "° valore = ");
v[i]=tastiera.readDouble();
}
double massimo=v[0];
for(int i=1; i < 4; i++)
massimo=max(massimo, v[i]);
System.out.println(massimo);
oppure, senza vettore (ma meno leggibile...) ConsoleReader tastiera=new ConsoleReader();
System.out.print("1° valore = ");
double massimo=tastiera.readDouble();
for(int i=2; i <= 4; i++)
{
System.out.print(i + "° valore = ");
massimo=max(massimo, tastiera.readDouble());
System.out.println(massimo);
oppure ConsoleReader tastiera=new ConsoleReader();
System.out.print("1° valore = ");double a1=tastiera.readDouble();
System.out.print("2° valore = ");double a2=tastiera.readDouble();
System.out.print("3° valore = ");double a3=tastiera.readDouble();
System.out.print("4° valore = ");double a4=tastiera.readDouble();
a1=max(a1, a2);
a3=max(a3, a4);
a1=max(a1, a3);
System.out.println(a1);
oppure ... System.out.println(max(max(max(a1, a2), a3), a4));
Dati 6 numeri interi inseriti da riga di comando indicare se tra i primi 5 numeri è presente il 6° valore. Utilizza un array. int[] v=new int[6];
for(int i=0; i < 6; i++)
v[i]=Integer.parseInt(args[i]);
boolean risp=false;
int k=v[5];
for(int i=0; i < 5; i++)
if(v[i] == k)
risp=true;
System.out.println(k + " e\' presente? " + risp);
Introducendo la variabile n il codice risulta più flessibile int n=args.length;
int[] v=new int[n];
for(int i=0; i < n; i++)
v[i]=Integer.parseInt(args[i]);
boolean risp=false;
int k=v[n-1];
for(int i=0; i < n-1; i++)
if(v[i] == k)
risp=true;
System.out.println(k + " e\' presente? " + risp); |
|