1 Tipi numerici Tipi interi Virgola mobile Conversioni e promozioni Tipi ed espressioni... 5
|
|
- Romano Rizzo
- 4 anni fa
- Visualizzazioni
Transcript
1 Indice Indice 1 Tipi numerici Tipi interi Virgola mobile Conversioni e promozioni Tipi ed espressioni Array di tipi primitivi Array monodimensionali Array multidimensionali Tipi numerici Tipi numerici Tipo Contiene Default Size Range char car Unicode \u 16 bit da \u a \uffff byte int con segno 8 bit da 2 7 a short int con segno 16 bit da 2 15 a int int con segno 32 bit da 2 31 a long int con segno 64 bit da 2 63 a float Std IEEE bit (± 1.4E-45, ± 3.4E+38) double Std IEEE bit (± 4.9E-324, ± 1.8E+38) Osservazione: , da cui si ha che Letterali numerici char c = xffff; // massimo valore char (hex) byte b = x7f; // massimo valore byte (hex) short s = x7fff; // massimo valore short (hex) int i1 = x2f; // Hexadecimal (minuscolo) int i2 = X2F; // Hexadecimal (maiuscolo) int i3 = 177; // Ottale (zero seg. da cifre 1..7) long n1 = 2L; // suffisso long long n2 = 2l; // suffisso long long n3 = 2; float f1 = 1; float f2 = 1F; // suffisso float float f3 = 1f; // suffisso float float f4 = 1e-45f; // 1ˆ(-45) float f5 = 1e+9f; // suffisso float double d1 = 1d; // suffisso double double d2 = 1D; // suffisso double double d3 = 47e47d; // 1ˆ(47)
2 1.1 Tipi interi Aritmetica modulare Con l aritmetica intera non si verificano overflow o underflow int i = 1; // int j = 1; // out.println(i * j); 1ˆ6 1ˆ6 i = ; // 2ˆ31-1 out.println(i + 1); i = ; // -2ˆ31 out.println(i - 1); Aritmetica modulare Output prompt> prompt> prompt> Doppia precisione intera long l = ; // non compila! long l = L; // 2ˆ63-1 // ordine 1ˆ18 out.println(l + 1); prompt> Tipi in virgola mobile Aritmetica in virgola mobile Overflow e underflow in virgola mobile double d = 1e38; out.print("l overflow produce infinito: "); out.println(d + "*1==" + d*1); out.println("underflow graduale:"); d = 1e-35 * 3.14; out.println(d); for (i = ; i < 4; i++) out.println(d /= 1); Aritmetica in virgola mobile Output prompt> 1.E38*1==Infinity prompt> 3.14E E E E-32. 2
3 Aritmetica in virgola mobile Non è un numero! // Un esempio di NaN: out.print("./., cioe Not-a-Number: "); d =./.; out.println(d); prompt>./., cioe Not-a-Number: NaN // e nel caso intero? out.print("/ = " + /); Aritmetica in virgola mobile Risultato non corretto per effetto di arrotondamenti out.print("risultato non corretto con i float:"); for (i = ; i < 1; i++) { float z = 1.f / i; if (z * i!= 1.f) out.print(" " + i); out.print("risultato non corretto con i double:"); for (i = ; i < 1; i++) { double z = 1. / i; if (z * i!= 1.) out.print(" " + i); Aritmetica in virgola mobile Output prompt> prompt> Letterali di default int per i tipi numerici interi byte b = 1; int i = 1; long l = 1L; double per i tipi floating point float s = 1; // compila float s = 1.3; // non compila float s = 1.3f; // compila double d = 1.3; // compila 3
4 2 Conversioni e promozioni Tipi di conversione: riassunto Esistono due tipi di conversione in Java: widening conversion (= ampliamento, promozione) si verifica quando un valore numerico di un dato tipo viene assegnato a una variabile il cui tipo supporta un insieme di valori più esteso narrowing conversion (= restringimento, forzatura) si verifica quando un valore numerico di un dato tipo viene assegnato a una variabile il cui tipo supporta un insieme di valori meno esteso Nel primo caso le conversioni sono implicite (o automatiche). Nel secondo caso devono essere rese esplicite (o forzate) con il costrutto cast Conversioni di tipi: tabella riassuntiva Da: A: byte short char int long float double byte - W N W W W W short N - N W W W W char N N - W W W W int N N N - W W W long N N N N - W W float N N N N N - W double N N N N N N - N = narrowing (restringimento) W = widening (ampliamento) W = widening con possibile perdita di cifre meno significative Cast Necessità del cast nelle operazioni aritmetiche int i = 1;// i = 1... int j = 3*i; // j = long k = 3*i; // k = long w = (long)3*i;// w = 3... Cast richiesto dal controllo sui tipi byte b = 1; // non compila int i = 1; byte b = i; // non compila byte b = (byte)i; char c = (char)i; double d = 1.33; float f = d; // non compila float f = (double)d; Perdita d informazione Assegnamento accettato senza cast (widening) // perdita d informazione i = ; float f = i; out.println("f - i = " + ((int)f - i)); 4
5 long p = L; double q = p; out.println("q - p = " + ((long)q - p)); Perdita d informazione Output prompt>f - i = 46 prompt>q - p = Tipi ed espressioni Espressioni semplici Il più semplice tipo di espressioni consite di letterali e variabili (espressioni semplici) Esempi: ; // letterale floating point somma; // variabile L interprete Java valuta un espressione e ne restituisce il valore Se si tratta di un letterale è il valore rappresentato dal letterale stesso Se si tratta di una variabile il valore in essa contenuto Espressioni composte Le espressioni composte si ottengono combinando opportunamente espressioni semplici e operatori Esempi: // operatori di prodotto e divisione area = base * altezza / 2; // invocazione di metodo in.readdouble(); Osservazione: l invocazione di metodo costituisce anch essa un espressione semplice Operatori e operandi Gli operandi sono gli argomenti dell operatore. Alcuni operatori operano solo su un operando (operatore unario), altri ne richiedono due (operatore binario) ecc. Java ha operatori unari, binari e ternari (un solo caso!) Ogni operatore si aspetta che i suoi operandi siano di un particolare tipo Fissato l operatore e il tipo degli operandi è univocamente determinato il tipo del risultato dell espressione Ogni espressione ha un tipo determinato da quello dei suoi componenti e dalla semantica degli operatori coinvolti. 5
6 Conversioni implicite di tipo Precedenze tra operatori Tipo ris. long int double Tipo degli operandi Nessun operando è un float o un double (aritmetica intera); ma almeno uno è un long Nessun operando è un float o un double (aritmetica intera); nessun operando è un long Almeno un operando è un double. float Almeno un operando è un float; nessun operando è un double. Tipo di operatore 3 Array di tipi primitivi 3.1 Calcolo delle permutazioni Problema Operatore Postfissi []. (parametri) expr++ expr-- Unari ++expr --expr +expr -expr! Creazione e conversione new (tipo)expr Moltiplicativi * / % Additivi + - Scorrimento << >> >>> Relazionali < > <= >= instanceof Uguaglianza ==!= AND & Condizionale?: Assegnamenti = += -= *= /= %= Permutazioni Scrivere un programma Java che stampi n > permutazioni casuali di un insieme di numeri assegnato Che cosa si intende per permutazione? Progettazione Metodo top down Definizione dei sottoproblemi acquisire dall utente il numero di permutazioni richieste effettuare una copia dell array da elaborare (così da mantenere inalterato l originale) determinare le permutazioni casuali dell insieme richieste stampare le permutazioni 6
7 Copia di un array - 1 Dato l array definito (creazione + inizializzazione) di seguito: int[] insieme = {1,2,3,4,5,6,7,8,9,1; E corretto effettuare la copia nel seguente modo? int[] copiadiinsieme = insieme; Cosa accade in realtà? insieme int[] copiadiinsieme Errore semantico! I due riferimenti puntano allo stesso oggetto Copia di un array - 2 int copiadiinsieme[] = new int[insieme.length]; for (int i=; i < insieme.length; i++) copiadiinsieme[i] = insieme[i]; insieme int[] copiadiinsieme int[] Un corollario dell inizializzazione Example 3.1. Istruzione di inizializzazione:[2em] int i = 1; int[] tredispari = {2*i+1,2*(i+1)+1,2*(i+2)+1; [2em] Poiché Java inizializza esplicitamente gli array a runtime, allora anche le espressioni possono essere usate al posto delle costanti. Il compilatore si limita a verificare la congruenza tra il tipo delle singole espressioni con il tipo base dell array Determinare una permutazione Individuazione dei sottoproblemi Prendere in esame la copia dell array originale (modificabile a piacere secondo gli scopi) Generare una sequenza di numeri intero a caso nell intervallo [, N 1]: vedi il metodo randint della classe java.util.random Indicizzare con tale insieme l array, copiare i numeri ivi contenuti nel nuovo array o stamparli, marcardo ogni volta l elemento letto Soluzione Vedi il programma Permutazioni.java... N.B. Il ciclo while potrebbe essere molto inefficiente... modificare il programma sostituendo con un ciclo for. 7
8 3.2 Algebra delle matrici Array multidimensionali Un array multidimensionale è un array i cui elementi sono a loro volta array Il caso più semplice è quello in cui gli elementi sono array monodimensionali. In questo caso si ottengono delle strutture chiamate matrici (array di dimensione 2) riga (seconda) Esempio: matrice 3x4 (3 righe e 4 colonne) colonna (terza) Array: dichiarazione e accesso riga (seconda) colonna (terza) Dichiarazione: int[][] matrice = new int[3][4]; Accesso all elemento memorizzato nella seconda riga & terza colonna: int i = matrice[1][2]; Dimensioni: il numero di righe è dato da matrice.length, il numero di colonne è dato da matrice[].length Array: dichiarazione (2) Nella dichiarazione, una o più dimensioni possono non essere specificate: in questo caso gli elementi corrispondenti alle dimensioni non specificate sono riferimenti vuoti (null) Esempio: int[][] a = new int[3][]; dichiara una array di 3 elementi che sono riferimenti ad array monodimensionali di lunghezza non specificata. Sarà quindi necessario inizializzare ogni elemento usando l operatore new. Cioè: a[] = new int[1]; a[1] = new int[7]; a[2] = new int[22]; Array: situazione in memoria Un array multidimensionale viene memorizzato come un array di array 8
9 (4) matrice length (3) (4) (4) Array: inizializzazione Analogamente agli array monodimensionali, anche gli array multidimensionali possono essere inizializzati in fase di dichiarazione class Motto{ public static void main (String args []){ char motto [][] = { { E, s, t, o, t, e, { p, a, r, a, t, e,.,.,. ; out.println (new String(motto[])); out.println (new String(motto[1])); Esercizio: somma di matrici Problema Scrivere un programma Java che, date due matrice di numeri, restituisca la matrice somma Esempio: somma elementi matrice class SommaMatrice{ // Somma gli elementi della matrice A public static void main (String [] args){ int[][] A = { {1, 2, 3, 4, 5, {4, 8, 3, 2, 7, {1, 7, 3, 6, 8, {9, 2, 8, 3, 1; int somma=; for (int i=; i< A.length; i++) for (int j=; j< A[i].length; j++) somma += A[i][j]; out.println (somma); 9
10 Esercizio: prodotto di matrici Il prodotto di matrici è illustrato come segue: date una matrice 3x4 e una 4x2... x = 3 x 4 4 x 2 3 x 2 Problema Scrivere un programma Java che, date due matrice di numeri, ne effettui il prodotto e lo stampi a video Le matrici Matrice B (6x3) Matrice A (4x6) Matrice prodotto (4x3) Soluzione Vedi il programma ProdottoMatrici.java... 1
Tipi primitivi ed array
Tipi primitivi ed array G. Grossi 8 novembre 2006 Indice 1 Tipi interi Tipi in virgola mobile Indice 1 Tipi interi Tipi in virgola mobile 2 Tipi ed espressioni Indice 1 Tipi interi Tipi in virgola mobile
DettagliDichiarazioni e tipi predefiniti nel linguaggio C
Politecnico di Milano Dichiarazioni e tipi predefiniti nel linguaggio C Variabili, costanti, tipi semplici, conversioni di tipo. Premessa Programmi provati sul compilatore Borland C++ 1.0 Altri compilatori:
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere
DettagliLinguaggi di Programmazione I Lezione 9
Linguaggi di Programmazione I Lezione 9 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 6 maggio 28 Variabili 3 Ambiti................................................................
DettagliIL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Primo esempio di un programma Java
Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Primo esempio di un programma Java Semplicissimo programma
DettagliIL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Primo esempio di un programma Java Semplicissimo programma
DettagliProgrammazione. Tipi di dato primitivi. Francesco Tiezzi. Scuola di Scienze e Tecnologie Sezione di Informatica Università di Camerino
Programmazione Francesco Tiezzi Scuola di Scienze e Tecnologie Sezione di Informatica Università di Camerino Lucidi originali di Pierluigi Crescenzi Programmazione Concetti base Dati Variabile Tipo Istruzioni
DettagliInformatica 2 modulo C Massimo Callisto De Donato
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Informatica 2 modulo C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE
DettagliIL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale
Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Lettura di dati da input In Java la lettura di dati da input
DettagliGocce di Java. Gocce di Java. Tipi di dato primitivi. Pierluigi Crescenzi. Università degli Studi di Firenze
Gocce di Java Pierluigi Crescenzi Università degli Studi di Firenze Programmazione Concetti base Dati Variabile Tipo Istruzioni Istruzioni base Strutture di controllo Sotto-programmi Programmazione Concetti
DettagliBasi della programmazione in Java. Anteprima. Uso delle variabili. Il concetto di variabile Uso delle variabili. Input da tastiera I tipi Esercizi
Basi della programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima Il concetto di variabile Uso delle variabili Dichiarazione Assegnamento Visualizzazione
DettagliBasi della programmazione in Java
Basi della programmazione in Java Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Il concetto di variabile Uso delle variabili Dichiarazione Assegnamento Visualizzazione
DettagliCodifica dell informazione
Codifica dell informazione Informatica B Come memorizzo l informazione nel calcolatore? 1 bit di informazione 1 bit di informazione La memoria del calcolatore L informazione nel calcolatore q Il calcolatore
DettagliCast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double
Il cast Cast implicito Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto Per esempio: byte short int long float double int x = 10; float f; f = x; Il valore di
DettagliLaboratorio di Informatica Ingegneria Clinica Lezione 9/11/2011. Prof. Raffaele Nicolussi
Laboratorio di Informatica Ingegneria Clinica Lezione 9/11/2011 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147-00161 Roma Università degli Studi La Sapienza Fondamenti di
DettagliCapitolo 5. Array e collezioni. c 2005 Pearson Education Italia Capitolo 5-1 / 61
Capitolo 5 Array e collezioni c 2005 Pearson Education Italia Capitolo 5-1 / 61 Sommario: Array e collezioni 1 Array Array di oggetti Lunghezza di un array Accesso agli elementi di un array Array e cicli
DettagliTipi di dato, Alessandra Giordani Lunedì 7 maggio 2011
Tipi di dato, memoria e conversioni Alessandra Giordani agiordani@disi.unitn.it Lunedì 7 maggio 2011 http://disi.unitn.it/~agiordani/ Il linguaggio C è esplicitamente tipato: occorre esplicitamente associare
DettagliIL LINGUAGGIO C TIPI DI DATO
IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace di trattare vari domini di dati, detti tipi primitivi dominio dei
DettagliTipi di dato e variabili. Walter Didimo
Tipi di dato e variabili Walter Didimo Tipi di dato I dati che possono essere manipolati in un programma si classificano in tipologie differenti, chiamate tipi di dato Esistono due macro tipi di dato in
DettagliProgrammazione in Java (I modulo) Lezione 3: Prime nozioni
Programmazione in Java (I modulo) Lezione 3: Prime nozioni La volta scorsa Abbiamo avuto un primo assaggio! Abbiamo analizzato riga per riga due semplici programmi Java. Abbiamo provato a usare l editor
DettagliPrecisazione sui tipi in ANSi C
Precisazione sui tipi in ANSi C Tipi primitivi del C Un tipo è costituito da un insieme di valori ed un insieme di operazioni su questi valori. Classificazione dei tipi primitivi del C scalari aritmetici:
DettagliDati due punti sul piano calcolare la loro distanza
Introduzione al C Primo esempio in C Dati due punti sul piano calcolare la loro distanza Soluzione: la distanza fra due punti si calcola secondo il teorema di Pitagora, con la formula: y Distanza = (lato12
DettagliCorso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona
Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario tipi di dati condizioni cicli cicli annidati per alcuni tipi di dati Java mette a disposizione una rappresentazione
DettagliLinguaggio C: Espressioni
Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università
DettagliEspressioni. Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica!
Espressioni Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica! Valutazione automatica di expr aritmetiche = obiettivo primario dei primi LP
DettagliA. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica
informatica Java basi del linguaggio Alberto Ferrari Informatica struttura di un programma Java /** * Classe EsempioProgramma * Un esempio di programmazione in Java * @author 4A Informatica */ public class
DettagliTipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:
Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere
DettagliProgrammazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013
Programmazione a Oggetti e JAVA Prof. B.Buttarazzi A.A. 2012/2013 Sommario Array Array monodimensionali Array bidimensionali Esercizi 16/01/2013 2 ARRAY Gli array sono oggetti utilizzati in Java per memorizzare
DettagliDati, variabili e operatori. Lezione VI
Dati, variabili e operatori Lezione VI Scopo della lezione Ripassare i concetti di dato e di variabile Introdurre e approfondire i concetti di Tipo di dato Espressione Assegnamento Operatori Introdurre
DettagliLaboratorio di informatica Ingegneria meccanica
( 1 ) Rappresentazione di numeri reali Laboratorio di informatica Ingegneria meccanica Lezione 8 26 novembre 2007 Numerazione posizionale: d n d 1 d 0.d -1 d -2 d -m rappresenta d n B n + + d 1 B 1 + d
DettagliLaboratorio di informatica Ingegneria meccanica
Interi in complemento a 2 () Laboratorio di informatica Ingegneria meccanica Lezione 5 29 ottobre 2007 Con N bit sono rappresentabili tutti gli interi nell'intervallo [-2^(N-), 2^(N-)-] Esempio: 6 bit,
DettagliLinguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C Tipi predefiniti e operatori Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 RICHIAMI char 8 bit Valori interi
Dettagli9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
9 - Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea
DettagliInformatica AA 2005/06. Programmazione M.A. Alberti. Operatori in Java 1. Operatori in Java. Espressioni aritmetiche. Espressioni booleane
Operatori in Java Operatori in Java Corso di laurea in Informatica Operatori aritmetici Operatori di uguaglianza e relazionali Operatori logici in espressioni booleane La precedenza degli operatori L associatività
DettagliRiassunto. I mattoni di base di un programma Java. Oggi. Un programma complicato. Oggi. Perché è complicato? Stefano Mizzaro 1.
I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione, lezione 2 28 settembre
DettagliParte seconda: espressioni, operandi e operatori.
Parte seconda: espressioni, operandi e operatori. 1. Le espressioni Le espressioni sono combinazioni di operatori e operandi. Gli operandi sono a loro volta combinazioni di costanti, variabili semplici
DettagliUtilizza i tipi di dati comuni a tutto il framework.net Accesso nativo ai tipi.net (C# è nato con.net) Concetti fondamentali:
1 Tipi di dati 1 Tipi di dati Utilizza i tipi di dati comuni a tutto il framework.net Accesso nativo ai tipi.net (C# è nato con.net) Concetti fondamentali: Tutto è un oggetto Tutto eredita implicitamente
DettagliLinguaggio C: Espressioni
Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 / 34 Ringraziamenti prof. Mirko Viroli, Università
DettagliIL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate
Fondamenti di Informatica IL LINGUAGGIO JAVA Sintassi, Semantica, Input, Tipi Elementari e Istruzione Condizionale 1 Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per
DettagliLe basi del linguaggio Java
Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una
DettagliGli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento
Linguaggio C Gli Operatori Gli Operatori Gli operatori sono simboli (sia singoli caratteri che loro combinazioni) specificano come devono essere manipolati gli operandi dell espressione Operatori aritmetici
DettagliStruttura dei programmi e Variabili
Linguaggio C Struttura dei programmi e Variabili 1 La struttura generale dei programmi! Struttura del programma: Direttive Funzioni Dichiarazioni Istruzioni Di assegnamento direttive Di ingresso e uscita
DettagliPrima lezione di laboratorio. I mattoni di base di un programma Java. Comandi Unix. Riassunto. Oggi. Un programma complicato.
I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@dimi.uniud.it Programmazione, lezione 2 1 ottobre
DettagliLaboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University
DettagliLinguaggio C: Espressioni
Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università
DettagliProgrammazione I - corso B a.a prof. Viviana Bono
Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 2009-10 prof. Viviana Bono Blocco 12 Riepilogo e complementi sui tipi Ripasso del sistema di tipi
DettagliIl potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO
LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di
DettagliIL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace
IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace di trattare vari domini di dati, detti tipi primitivi dominio dei
DettagliTipi di dato primitivi
Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso
DettagliIL LINGUAGGIO C TIPI DI DATO
IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace di trattare vari domini di dati, detti tipi primitivi dominio dei
DettagliTipi di dati scalari (casting e puntatori) Alessandra Giordani Lunedì 10 maggio 2010
Tipi di dati scalari (casting e puntatori) Alessandra Giordani agiordani@disi.unitn.it Lunedì 10 maggio 2010 http://disi.unitn.it/~agiordani/ I tipi di dati scalari I tipi aritmetici, i tipi enumerativi
DettagliTipi interi lo standard (1)
Tipi interi lo standard (1) Lo standard C lascia al compilatore la decisione di quanti bit assegnare a ogni tipo (char, short int, int, long int). Quello che è sempre garantito è: (signed) char può esprimere
DettagliLINGUAGGI DI PROGRAMMAZIONE!
LINGUAGGI DI PROGRAMMAZIONE! Il potere espressivo di un linguaggio è! caratterizzato da:! quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente)! quali istruzioni
DettagliUn elaboratore è un manipolatore di simboli (segni) intrinsecamente capace di trattare vari. caratteri char caratteri ASCII unsigned char
IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura tt fisica i di ogni elaboratore è intrinsecamente capace di trattare vari domini i di dati, detti tipi i primitivi iti
DettagliLezione 4 Casting, stringhe e caratteri, operatori relazionali, espressioni e variabili booleane
Lezione 4 Casting, stringhe e caratteri, operatori relazionali, espressioni e variabili booleane Barbara Rita Barricelli Corso di Laboratorio di Programmazione -Turno B (Cognomi M-Z) CdL in Informatica
DettagliIntroduzione al C. Lezione 1 Elementi. Rossano Venturini. Pagina web del corso
Introduzione al C Lezione 1 Elementi Rossano Venturini rossano@di.unipi.it Pagina web del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start Lezioni di ripasso C Mercoledì 19 Giovedì
DettagliIntroduzione al linguaggio C
Linguaggio C Introduzione al linguaggio C Sistemi di sviluppo integrati Noti anche come IDE: Integrated Development Environment Un pacchetto software che permette di scrivere, preprocessare, compilare,
DettagliSommario. Introduzione... xv. Giorno 1 Elementi base del linguaggio C
Sommario Introduzione... xv Organizzazione del volume... xv Argomenti...xvi Domande...xvi Verifiche...xvi Domande e risposte...xvi Esercizi...xvi Non è richiesta alcuna precedente esperienza di programmazione...
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti Sintassi e Semantica Parte b: Peculiarità di Java versione 1.2 Questo lavoro è concesso in uso secondo i termini di una licenza
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliChar. Parte 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm
DettagliSTRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe
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 String Una stringa Java rappresenta uno specifico valore e come
DettagliLINGUAGGI DI PROGRAMMAZIONE
LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di
DettagliLinguaggi di Programmazione I Lezione 8
Linguaggi di Programmazione I Lezione 8 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 29 aprile 2008 Identificatori e parole chiavi 3 Commenti.............................................................
DettagliPrimi esempi di programmi. Il tipo int Le variabili Altri tipi interi Operatori di assegnazione
Primi esempi di programmi Il tipo int Le variabili Altri tipi interi Operatori di assegnazione Il tipo int Un int permette di trattare numeri interi 4 byte (32 bit) con la tecnica del complemento a 2 (ma
DettagliChar e bool. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER
Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico
DettagliConversioni fra Tipi di Dati. Luca Abeni
Conversioni fra Tipi di Dati Luca Abeni Tipi di Dato e Conversioni In C, ogni variabile è caratterizzata da un tipo I valori che la variabile può assumere dipendono dal tipo È possibile mescolare variabili
DettagliChar. Unità 2. Corso di Laboratorio di Informatica Ingegneria Clinica BCLR. Domenico Daniele Bloisi
Corso di Ingegneria Clinica BCLR Domenico Daniele Bloisi Docente Ing. Domenico Daniele Bloisi, PhD Ricercatore Dipartimento di Ingegneria Informatica, Automatica e Gestionale Antonio Ruberti Via Ariosto
DettagliEsonero di Informatica I. Ingegneria Medica
Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l
DettagliEsercizi Programmazione I
Esercizi Programmazione I 0 Ottobre 016 Esercizio 1 Funzione valore assoluto Il file.c di questo esercizio deve contenere nell ordine, il prototipo (dichiarazione) di una una funzione abs, che prende in
DettagliProgrammazione in Java (I modulo)
Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto
DettagliNuovi tipi di dato e. Alessandra Giordani Lunedì 26 marzo
Nuovi tipi di dato e costrutto condizionale Alessandra Giordani agiordani@disi.unitn.it Lunedì 26 marzo 2012 http://disi.unitn.it/~agiordani/ Tipi di dato fondamentali int e il tipo di dato che consente
DettagliPrima lezione di laboratorio. I mattoni di base di un programma Java. Riassunto. Comandi Unix. Oggi. Blog & Group.
I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 2 8 ottobre
DettagliQuando è necessario elaborare una certa quantità di dati omogenei si possono usare variabili indicizzate: int a0, a1, a2;
Array Quando è necessario elaborare una certa quantità di dati omogenei si possono usare variabili indicizzate: int a0, a1, a2; Il C supporta questo uso attraverso il tipo di dati array (o vettore): int
DettagliOCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO
CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER
DettagliLinguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi
Linguaggio Java Robusto Non permette costrutti pericolosi Eredità Multipla Gestione della Memoria Orientato agli oggetti Ogni cosa ha un tipo Ogni tipo è un oggetto (quasi) Protegge e gestisce dagli errori
DettagliFondamenti di C++ Input/Output di base
Università della Calabria Corso di Laurea in Ingegneria Elettronica Programmazione Orientata agli Oggetti A.A. 2006/2007 Fondamenti di C++ Paolo Trunfio * * DEIS, Università della Calabria http://si.deis.unical.it/~trunfio
DettagliConversioni fra Tipi di Dati. Informatica 1 / 15
fra Tipi di Dati Informatica 1 / 15 Tipi di Dato e In C, ogni variabile è caratterizzata da un tipo Valori assegnabili: dipendono dal tipo È possibile mescolare variabili di tipo diverso nelle espressioni
DettagliArray. Definizione e utilizzo di vettori
Array Definizione e utilizzo di vettori Array (1/2) Un array o vettore rappresenta un insieme di elementi dello stesso tipo. Sintassi per la creazione di un array: tipo_elementi[] nome; nome = new tipo_elementi[numero_elementi];
DettagliCorso Programmazione
Corso Programmazione 2009-2010 (docente) E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli Dipartimento di Matematica Pura ed Applicata Torre Archimede, Via Trieste 63 PARTE 3 2 Variabili Le
DettagliIntroduzione alle operazioni di I/O con formato e tipi primitivi
Introduzione alle operazioni di I/O con formato e tipi primitivi Un programma C legge normalmente i dati su cui operare dallo standard input (stdin) e comunica con l esterno scrivendo dati sullo standard
DettagliIntroduzione a Java e all'ambiente di sviluppo
Introduzione a Java e all'ambiente di sviluppo Programmazione 2, a.a. 2006-2007 Nota: per esclusivo uso interno al corso, riferimenti bibliografici forniti a lezione Schema minimo di un applicazione public
DettagliTipi di dato. Le variabili in C. Problema: dato in input un carattere, se esso è una lettera minuscola, trasformarla in maiuscola.
Tipi di dato Le variabili in C KP Cap.3 pp.95-129 Cap.5 pp.190-193 DD Cap. 9 pp.352-355 Abbiamo già parlato delle variabili, ed abbiamo fin ora usato il tipo int, ma abbiamo molte altre possibiltà I tipi
Dettagli3) Descrivere l architettura di un elaboratore tramite astrazione a livelli
Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l
DettagliCorso di Laurea Ingegneria Civile Fondamenti di Informatica. Dispensa 13. Tipi ed espressioni. Carla Limongelli Aprile Tipi ed espressioni 1
Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 13 Tipi ed espressioni Carla Limongelli Aprile 2010 Tipi ed espressioni 1 Contenuti Tipi di dato Tipi primitivi per numeri interi: il
DettagliSTRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe
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 String Una stringa Java rappresenta uno specifico valore e come
DettagliLe variabili nel linguaggio C
Linguaggio C Le variabili nel linguaggio C Per iniziare Stampa le parole Hello world printf( Salve gente...\n"); 1 2 Elementi di Base Le Variabili Elementi di base che caratterizzano i programmi scritti
DettagliTipi di dati primitivi 1
La nozione di tipo di dato Tipi di dati primitivi Corso di laurea in Informatica Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che
DettagliTipi ed espressioni. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 5. Carla Limongelli Settembre 2007
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 5 Tipi ed espressioni Carla Limongelli Settembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Tipi ed espressioni 1 Contenuti
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliOCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO
CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER
Dettagli4 - Tipi di dato primitivi
4 - Tipi di dato primitivi Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it
Dettagli