Fondamenti di Informatica T-1

Documenti analoghi
Fondamenti di Informatica T-1

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Informatica 1. Prova di recupero 21 Settembre 2001

Modulo 2: Strutture fondamentali della programmazione Java

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe

Le stringhe in Java: java.lang.string

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

Esercizi per la prova in itinere (con soluzioni)

Fondamenti di Informatica T-1

Dipartimento di Matematica e informatica Ing. Cristiano Gregnanin Laurea triennale in Matematica, Esercizi di Programmazione

Linguaggio C: introduzione

Un oggetto per la lettura dalla tastiera

Le Stringhe. Usare la classe java.lang.string

18 - Vettori. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

8 - Stringhe (e altre classi dalla Libreria Standard di Java)

LEZIONE 3: SELEZIONE

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Esercizi su strutture dati

Esercitazione 4. Comandi iterativi for, while, do-while

Università degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella

Aggregati di dati eterogenei: il tipo struct. Esercizi risolti

ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }

Laboratorio di Programmazione Laurea in Bioinformatica

In questo articolo descriveremo le formule da applicare alle seguenti operazioni sulle stringhe di testo:

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006

ESERCIZIO 1 ESERCIZIO 2

Iterazione. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa E07. C. Limongelli Novembre 2007

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:

5 Stringhe. Esiste una libreria di C che gestisce le stringhe string.h essa ci permette di:

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Quicksort e qsort() Alessio Orlandi. 28 marzo 2010

Laboratorio di programmazione

Programmazione in Java (I modulo)

5 - Istruzioni condizionali

Fondamenti di Informatica T-1. Classi e array

INTRODUZIONE ALLA PROGRAMMAZIONE

Algoritmi di Ricerca. Esempi di programmi Java

La rappresentazione delle informazioni

Esercizio 1 (15 punti)

C: panoramica. Violetta Lonati

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Corso di Laurea Ingegneria Civile Elementi di Informatica. Esercizi. Carla Limongelli. Esercizi 1

Laboratorio di Elementi di Bioinformatica

Linguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

File e puntatori a file

Linguaggio C Informatica Grafica

Caratteri e stringhe

18 - Classi parzialmente definite: Classi Astratte e Interfacce

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

I CARATTERI E LE STRINGHE

Fondamenti di Informatica T-1 Modulo 2

Capitolo 4. Tipi di dati fondamentali. Cay S. Horstmann Concetti di informatica e fondamenti di Java quarta edizione

Unità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi

Transcript:

Fondamenti di Informatica T-1 Stringhe Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De Filippo 1 / 13

STRINGHE: Definizione e creazione Stringa tipo di dato che rappresenta un insieme ordinato di caratteri Creazione di una stringa in Java: String es stringa1 = Ciao ; String es stringa2 = new String( Ciao ); Fondamenti di Informatica T-1 Allegra De Filippo 2 / 13

STRINGHE: Operazioni (1) Prendiamo come esempio la seguente stringa String saluto = Ciao ; Concatenazione saluto = saluto + a tutti! ; ora la stringa è diventata: Ciao a tutti! Calcolo della lunghezza: length() int lunghezza = saluto.length(); La lunghezza della nostra stringa in questo caso è 13 (N.B. CONTA GLI SPAZI TRA LE PAROLE E LA PUNTEGGIATURA!) Fondamenti di Informatica T-1 Allegra De Filippo 3 / 13

ATTENZIONE! La posizione di un carattere in una stringa si conta a partire da 0 e non da 1 Fondamenti di Informatica T-1 Allegra De Filippo 4 / 13

STRINGHE: Operazioni (2) Riprendiamo come esempio la stringa String saluto = Ciao a tutti! ; Indice della prima occorrenza di una data sottostringa: indexof() int prima occorrenza = saluto.indexof( tutti ); la prima occorrenza di tutti è 7. N.B. Per contare a partire dall ultimo carattere della stringa, posso usare lastindexof() Estrazione dell i-esimo carattere: charat() char prima lettera = saluto.charat(0); l indice del primo carattere è 0 prima lettera = C Fondamenti di Informatica T-1 Allegra De Filippo 5 / 13

STRINGHE: Operazioni (3) Estrazione di una sottostringa dati due indici: substring() es: int iniziale = 7; int finale = 12; String sottostringa = saluto.substring(iniziale, finale); sottostringa = tutti Trasformazione maiuscole-minuscole: touppercase() e tolowercase() String saluto maiuscolo = saluto.touppercase(); saluto maiuscolo = CIAO A TUTTI! Sostituzione di una sottostringa ad ogni occorrenza: replaceall() String nuovo saluto = saluto.replaceall( a, AAA ); nuovo saluto = ciaaao AAA tutti! Utilissima per eliminare gli spazi bianchi. Come? Fondamenti di Informatica T-1 Allegra De Filippo 6 / 13

STRINGHE: Lettura Metodo next() della classe Scanner: Scanner tastiera = new Scanner(System.in); String s1 = tastiera.next(); s1 è il contenuto della console fino al primo spazio bianco Metodo nextline() della classe Scanner: String s2 = tastiera.nextline(); s2 è un intera riga della console N.B. nextline() ha un comportamento anomalo se preceduto da una lettura (ad es. next() o nextint() o nextdouble()...): tali metodi non consumano l ENTER al termine dell input e quindi una successiva nextline() perderebbe l acquisizione dell input raccogliendo una stringa vuota. Fondamenti di Informatica T-1 Allegra De Filippo 7 / 13

ESERCIZIO 1 (SVOLTO) Scrivere un programma che: Chieda all utente di inserire nome e cognome Mostri a video le iniziali dell utente Calcoli e mostri a video le lunghezze del nome e del cognome Mostri a video una possibile email dell utente, nella forma nome.cognome@studio.unibo.it N.B. Le email NON contengono lettere maiuscole e NON contengono spazi bianchi (quindi, in caso di nomi e cognomi composti, vorremmo essere in grado di eliminarli) Fondamenti di Informatica T-1 Allegra De Filippo 8 / 13

ESERCIZIO 1 (SOLUZIONE) Fondamenti di Informatica T-1 Allegra De Filippo 9 / 13

ESERCIZIO 2 Scrivere un programma che chieda all utente di inserire una frase. Acquisita la frase, il programma deve: Mostrare a video la prima parola della frase inserita dall utente Mostrare a video la frase dopo aver spostato la prima parola alla fine della frase esempio: se la frase inserita è oggi piove molto, la frase diventerà piove molto oggi Chiedere all utente una parola da inserire nella frase (si supponga che la parola non sia presente nella frase) Mostrare a video l ultima parola della frase e sostituirla con la parola inserita dall utente, poi stampare a video la frase modificata esempio: se la parola da inserire è sabato, la frase diventerà piove molto sabato Fondamenti di Informatica T-1 Allegra De Filippo 10 / 13

ESERCIZIO 2 (ESEMPI e SUGGERIMENTI) Esempio di output: Per trovare la prima parola di una frase devo trovare una sottostringa che abbia il primo carattere all indice 0 e termini con uno spazio bianco. Analogamente posso trovare l ultima parola (abbiamo visto come contare gli indici dalla fine). Fondamenti di Informatica T-1 Allegra De Filippo 11 / 13

ESERCIZIO 3 Una libreria utilizza un sistema di catalogazione usando, per ogni libro, dei codici strutturati nel seguente modo: Le prime due lettere, in maiuscolo, sono le prime due lettere del nome dell autore L anno di pubblicazione (da acquisire come INTERO), separato da un trattino dalle precedenti lettere Le prime tre lettere del titolo del libro, in maiuscolo, separate da un trattino dall anno di pubblicazione La prima e l ultima lettera del nome della casa editrice (in minuscolo e tra parentesi tonde) Scrivere un programma che, inseriti da input il nome dell autore, l anno di pubblicazione e il nome della casa editrice, stampi a video il corrispondente codice. Fondamenti di Informatica T-1 Allegra De Filippo 12 / 13

ESERCIZIO 3 (ESEMPI e SUGGERIMENTI) Esempio di output: Le lettere del nome dell autore, il titolo del libro e il nome della casa editrice NON devono contenere spazi al fine di generare il codice. Dovremo eliminarli prima di estrarre i caratteri utili. Fondamenti di Informatica T-1 Allegra De Filippo 13 / 13