package esami;

public class dicembre10 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[] a1 = { 1, 5, 7, 3, 4 };
		int[] a2 = { 10, 5, 72, 3, 43 };
		int[] a3 = { 5, 7, 3 };
		int[] a4 = { 5, 7, 4 };
		System.out.println((-1 + 5) % 5);
		System.out.println((-11) % 5);
		//si riusano stampaArray e rimuoviDuplicati già scritti
		//System.out.println(potenza(2, -5));

		//stampaArray(unione(a1, a2));
		//System.out.println(search(a1, a3));
		//System.out.println(search(a1, a4));

		//System.out.println(modulo(100, 13));
		System.out.println(100 % 13);

		/*
		 * Scrivere il metodo ruotaArray
		 * es: a={1, 3, 6, 2, 10} e n=2 --> {6, 2, 10, 1, 3} 
		 * es: a={1, 3, 6, 2, 10} e n=-2 --> {2, 10, 1, 3, 6}
		 */
		int[] a = { 1, 3, 6, 2, 10 };
		// stampaArray(ruotaArray(a, 7));
		// stampaArray(ruotaArray(a, -7));

	}

	
	/*
	 * scrivere un metodo ricorsivo potenza che presi un double base e un int
	 * esponente restituisce il valore della potenza base^esponente
	 */
	// static double potenza(final double base, final int esponente) {
		
	//}

	/*
	 * scrivere un metodo unione che, presi due array a e b di int crea e
	 * restituisce un nuovo array contenente l'unione degli elementi in a e b
	 * (l'array restituito NON deve contenere elementi ripetuti)
	 */
	//static int[] unione(int[] a, int[] b) {
		
	//}

	/*
	 * scrivere un metodo search che prende in input 2 array a e b di int e
	 * restituisce true se e solo se - l'array b ha lunghezza <= dell'array a - è
	 * possibile individuare nell'array a un sottoarray di elementi consecutivi
	 * uguale all'array b es: se a={1, 4, 2, 6, 6} e b = {2, 6} il metodo
	 * restituisce true
	 */
	// static boolean search(int[] a, int[] b) {
		
	//}

	/*
	 * scrivere un metodo ruotaArray che prende come parametro un array di interi a
	 * e un intero n e restituisce un nuovo array della stessa lunghezza di a in cui
	 * gli elementi sono scalati in base al parametro n. Valori positivi di n
	 * corrispondono a una scalatura verso sinistra, negativi verso destra. es:
	 * a={1, 3, 6, 2, 10} e n=2 --> {6, 2, 10, 1, 3} es: a={1, 3, 6, 2, 10} e n=-2
	 * --> {2, 10, 1, 3, 6}
	 */
	// static int[] ruotaArray(int[] a, int n) {
		
	//}

	/*
	 * Sipponiamo di aver eliminato l'operatore % e / dal Java 
	 * Calcolarlo con un metodo modulo (a,b) scritto da voi. Supporre che b sia maggiore di 0
	 * 
	 */
	//static int modulo(int a, int b) {
		
	//}

	/*
	 * Calcolarlo in modo ricorsivo
	 * 
	 */
	//static int moduloRic(int a, int b) {
		
	//}

	/*
	 * un array si dice FORTEMENTE CRESCENTE se ogni suo elemento (dal secondo in
	 * poi) è almeno pari alla somma di tutti gli elementi che lo precedono scrivere
	 * un metodo fc che preso come parametro un array di int restituisce true se e
	 * solo se l'array è fort. crescente 
	 * es: a={5, 5, 6, 23, 100} è fortemente
	 * crescente
	 */
	//static boolean fc(int[] a) {
		
	//}


}
