Quale valore assume la variabile risultato?

int a1=13, a2=++a1;
boolean risultato=a1 != a2;

1. a1 <-- 13
2. a1 <-- 14
3. a2 <-- 14
4. (14 != 14) = false
5. risultato <-- false

double x1=40.0, x2=7.0;
int risultato=(int)(x1/x2);

1. x1 <-- 40.0
2. x2 <-- 7.0
3. (40.0/7.0) = 5.714...
4. risultato <-- (int)5.714.. = 5

Calcolare la misura dell'ipotenusa di un triangolo rettangolo con le misure dei cateti inserite su richiesta del programma.

Il risultato assume il valore 0 se le misure inserite non sono positive.

ConsoleReader tastiera=new ConsoleReader();
System.out.print("1° cateto = ");
double c1=tastiera.readDouble();
System.out.print("2° cateto = ");
double c2=tastiera.readDouble();

double ipotenusa=0.0;
if(c1 > 0 && c2 > 0)
  ipotenusa=Math.sqrt(c1*c1+c2*c2);

Visualizzare la tabella dell’operazione resto della divisione con valori da 1 a 5.

for(int i=1; i <= 5; i++)
{
  for(int j=1; j <= 5; j++)
    System.out.print(i%j + "\t");
  System.out.println();
}

Generare due vettori di numeri casuali da 1 a (…): il numero di elementi e il valore massimo contenuto corrispondono alla tua età inserita da riga di comando.

Visualizzare la sequenza dei prodotti posizione per posizione.

int   età=Integer.parseInt(args[0]);
int[] v1=new int[età];
int[] v2=new int[età];
for(int i=0; i < età; i++)
{
  v1[i]=(int)(età*Math.random())+1;
  v2[i]=(int)(età*Math.random())+1;
}
for(int i=0; i < età; i++)
  System.out.print(v1[i]*v2[i] + "\t");

Per ognuno degli esercizi precedenti scrivi il metodo corrispondente utilizzando i parametri ritenuti necessari.

// c1, c2: misure dei cateti
// se c1>0 e c2>0 allora ...

double ipotenusa(double c1, double c2)
{
  double risp=0.0;
  if(c1 > 0 && c2 > 0)
    risp=Math.sqrt(c1*c1+c2*c2);
  return risp;
}
// m: valore massimo per l'operazione resto
// visualizza la tabella...

void tabResti(int m)
{
  for(int i=1; i <= m; i++)
  {
    for(int j=1; j <= m; j++)
      System.out.print(i%j + "\t");
    System.out.println();
  }
}
// m: valore massimo per random()
// visualizza i prodotti

void prodRandom(int m)
{
  int[] v1=new int[m];
  int[] v2=new int[m];
  for(int i=0; i < m; i++)
  {
    v1[i]=(int)(m*Math.random())+1;
    v2[i]=(int)(m*Math.random())+1; }
    for(int i=0; i < m; i++)
      System.out.print(v1[i]*v2[i] + "\t");
}

Naturalmente gli ultimi due metodi sono più utili se restituiscono i risultati piuttosto che visualizzarli...

// m: valore massimo per l'operazione resto
// restituisce la tabella...

int[][] tabResti(int m)
{
  int[][] risp=new int[m][m];
  for(int i=1; i <= m; i++)
    for(int j=1; j <= m; j++)
      risp[i][j]=i%j;
  return risp;
}
// m: valore massimo per random()
// restituisce i prodotti

int[] prodRandom(int m)
{
  int[] v1=new int[m];
  int[] v2=new int[m];
  for(int i=0; i < m; i++)
  {
    v1[i]=(int)(m*Math.random())+1;
    v2[i]=(int)(m*Math.random())+1;
  }
  int[] risp=new int[m];
  for(int i=0; i < m; i++) risp[i]=v1[i]*v2[i];
    return risp;
}

- ApPuNtIdIuNiNfOrMaTiCo