Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package corso.java;
- public class Program {
- // Creare un estrattore di numeri per il gioco della tombola!
- // *FATTO* Scrivere un metodo che stampi un array di numeri
- // *FATTO* Scrivere un metodo che inserisca in un array tutti i numeri da 1 a 90
- // *FATTO* Scrivere un metodo che scambi tra loro due numeri all'interno di un
- // array
- static void stampa(int[] array) {
- // leggo quanti elementi ci sono nell'array
- int lunghezza_array = array.length;
- // scorro gli elementi uno per uno
- for (int cursore = 0; cursore < lunghezza_array; ++cursore) {
- // man mano che scorro stampo gli elementi
- System.out.println(array[cursore]);
- }
- }
- static void riempi(int[] array) {
- // controllo che nell'array ci sia posto per 90 numeri...
- if (array.length != 90) {
- System.out.println("Impossibile riempire");
- } else {
- // devo inserire in array tutti i numeri da 1 a 90
- // man mano che conto da 1 a 90,
- for (int conto = 1; conto <= 90; ++conto) {
- // devo inserire il numero all'interno dell'array
- // (in una particolare posizione?)
- int posizione = conto - 1; // decido di posizionare i numeri uno dietro l'altro...
- array[posizione] = conto;
- }
- }
- }
- // dato l'array e le due posizioni p1 e p2,
- // scambiare di posto l'elemento di posizione p1 con l'elemento di posizione p2
- static void scambia(int[] array, int p1, int p2) {
- // prendo il valore in p1
- int v1 = array[p1];
- // prendo il valore in p2
- int v2 = array[p2];
- // metto il valore di p2 in p1
- array[p1] = v2;
- // metto il valore di p1 in p2
- array[p2] = v1;
- }
- // dato questo metodo che restituisce un numero casuale tra 0 e 90 (escluso)...
- static int casuale() {
- return new java.util.Random().nextInt(90);
- }
- // ... scrivere un metodo che scambi casualmente 2 numeri dell'array 1000 volte
- static void scambiaCasuale(int[] array) {
- for (int contatore = 0; contatore < 1000; ++contatore) {
- // individuo la prima posizione casuale
- int p1 = casuale();
- // individuo la seconda posizione casuale
- int p2 = casuale();
- // scambio le due posizioni individuate
- scambia(array, p1, p2);
- }
- }
- public static void main(String[] args) {
- int[] ar = { 2534, 74563, 3456, 8576, 432, 748 };
- stampa(ar);
- // crea uno spazio in memoria (nello heap) per 90 numeri interi
- int[] numeri = new int[90];
- riempi(ar);
- riempi(numeri);
- stampa(numeri);
- scambia(numeri, 4, 5);
- stampa(numeri);
- scambiaCasuale(numeri);
- stampa(numeri);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement