All pastes #274601 Raw Edit

Someone

public text v1 · immutable
·published 2006-12-10 20:52 UTC
rendered paste body
import java.lang.Math;
import java.util.Random;

public class Demo74 {

	public static void main(String[] args) {
		int[] harhar = taulukoi(-1, 1, 3);
		for (int i = 0; i < harhar.length; i++) {
			System.out.println((i+1) + ": " + harhar[i]);
		}
	}

	/**
	 * AE: välin pituus >= halutun taulukon pituus
	 *     && pienin != null
	 *     && suurin != null
	 *     && pituus != null
	 */

	public static int[] taulukoi(int pienin, int suurin, int pituus) {
		int[] taulukko = new int[pituus];
		int i = 0;
		while (i < pituus) {
			int luku = numeroGeneraattori(pienin,suurin);
			boolean check = true;
			for (int j = 0; j < i; j++) {
				if (luku == taulukko[j]) {
					check = false;
					break;
				}
			}
			if (check) {
				taulukko[i] = luku;
				i = i + 1;
			}
		}
		return taulukko;
	}

	/**
	 * AE: pienin != null && suurin != null
	 */

	public static int numeroGeneraattori(int pienin, int suurin) {
		Random r = new Random();
		boolean check = true;
		int numero = 0;
		while (check) {
			if (pienin < 0 && suurin > 0 && check) {
				pienin = Math.abs(pienin);
				numero = r.nextInt(suurin+1) - r.nextInt(pienin+1);
				check = false;
			}
			if (pienin < 0 && suurin <= 0 && check) {
				suurin = Math.abs(suurin);
				pienin = Math.abs(pienin);
				numero = 0 - (pienin - r.nextInt(pienin-suurin+1));
				check = false;
			}
			if (pienin >= 0 && check) {
				numero = suurin - r.nextInt(suurin-pienin+1);
				check = false;
			}
		}
		return numero;
	}

}