La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Corso di Informatica (Programmazione) Esercitazione 4 (10 dicembre 2008)

Presentazioni simili


Presentazione sul tema: "1 Corso di Informatica (Programmazione) Esercitazione 4 (10 dicembre 2008)"— Transcript della presentazione:

1 1 Corso di Informatica (Programmazione) Esercitazione 4 (10 dicembre 2008)

2 2 Esercizi sugli array Esercizio 1 dato un array A di N caratteri verificare se la sequenza che contiene è palindroma Esempio (N=10) abcdeedcba Risultato la sequenza abcdeedcba è palindroma A

3 3 Esercizi sugli array Algoritmo: per verificare che una sequenza di caratteri è palindroma basta verificare che vale A[i] uguale a A[N-i-1] per ogni i che va da 0 a N/2-1. Cioè basta verificare che ogni carattere della sequenza è uguale al suo simmetrico rispetto al centro della sequenza. Ciò vale sia per N pari che per N dispari. Dichiaro quindi la variabile booleana isP...

4 4 Esercizi sugli array …che allinizio ha valore true (parto cioè dallipotesi che la sequenza sia palindroma). Poi scandisco larray dal primo elemento (in posizione 0) allelemento in posizione N/2-1. Se trovo che per la generica posizione i, A[i] è diverso da A[N-i-1] allora assegno il valore false alla variabile isP e interrompo la scansione.

5 5 Esercizi sugli array public class Palindroma { public static void main(String arg[]) { char[] A={a,b,c,d,e,e,d,c,b,a}; int i; int length; boolean isP=true; length=10; i=0; while(i <= lentgth/2-1 && isP == true){ if(A[i]!=A[length-i-1]){ isP=false; } i=i+1; } System.out.print(Palindroma: +isP); }

6 6 Esercizi sugli array Esercizio 2 dato un array A di N interi verificare che gli elementi in posizione pari sono pari e quelli in posizione dispari sono dispari Esempio (N=10) Risultato nelle posizioni 0,2,4,6,8 gli elementi sono pari e nelle posizioni 1,3,5,7,9 gli elementi sono dispari A

7 7 Esercizi sugli array Algoritmo: dichiaro la variabile booleana evenOdd che allinizio ha valore true (faccio cioè lipotesi che larray abbia elementi pari in posizione parti ed elementi dispari in posizione dispari. Poi scandisco larray dal primo elemento (in posizione 0) allultimo elemento (in posizione N-1). Se trovo che per la generica posizione i, A[i] è pari se i è dispari oppure A[i] è dispari...

8 8 Esercizi sugli array …se i è pari, allora assegno il valore false alla variabile evenOdd e interrompo la scansione.

9 9 Esercizi sugli array public class PariDispari { public static void main(String arg[]) { int[] A={2,13,16,21,42,25,28,31,44,11}; int i; int length; boolean evenOdd=true; length=10; i=0; while(i <= lentgth-1 && evenOdd == true){ if((i%2==1 && A[i]%2==0) || (i%2==0 && A[i]%2==1)){ isP=false; } i=i+1; } System.out.print(Palindroma: +isP); }

10 10 Esercizi sugli array Esercizio 3 dati due array A e B rispettivamente di N N e M interi, verificare che tutti gli elementi di B sono contenuti in A Esempio (N=10, M=5) A B

11 11 Esercizi sugli array Algoritmo: dichiaro la variabile booleana allIn che ha valore iniziale true (faccio lipotesi che tutti gli elementi di B siano contenuti in A. Scandisco larray B dal primo elemento (in posizione 0) allultimo (in posizione M-1). Se per la generica posizione i trovo che B[i] non è contenuto in A, allora assegno il valore false alla variabile allIn e interrompo la scansione...

12 12 Esercizi sugli array …su B. Lalgoritmo presenta due cicli: uno per scandire B e uno più interno che verifica se il generico elemento B[i] è contenuto in A. Quindi esiste una seconda variabile booleana found che gestisce la verifica precedente (vedere Esercizio 3 dellEsercitazione 3).

13 13 Esercizi sugli array public class PariDispari { public static void main(String arg[]) { int[] A={2,13,16,21,42,25,28,31,44,11}; int[] B={21,13,28,11,44}; int i, j; int lengthA, lengthB; boolean allIn=true, found=false; lengthA=10; lengthB=5; i=0; while(i <= lentgthB-1 && allIn == true){ j=0; found=false; while(j <= lengthA-1 && found == false){ if(B[i]==A[j]){ found=true; } j=j+1; } ==>(continua)

14 14 Esercizi sugli array <==(continua) if(found == false){ allIn=false; } i=i+1; } System.out.print(B contenuto in A: +allIn); }


Scaricare ppt "1 Corso di Informatica (Programmazione) Esercitazione 4 (10 dicembre 2008)"

Presentazioni simili


Annunci Google