Corso di Informatica (Programmazione)

Slides:



Advertisements
Presentazioni simili
Uso avanzato di C.
Advertisements

Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A2 Java: le basi del linguaggio.
String c++.
Stringhe di caratteri In linguaggio C.
Algoritmi notevoli.
Algoritmi notevoli In linguaggio C.
PROGRAMMARE IN PASCAL (le basi)
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Fondamenti di Informatica CDL in Ingegneria Gestionale (B)- A.A CDL in Ingegneria Gestionale (B)- A.A Programmazione Ricorsiva.
Laboratorio Matematica e Informatica
Algoritmi in C++ (1) da completare
INFORMATICA Strutture iterative
Programmazione in Java (3)
Tipi di dato e controllo del flusso Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 7 (5 novembre 2008) Programmazione in Java: lessico, variabili, tipi primitivi, assegnamento a variabile.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Variabili e tipi primitivi Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 12 (19 novembre 2008) Programmazione in Java: i metodi statici.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Array Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Assegnamento di valore a una variabile Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 11 (19 novembre 2008) Programmazione in Java: controllo del flusso (iterazione)
1 Corso di Informatica (Programmazione) Esercitazione 1 (26 novembre 2008)
1 Corso di Informatica (Programmazione) Lezione 13 (21 novembre 2008) Programmazione in Java: stringhe e array.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) JAVA: i commenti Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Esercitazione 2 (3 dicembre 2008)
Esercizio 4 Data una stringa P di lunghezza m e definita sullalfabeto, scrivere un programma PERL per calcolare la seguente funzione: PREFIX_FUNCTION:
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Esercitazione 3 (5 dicembre 2008)
e array a più dimensioni
Funzioni di Libreria per le stringhe DICHIARAZIONI CONTENUTE NEL FILE: char *strcpy( char *dest, const char *sorg ); Copia sorg in dest, incluso il carattere.
Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati.
Esercizi su pile Scrivere una funzione che restituisca una nuova pila che contiene i valori di una pila in ingresso in ordine inverso. La pila originale.
Selezione (=scelta) con “if-else”
Esercizio: Copiare un file in un nuovo file mediante le funzioni read e write.
La Programmazione Ricorsiva
Java base III: Array e Stringhe
Programmazione in Java Claudia Raibulet
Programmazione in Java Claudia Raibulet
Problema dell’ordinamento di un array: Il metodo Bubble Sort.
Corso di informatica Athena – Periti Informatici
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
void binario(int n); …………………
Diagramma di flusso del problema del Calcolo del Bollo di Circolazione
Appunti di Java (J2SDK 1.4.2, JDK 1.6.0) prof. Antonella Schiavon settembre 2009.
Algoritmo che viene utilizzato per elencare gli elementi di un insieme secondo una sequenza stabilita da una relazione d'ordine, in modo che ogni elemento.
JAVA Per iniziare. Verificare installazione javac –version java –version Cercare i files e sistemare eventualmente il path.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Esercitazione su Vector. Permette di definire collezioni di dati generiche, che sono in grado di memorizzare elementi di ogni sottotipo di Object Definito.
Università di Torino – Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a prof. Viviana Bono Blocco 7 – Array.
PROVA INTERCORSO MOD.B a.a RICORSIONE ESERCIZI A1.1-A1.6.
Classi: class Foo { public int x; public int y; public void swap (boolean z) { if (z) {int temp = x; x = y; y = temp;}; }; } Ambienti per le classi: Cenv.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Ordinamento in tempo lineare Il limite inferiore Ω(n log n) vale per tutti gli algoritmi di ordinamento generali, ossia per algoritmi che non fanno alcuna.
Algoritmi e Strutture Dati
03/19/09E. Giovannetti -- OI09.1 Olimpiadi di Informatica 2009 Giornate preparatorie Dipartimento di Informatica Università di Torino marzo 2009 Codici.
Programmazione in Java
Liste Concatenate 11 Aprile E’ una delle strutture dati fondamentali in tutti i linguaggi di programmazione di alto livello Una Lista Concatenata.
Sommario Oggetti immutabili e non Tipi Primitivi: String, Arrays.
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Fondamenti di informatica T-A Esercitazione 5 : Stringhe ed array AA 2012/2013 Tutor : Domenico Di Carlo.
ESERCITAZIONE Problema Scrivere una funzione che scambi due interi non opera su oggetti  funzione statica scritta dentro a una classe contenitore.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
6/11/01Ordinamento 1 Un esempio di algoritmi: ordinamento.
Stringhe in Java. Definire una stringa. Definire una stringa in Java Il modo più semplice e diretto per creare un oggetto di tipo String è assegnare alla.
Input in Java. Uso Scanner Un oggetto per la lettura dalla tastiera Piuttosto, per rappresentare la tastiera del nostro calcolatore useremo un oggetto.
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
10. Programmazione Ricorsiva Ing. Simona Colucci Informatica - CDL in Ingegneria Industriale- A.A
Transcript della presentazione:

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

Esercizi sugli array Esercizio 1 dato un array A di N caratteri verificare se la sequenza che contiene è palindroma Esempio (N=10) A a b c d e Risultato  la sequenza abcdeedcba è palindroma

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...

Esercizi sugli array …che all’inizio ha valore true (parto cioè dall’ipotesi che la sequenza sia palindroma). Poi scandisco l’array dal primo elemento (in posizione 0) all’elemento 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.

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);

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) A 2 3 56 11 20 9 24 21 22 67 Risultato  nelle posizioni 0,2,4,6,8 gli elementi sono pari e nelle posizioni 1,3,5,7,9 gli elementi sono dispari

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

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

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);

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 2 3 56 11 20 9 24 21 22 67 B 56 2 21 9 67

Esercizi sugli array Algoritmo: dichiaro la variabile booleana allIn che ha valore iniziale true (faccio l’ipotesi che tutti gli elementi di B siano contenuti in A. Scandisco l’array B dal primo elemento (in posizione 0) all’ultimo (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...

Esercizi sugli array …su B. L’algoritmo 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 dell’Esercitazione 3).

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)

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