Strumenti Utente

Strumenti Sito


lpr-b:lpr-b-09:soluzioni

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
lpr-b:lpr-b-09:soluzioni [22/10/2009 alle 20:24 (16 anni fa)] Andrea Corradinilpr-b:lpr-b-09:soluzioni [22/10/2009 alle 20:42 (16 anni fa)] (versione attuale) Andrea Corradini
Linea 5: Linea 5:
 [[FAQ|FAQ]] [[FAQ|FAQ]]
  
-===== Tasks e Threads Es 1 =====+ 
 +====== Tasks e Threads ====== 
 + 
 +===== PrintTask =====
  
 <code:java> <code:java>
Linea 57: Linea 60:
 </code> </code>
  
-===== Tasks e Threads Es 2 =====+===== SleepTask =====
  
 <code:java> <code:java>
Linea 99: Linea 102:
 </code> </code>
  
-====== Tasks e Threads ====== +===== PITask2 =====
-===== Tasks e Threads Es 3 =====+
  
 <code:java> <code:java>
-public class PITask implements Runnable+public class PITask2 implements Runnable
 { {
  private double piEstimate = 0.0;  private double piEstimate = 0.0;
Linea 162: Linea 164:
 ====== Thread Pool ====== ====== Thread Pool ======
  
-===== AsynchronousCalculator.java =====+===== AsynchronousCalculator =====
  
 <code:java> <code:java>
Linea 242: Linea 244:
 } }
 </code> </code>
 +
 +
 +===== Task =====
  
 <code:java> <code:java>
Linea 285: Linea 290:
  + startString + ", endTime = " + endString + ", " + result);  + startString + ", endTime = " + endString + ", " + result);
  }  }
 +}
 +</code>
 +
 +===== PITask =====
 +
 +<code:java>
 +public class PITask extends Task
 +{
 + private double piEstimate = 0.0;
 + private long iteration = 0;
 + private int sign = -1;
 + private double accuracy;
 +
 + public PITask(int precision)
 + {
 + this.accuracy = Math.pow(10, -1 * precision);
 + }
 +
 + public void compute()
 + {
 + while(Math.abs(piEstimate - Math.PI) > accuracy)
 + {
 + iteration++;
 + sign = -sign;
 + piEstimate += sign * 4.0 / ((2 * iteration) - 1);
 + }
 + setResult("Pigreco = " + piEstimate + ", accuracy = " + this.accuracy);
 + }
 +}
 +</code>
 +
 +===== FibTask =====
 +
 +<code:java>
 +public class FibTask extends Task
 +{
 + int value;
 +
 + public FibTask(int value)
 + {
 + this.value = value;
 + }
 +
 + private int fib(int n)
 + {
 + if(n == 0 || n == 1) return n;
 + if(n == 1) return 1;
 + return fib(n - 1) + fib(n - 2);
 + }
 +
 + public void compute()
 + {
 + int result = this.fib(value);
 + setResult("Fib(" + value + ") = " + result);
 + }
 +}
 +</code>
 +
 +
 +===== FactTask =====
 +
 +<code:java>
 +public class FactTask extends Task
 +{
 + int value;
 +
 + public FactTask(int value)
 + {
 + this.value = value;
 + }
 +
 + private long fact(int n)
 + {
 + if(n == 0) return 1;
 + if(n == 1) return 1;
 + return(n * fact(n - 1));
 + }
 +
 + public void compute()
 + {
 + long result = this.fact(value);
 + setResult("Fact(" + value + ") = " + result);
 + }
 +}
 +</code>
 +
 +====== Indirizzi IP ======
 +
 +===== ListInterface =====
 +<code:java>
 +import java.util.Enumeration;
 +import java.net.*;
 +
 +public class ListInterface
 +{
 +    public static void main(String[] args)
 +    {
 + try
 +     {
 + Enumeration<NetworkInterface> interfaceList = NetworkInterface.getNetworkInterfaces();
 + if(interfaceList == null)
 +     {
 + System.out.println("Nessuna interfaccia di rete disponibile");
 +     }
 + else
 +     {
 + while(interfaceList.hasMoreElements())
 +     {
 + NetworkInterface iface = interfaceList.nextElement();
 + System.out.println("Interface " + iface.getName() + ":->" + iface.getDisplayName());
 + Enumeration<InetAddress> addrList = iface.getInetAddresses();
 + while(addrList.hasMoreElements())
 +     {
 + InetAddress address = addrList.nextElement();
 + System.out.print("\tIndirizzo " + ((address instanceof Inet4Address ? "(v4)"
 +     : (address instanceof Inet6Address ? "(v6)" : "(?)"))));
 + System.out.println(": " + address.getHostAddress());
 +     }
 +     }
 +     }
 +     }catch(SocketException e) { System.out.println(e);}
 +    }
 } }
 </code> </code>
lpr-b/lpr-b-09/soluzioni.1256243078.txt.gz · Ultima modifica: 22/10/2009 alle 20:24 (16 anni fa) da Andrea Corradini

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki