Tipo intero. Esempio. Tipo intero: operatori. Programma PortaMonete.java. Tipi base o primitivi
|
|
- Tommasina Palma
- 8 anni fa
- Visualizzazioni
Transcript
1 Tipo intero Tipi base o primitivi Tipi interi: int, byte, short, long Tipi float: float, double Caratteri: char Tipo booleano: boolean Operatori numerici e logici La parola chiave int definisce una variabile di tipo intero esempio: int a; Un int permette di memorizzare un intero di 4 byte (32 bit) con la tecnica del complemento a 2. Costanti di tipo intero sono sequenze di caratteri numerici senza il punto decimale. Se la prima cifra è 0 il numero è interpretato come scritto secondo la notazione ottale. Se la prima cifra è 0 seguito da x (X) il numero è considerato esadecimale. 127 può perciò anche essere scritto sia come 0177 che 0x7f. Tipi base 1 Tipi base 2 Espressioni di tipo intero utilizzano: Tipo intero: operatori operatori unari (che richiedono cioè un solo operando) +, - esempio: -5, -a operatori di tipo aritmetico binari (che richiedono cioè due operandi) +, -, *, /, % (resto della divisione) esempi: 28 / 5 --> 5 (la divisione tra interi restituisce un risultato intero) 28 % 5 --> 3 Esempio /* * Somma di due valori interi */ public class SommaInteri { public static void main(string[] args) { int a, b; int somma; a = 5; b = -3; somma = a + b; System.out.println("a + b = " + somma); Tipi base 3 Tipi base 4 Programma PortaMonete.java Programma PortaMonete.java 1.public class PortaMonete { 2. public static void main(string[] args) { // il portamonete contiene 3. int uncent = 8; // 8 monete da 1 cent, 4. int diecicent = 4; // quattro da 10 cent, 5. int venticent = 3; // e tre da // calcola il valore totale della moneta 8. int totale = uncent*1 + diecicent*10 + venticent*20; // stampa il risultato 11. System.out.print( Valore totale = ); 12. System.out.print(totale); 13. System.out.println( centesimi ); Ho definito 4 variabili di tipo int E:\Java\esempi> java PortaMonete Valore totale = 108 centesimi E:\Java\esempi> Valore totale = 108 centesimi Tipi base 5 Tipi base 6
2 Altri tipi interi La dimensione di un dato intero (numero di bit con cui viene rappresentato) ne determina il range di valori rappresentabili. byte intero di 8 bit short intero di 16 bit long intero di 64 bit costanti di tipo long hanno come ultimo carattere L (l) Tipi floating point float precisione semplice (4 byte = 32 bit) double precisione doppia (8 byte = 64 bit) La dimensione di un dato floating point ne determina il range di valori rappresentabili (numero di bit utilizzati per l esponente); la precisione (numero di bit utilizzati per la mantissa) con cui il valore viene rappresentato (numero di cifre significative). Tipo byte short int Memoria 8 bit 16 bit 32 bit Valore minimo Valore Massimo Tipo double float Memoria 64 bit 32 bit Esponente 10 bit 8 bit Valore Massimo maggiore di maggiore di long 64 bit minore di maggiore di Tipi base 7 Tipi base 8 Costanti floating point Costanti floating point double e-5 sono caratterizzate o dal punto decimale o dall'esponente float 133.3f 78e-5F sono caratterizzate dal suffisso f(f) Tipi floating point : operatori Sono gli stessi operatori visti per i tipi interi Non sono definiti gli operatori relativi alla gestione dei bit La divisione ovviamente produce decimali 28.0 / > 5.6 (il risultato è ancora un double) Esiste l operatore % definito come a%b = a ( (int)(a/b) ) * b 28.0 % > 2.5 (il risultato è ancora un double) Tipi base 9 Tipi base 10 Dichiarazione di costanti con nome: final Una costante è un valore che non cambierà nel corso dell esecuzione del programma. Dichiarazione di una costante con nome: final int N_RIGHE = 80; Per convenzione i nomi di costante sono maiuscoli. Uso delle costanti: è possibile accedere al valore di una costante come a un altra variabile qualsiasi; a parte il valore iniziale, non è possibile modificare il valore della costante nel programma (il compilatore effettua il controllo). Utilità dell uso di costanti con nome: il programma che fa uso di costanti con nome è più facilmente modificabile. Inizializzazione e assegnazione di variabili Una variabile può essere inizializzata nella medesima istruzione che la dichiara: double raggio = 3.1; // corretto Il valore con cui è possibile inizializzare una variabile deve essere consistente con il tipo della variabile. float diametro = 3.2; // errato: 3.2 costante double Si cerca di assegnare un valore con range di valori rappresentabili più ampio (double) ad una variabile con un range di valori rappresentabili più ristretto (float). Rischio di perdita in precisione o di non poter rappresentare il medesimo valore. float diametro = 3.2f; // corretto: 3.2f costante float Tipi base 11 Tipi base 12
3 Conversioni esplicite E possibile forzare la conversione di una valore da un tipo con range di valori rappresentabili più ampio ad un altro con range di valori rappresentabili più ristretto (ad esempio da int a short) con l operatore di conversione esplicita (cast). La conversione esplicita si specifica scrivendo: il nome del tipo a cui si vuole convertire, racchiuso tra parentesi, seguito dalla espressione di cui si deve convertire il valore. Esempi: short InteroPiccolo; // intero a 2 byte int Intero; // intero a 4 byte Intero = 5; InteroPiccolo = (short)intero; // senza cast si verifica un errore di compilazione float raggio = (float)3.2; int b; double a = b / (double)2; oppure double a = (double)b / 2; oppure double a = b / 2.; Programma ConvertiEuro.java 1.public class ConvertiEuro { public static void main(string[] args) { 4. final double VAL_EURO = ; 5. double valoreinlire = , valoreineuro; valoreineuro = valoreinlire / VAL_EURO; 8. System.out.print(valoreInLire + " lire valgono " + valoreineuro + " euro."); lire valgono euro. Tipi base 13 Tipi base 14 Valutazione delle espressioni Le espressioni vengono valutate calcolando il valore di ciascun operando e applicando gli operatori uno alla volta secondo un ordine che dipende: dalla precedenza (priorità) degli operatori che vi occorrono normalmente gli operatori moltiplicativi (* / %) vengono applicati prima degli additivi (+ -) a parità di precedenza, dalla associatività degli operatori normalmente gli operatori a parità di precedenza, vengono valutati da sinistra verso destra dalle parentesi le parentesi hanno la priorità massima rispetto ad ogni altro operatore, per cui si possono utilizzare per alterare l ordine di valutazione delle esepressioni, superando le regole di precedenza e associatività In caso di dubbi usare sempre le parentesi. In genere i programmi diventano anche più leggibili In generale la leggibilità aumenta spezzando espressioni complesse in più istruzioni semplici Tipi base 15 12/3 + 4 vale 8 Valutazione delle espressioni e conversioni: esempi 2(3+4) errata, perché? (1/2) + (1/2) quanto vale? (1./2) + (1/2.) quanto vale? (1./2) + (1/2) quanto vale? int intero = 10; double razionale; razionale = intero; int intero; double razionale = 10.3; intero = razionale; // errore Tipi base 16 Regole di conversione Operatori: precedenza e associatività Risultato di un espressione Tipo di dato degli operandi Operatore ( ) ++ (postfisso) -- (postfisso) Associatività da sinistra a destra double Almeno un operando e double. + (unario) (unario) ++ (prefisso) -- (prefisso) da destra a sinistra float long Almeno un operando e float e nessun operando e double. Non ci sono operandi float o double; e almeno un operando e long. new (tipo)espressione * / % + - da destra a sinistra da sinistra a destra da sinistra a destra int Non ci sono operandi float o double e nessun operando e long. = += -= *= /= da destra a sinistra Tipi base 17 Tipi base 18
4 Tutti gli operatori: priorità Funzioni matematiche postfix operators unary operators creation or cast multiplicative additive shift Relational equality bitwise AND bitwise inclusive OR bitwise exclusive OR logical AND logical OR Conditional Assignment []. (params) expr++ expr-- ++expr --expr +expr -expr ~! new (type)expr * / % + - << >> >>> < > <= >= instanceof ==!= & ^ &&? : = += -= *= /= %= &= ^= = <<= >>= >>= La classe Math mette a disposizione una serie di metodi statici che implementano le più note funzioni matematiche. Attenzione ogni volta che si utilizza uno di questi metodi occorre sempre specificare anche il nome della classe. Ad esempio: double Math.sqrt(x) calcola la radice quadrata di x double Math.pow(x, y) calcola x elevato alla y La classe Math contiene anche la definizione di alcune costanti matematiche con la migliore approssimazione possibile: Math.E Math.PI Quando operatori con la medesima priorita sono presenti in un espressione si deve seguire una regola che stabilisca l ordine di valutazione. Tutti gli operatori, ad esclusione degli operatori di assegnazione, vengono valutati da sinistra verso destra. Gli operatori di assegnamento vengono valutati da destra a sinistra. Tipi base 19 Tipi base 20 Funzioni matematiche Il tipo restituito dipende dagli argomenti abs(x) Restituisce il valore assoluto max(a, b) Restituisce il maggiore dei due valori min(a, b) Restituisce il minore dei due valori Il tipo restituito è un double (escluso round che restituisce un long) ceil(x) Restituisce l intero più piccolo maggiore o uguale all'argomento floor(x) Restituisce l intero più grande minore o uguale all'argomento rint(x) Restituisce l intero più vicino a x round(x) Restituisce l intero più vicino a x sqrt(x) Restituisce la radice quadrata pow(a, b) Operazione di elevamento a potenza a b exp(x) Funzione esponenziale ((Math.E) x ) log(x) Restituisce il logaritmo naturale (in base e) Funzioni trigonometriche sin(x) Restituisce il seno dell'angolo cos(x) Restituisce il coseno dell'angolo tan(x) Restituisce la tangente dell'angolo acos(x) Funzione inversa di cos asin(x) Funzione inversa di sin atan(x) Funzione inversa di tan atan2(y, x) Restituisce la componente θ del punto (r, θ) in coordinate polari che corrisponde a (x, y) in coordinate Cartesiane per x positivo atan2(y,x)= atan(y/x) Per riferirsi a π si può utilizzare la costante Math.PI random() Restituisce un numero "a caso" compreso fra 0.0 e 1.0 escluso Tipi base 21 Tipi base 22 FunzioniTrigonometriche.java 1. public class FunzioniTrigonometriche { 2. public static void main(string[] args) { 3. int ang = 45; 4. double seno = Math.sin(Math.toRadians(ang)); 5. double pi = Math.asin(seno)*4; 6. System.out.print("sen(45 )="); 7. System.out.println(seno); 8. System.out.print("pi greco="); 9. System.out.println(pi); 10. System.out.print("Math.PI= "); 11. System.out.println(Math.PI); E:\Java\esempi\Math> java FunzioniTrigonometriche sen(45 )= pi greco= Math.PI= E:\Java\esempi\Math> Tipo boolean Un tipo di dato molto utile nella programmazione è il tipo delle espressioni logiche (utilizzate nei blocchi di decisione): questo tipo di dato è rappresentato in java dal tipo primitivo boolean (dal nome del matematico irlandese George Boole [ ] che ne ha formulato un algebra). L algebre di Boole si basa sui seguenti elementi: un dominio composto dai due valori vero e falso che si denotano con i valori e ; tre operatori (detti booleani) l operatore not di negazione o complementazione (!) l operatore or di disgiunzione ( ) l operatore and di congiunzione (&) Tipi base 23 Tipi base 24
5 Tipo boolean Espressioni boolean possono assumere solo i due valori corrispondenti alle costanti predefinite (vero) e (falso), variabili booleane assumono per default il valore Operatori booleani &,, ^,!, &&, And & Or Xor ^ Not! && e si comportano come i corrispondenti & e, terminando la valutazione dell espressione non appena questa è definita Tipi base 25 Operatore! di negazione! vale! vale Operatore && di congiunzione condizionale Operatore di disgiunzione condizionale Operatori logici a && b vale se a e b valgono (l operando b viene valutato solo se a vale ); && e && valgono && vale a b vale se almeno uno tra a e b vale (l operando b viene valutato solo se a vale ); e valgono vale Tipi base 26 Valutazione di!, &, &&,, Nella valutazione di espressioni di tipo boolean (che coinvolgono cioè operatori logici) l operatore di negazione! ha la precedenza maggiore tra tutti gli operatori logici e non; l operatore and ha precedenza sull or; Esercizio: si valutino le seguenti espressioni booleane! &&!( && ) ( && )!( && ) Tipi base 27 Tipo boolean Operatori relazionali (permettono di confrontare fra di loro due valori): == uguale!= diverso > maggiore < minore >= maggiore o uguale <= minore o uguale 1. public class Confronti { + è l operatore di concatenazione fra stringhe, se un operando non è una stringa, viene automaticamente convertito in maniera opportuna 2. public static void main(string[] args) { 3. int a=0, c=5; 4. boolean b=(c>3) (a++>0); 5. System.out.println("(c>3) (a++>0): "+b+" a="+a); 6. b=(c>3) (a++>0); 7. System.out.println("(c>3) (a++>0): "+b+" a="+a); (c>3) (a++>0): a=0 (c>3) (a++>0): a=1 Tipi base 28 Esercizi Predicati 10 > < > >= >= == 5 10 == 10 10!= 5 10!= 10 Le espressioni di tipo boolean sono chiamate anche predicati (o condizioni) i predicati sono espressioni in cui possono apparire sia operatori relazionali che operatori logici definire un predicato che sia vero se n è compreso tra 0 e 10 (estremi inclusi) (n>=0)&&(n<=10) vale se (e solo se) il valore di n è compreso tra 0 e 10 Tipi base 29 Tipi base 30
6 È possibile dichiarare variabili di tipo boolean Variabili boolean boolean npari; // n è pari boolean npositivo; // n è positivo boolean npariepositivo; // n è pari e positivo È possibile assegnare a una variabile boolean il valore (della valutazione) di un predicato /* n è pari se * il resto della divisione per due vale zero */ npari = (n%2) == 0; npositivo = n>0; Esercizi Qual è il valore stampato dal seguente frammento di codice? Perché? boolean a, b, c; a = ; b = ; c = a &&!b; b = (b && c) (!b &&!c); a = (b && c) (!b &&!c); c =!(a && b); Nei predicati è possibile usare anche variabili boolean npariepositivo = npari && npositivo; Tipi base 31 Tipi base 32 Esercizio Concatenazione di stringhe (cenni) Dati tre numeri a, b, c forniti da tastiera in ordine crescente, verificare che esista un triangolo avente come misura dei lati tali numeri e stabilire di che tipo e' il triangolo. Si effettuino opportuni controlli per verificare che i numeri siano stati forniti da tastiera in ordine crescente. (Si ricorda che, dati tre numeri a, b, c ordinati in modo crescente, esiste un triangolo avente come misura dei lati tali numeri se c<a+b). 1. public class Concatenazione { public static void main(string[] args) { 4. int a=1, b=2; 5. System.out.println("a+b="+a+b); a+b=12 6. System.out.println("a+b="+a+b); L operatore + viene valutato da sinistra verso destra perciò a+b +a concatena la stringa a+b= con la stringa 1, il risultato di questa operazione viene quindi concatenato alla stringa 2 Si doveva scrivere: 6. System.out.println("a+b="+(a+b)); a+b=3 Tipi base 33 Tipi base 34 Tipo char Il tipo char permette di memorizzare lettere, cifre, caratteri di punteggiatura, operatori, caratteri speciali. Il tipo char è un tipo numerico. A ciascun valore di tipo char è associato un codice numerico (numero naturale) stabilito dal sistema di codifica chiamata Unicode (16 bit = 2 byte). Con un char è possibile trattare cifre e caratteri di alfabeti diversi (cirillico, ebraico, arabo, ). Una costante di tipo char viene rappresentata dal carattere (o dalla corrispondente sequenza di escape) tra apici singoli. char c = a ; // ho memorizzato in c il codice del carattere a char d = \n ; // ho memorizzato in d il codice del carattere newline Tipi base 35 Aritmetica dei char Gli operatori aritmetici possono essere applicati anche ai char (in quanto i char sono interi memorizzati con 16 bit). Inoltre: i codici assegnati ai caratteri alfabetici minuscoli sono consecutivi; i codici assegnati ai caratteri alfabetici maiuscoli sono consecutivi; i codici numerici dei caratteri minuscoli sono maggiori dei codici numerici dei caratteri maiuscoli; i codici assegnati ai caratteri numerici (cifre da 0 a 9 ) sono consecutivi. Quindi: viene garantito il normale ordinamento alfabetico: a < b, ma B < a (le lettere maiuscole precedono le minuscole); sono lecite anche le operazioni di incremento e decremento. (int)( 3-0 ) vale 3 (char)( 0 +3) vale 3 char c1 = a, c2; c2 = ++c1; // c2 vale b Tipi base 36
7 Caratteri unicode I caratteri estesi (unicode) sono rappresentati dalla sequenza \uxxxx (X cifra esadecimale) char digit = \u0f23 ; // è la cifra 3 secondo l alfabeto tibetano I codici minori di 0x7F corrispondono ai codici ASCII \u0033 è il codice della cifra 3 In linea di principio qualunque carattere unicode riconosciuto come lettera o cifra potrebbe essere utilizzato in un identificatore (ammesso di avere un editor adatto) Variabili locali Per ora stiamo considerando solo variabili dichiarate nel metodo main(). Le variabili dichiarate nell ambito di un metodo si chiamano variabili locali (sono utilizzabili e visibili solo all interno del metodo, ossia nel suo corpo). E possibile dichiarare variabili locali a livello di blocco utilizzando una coppia di { che delimiti il blocco. Tali variabili non saranno visibili e quindi utilizzabili al di fuori del blocco. Esempio: public class SommaInteri { public static void main(string[] args) { int a, b; { // inizio del blocco int somma; // somma visibile solo all interno del blocco a = 5; b = -3; somma = a + b; System.out.println("a + b = " + somma); // fine del blocco System.out.println(a + " + " + b + " = " + somma); // errore: somma non è visibile Tipi base 37 Tipi base 38
Tipi di dato-prima parte
Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Meccanica (A-K) Tipi di dato-prima parte Ing. Agnese Pinto 1 di 15 Tipi di dato Sommario Tipi di dato Classificazione dei tipi di dato Tipi
DettagliVariabili e tipi di dato
Variabili e tipi di dato Tutte le variabili devono essere dichiarate, specificandone il tipo La dichiarazione deve precedere l uso Il tipo è un concetto astratto che esprime: L allocazione di spazio per
DettagliLe variabili. Olga Scotti
Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.
DettagliTipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere
Tipi elementari, costanti 1 Tipi di dati VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori Tipi Semplici intero reale carattere Strutturati 2 1 Tipo intero Gli interi servono
Dettagli4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0
Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice
DettagliRappresentazione dell informazione Codifica Binaria
Fondamenti di Informatica Rappresentazione dell informazione Codifica Binaria Fondamenti di Informatica - D. Talia - UNICAL 1 Rappresentazione dell informazione Tutta l'informazione in un calcolatore è
DettagliInformatica. Rappresentazione dei numeri Numerazione binaria
Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione
DettagliAppunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio
Appunti di informatica Lezione 2 anno accademico 2015-2016 Mario Verdicchio Sistema binario e logica C è un legame tra i numeri binari (0,1) e la logica, ossia la disciplina che si occupa del ragionamento
DettagliAlgebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
Dettagli3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
3 - Variabili 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
DettagliSistemi di Numerazione Binaria NB.1
Sistemi di Numerazione Binaria NB.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 05 La rappresentazione dell informazione Carla Limongelli Ottobre 2011 http://www.dia.uniroma3.it/~java/fondinf/ La rappresentazione
DettagliArchitettura degli Elaboratori I Esercitazione 1 - Rappresentazione dei numeri
Architettura degli Elaboratori I Esercitazione 1 - Rappresentazione dei numeri 1 Da base 2 a base 10 I seguenti esercizi richiedono di convertire in base 10 la medesima stringa binaria codificata rispettivamente
DettagliInformatica Generale 02 - Rappresentazione numeri razionali
Informatica Generale 02 - Rappresentazione numeri razionali Cosa vedremo: Rappresentazione binaria dei numeri razionali Rappresentazione in virgola fissa Rappresentazione in virgola mobile La rappresentazione
DettagliIntroduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari
Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro 6 Giugno 2007 Felice Iavernaro (Univ.
DettagliAlgebra Booleana ed Espressioni Booleane
Algebra Booleana ed Espressioni Booleane Che cosa è un Algebra? Dato un insieme E di elementi (qualsiasi, non necessariamente numerico) ed una o più operazioni definite sugli elementi appartenenti a tale
Dettagli(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, 7155 2 = 1, 431 0, 431 2 = 0, 862 0, 896 2 = 1, 792 0, 724 2 = 1, 448 0, 448 2 = 0, 896
2 Esercizio 2.2 La rappresentazione esadecimale prevede 16 configurazioni corrispondenti a 4 bit. Il contenuto di una parola di 16 bit può essere rappresentato direttamente con 4 digit esadecimali, sostituendo
DettagliJava:Struttura di Programma. Fabio Scanu a.s. 2014/2015
Java:Struttura di Programma Fabio Scanu a.s. 2014/2015 Altre Attenzioni da riservare Java è Case Sensitive: La variabile «a» e la variabile «A» sono diverse Java ha alcune regole di scrittura: I nomi delle
DettagliGli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori
Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine
DettagliUniversità di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.
Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record
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
DettagliINFORMATICA - I puntatori Roberta Gerboni
1 2 I puntatori in C++ Il puntatore un tipo di dato scalare, che consente di rappresentare gli indirizzi delle variabili allocate in memoria. Dominio: Il dominio di una variabile di tipo puntatore è un
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliDall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere
Dettagli2. Codifica dell informazione
2. Codifica dell informazione Codifica Una codifica è una regola per associare in modo univoco i valori di un dato da codificare con sequenze di simboli. La corrispondenza definita dalla codifica è arbitraria,
DettagliRichiesta pagina PHP (es: index.php)
PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con
DettagliAlcune regole di base per scrivere un programma in linguaggio C
Alcune regole di base per scrivere un programma in linguaggio C Un programma il linguaggio C (listato) viene scritto in formato testo ed archiviato in un file: *.c Per scrivere un listato C si utilizza
DettagliRappresentazione delle informazioni
Rappresentazione delle informazioni Rappresentazione delle informazioni L informatica si occupa di rappresentare ed elaborare informazioni diverse: numeri caratteri audio immagini video I caratteri: ASCII
DettagliMATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c
Caratteristiche MATLAB Linguaggio di programmazione orientato all elaborazione di matrici (MATLAB=MATrix LABoratory) Le variabili sono matrici (una variabile scalare equivale ad una matrice di dimensione
Dettagli3. La sintassi di Java
pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer
DettagliEsercitazione Informatica I AA 2012-2013. Nicola Paoletti
Esercitazione Informatica I AA 2012-2013 Nicola Paoletti 4 Gigno 2013 2 Conversioni Effettuare le seguenti conversioni, tenendo conto del numero di bit con cui si rappresenta il numero da convertire/convertito.
DettagliInformazione analogica e digitale
L informazione L informazione si può: rappresentare elaborare gestire trasmettere reperire L informatica offre la possibilità di effettuare queste operazioni in modo automatico. Informazione analogica
DettagliLezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE. Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche arch.
Lezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE Comunicazione importante dalla prossima settimana, la lezione del venerdì si terrà: dalle 15:00 alle 17.15 in aula 311 l orario
DettagliLogica e codifica binaria dell informazione
Politecnico di Milano Corsi di Laurea in Ingegneria Matematica e Ingegneria Fisica Dipartimento di Elettronica ed Informazione Logica e codifica binaria dell informazione Anno Accademico 2002 2003 L. Muttoni
DettagliFORMULE: Operatori matematici
Formule e funzioni FORMULE Le formule sono necessarie per eseguire calcoli utilizzando i valori presenti nelle celle di un foglio di lavoro. Una formula inizia col segno uguale (=). La formula deve essere
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
DettagliALGEBRA DELLE PROPOSIZIONI
Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra
DettagliObiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico
M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p. 3/43 M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p.
DettagliAlcune nozioni di base di Logica Matematica
Alcune nozioni di base di Logica Matematica Ad uso del corsi di Programmazione I e II Nicola Galesi Dipartimento di Informatica Sapienza Universitá Roma November 1, 2007 Questa é una breve raccolta di
DettagliNascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti
Nascita di Java L uscita di Java, verso la metà degli anni novanta, fu accolta con molto entusiasmo dalla comunità dei programmatori e dei provider di servizi internet perché permetteva agli utenti del
DettagliStruttura di un programma Java
Struttura di un programma Java Un programma in Java è un insieme di dichiarazioni di classi. Una classe non può contenere direttamente delle istruzioni, ma può contenere la dichiarazione di metodi, che
DettagliI sistemi di numerazione
I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono
DettagliTesti di Esercizi e Quesiti 1
Architettura degli Elaboratori, 2009-2010 Testi di Esercizi e Quesiti 1 1. Una rete logica ha quattro variabili booleane di ingresso a 0, a 1, b 0, b 1 e due variabili booleane di uscita z 0, z 1. La specifica
DettagliInformatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter
Informatica B a.a 2005/06 (Meccanici 4 squadra) Scaglione: da PO a ZZZZ PhD. Ing. Michele Folgheraiter Architettura del Calcolatore Macchina di von Neumann Il calcolatore moderno è basato su un architettura
DettagliCorso di Informatica
Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down
DettagliAlgebra di Boole ed Elementi di Logica
Algebra di Boole ed Elementi di Logica 53 Cenni all algebra di Boole L algebra di Boole (inventata da G. Boole, britannico, seconda metà 8), o algebra della logica, si basa su operazioni logiche Le operazioni
DettagliEsercizi di programmazione in C
Esercizi di programmazione in C Esercizio 1 Scrivere un programma in linguaggio C che legga da tastiera una sequenza di lunghezza ignota a priori di numeri interi positivi. Il programma, a partire dal
DettagliCodifica binaria dei numeri relativi
Codifica binaria dei numeri relativi Introduzione All interno di un calcolatore, è possibile utilizzare solo 0 e 1 per codificare qualsiasi informazione. Nel caso dei numeri, non solo il modulo ma anche
DettagliLA RAPPRESENTAZIONE DELLE INFORMAZIONI
ISTITUTO TECNICO E LICEO SCIENTIFICO TECNOLOGICO ANGIOY LA RAPPRESENTAZIONE DELLE INFORMAZIONI Prof. G. Ciaschetti DATI E INFORMAZIONI Sappiamo che il computer è una macchina stupida, capace di eseguire
Dettagli11010010 = 1*2^7 + 1*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 210
Il sistema BINARIO e quello ESADECIMALE. Il sistema di numerazione binario è particolarmente legato ai calcolatori in quanto essi possono riconoscere solo segnali aventi due valori: uno alto e uno basso;
DettagliTipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:
Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante
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 visto come usare l editor per scrivere un programma Java. Abbiamo analizzato riga per
DettagliLa selezione binaria
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E01 Esempi di programmi A. Miola Ottobre 2011 1 Contenuti Vediamo in questa lezione alcuni primi semplici esempi di applicazioni
DettagliAlessandro Pellegrini
Esercitazione sulle Rappresentazioni Numeriche Esistono 1 tipi di persone al mondo: quelli che conoscono il codice binario e quelli che non lo conoscono Alessandro Pellegrini Cosa studiare prima Conversione
DettagliParte II Indice. Operazioni aritmetiche tra valori rappresentati in binario puro. Rappresentazione di numeri con segno
Parte II Indice Operazioni aritmetiche tra valori rappresentati in binario puro somma sottrazione Rappresentazione di numeri con segno modulo e segno complemento a 2 esercizi Operazioni aritmetiche tra
DettagliLa gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni
La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C
Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliLaboratorio di Informatica
per chimica industriale e chimica applicata e ambientale LEZIONE 2 Rappresentazione delle informazioni: numeri e caratteri 1 Codice La relazione che associa ad ogni successione ben formata di simboli di
DettagliLABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B
LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe
DettagliCalcolatori: Algebra Booleana e Reti Logiche
Calcolatori: Algebra Booleana e Reti Logiche 1 Algebra Booleana e Variabili Logiche I fondamenti dell Algebra Booleana (o Algebra di Boole) furono delineati dal matematico George Boole, in un lavoro pubblicato
Dettagli+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice
Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica
DettagliSISTEMI DI NUMERAZIONE E CODICI
SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema
DettagliCodifica binaria e algebra di Boole
Codifica binaria e algebra di Boole Corso di Programmazione A.A. 2008/09 G. Cibinetto Contenuti della lezione Codifica binaria dell informazione Numeri naturali, interi, frazionari, in virgola mobile Base
DettagliParte 1. Vettori di bit - AA. 2012/13 1.1
1.1 Parte 1 Vettori di bit 1.2 Notazione posizionale Ogni cifra assume un significato diverso a seconda della posizione in cui si trova Rappresentazione di un numero su n cifre in base b: Posizioni a n
DettagliOperazioni Aritmetiche e Codici in Binario Giuseppe Talarico 23/01/2013
Operazioni Aritmetiche e Codici in Binario Giuseppe Talarico 23/01/2013 In questo documento vengono illustrate brevemente le operazioni aritmetiche salienti e quelle logiche ad esse strettamente collegate.
DettagliConcetto di Funzione e Procedura METODI in Java
Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile
DettagliLa codifica delle informazioni
La codifica delle informazioni Bit e byte Come già visto l elaboratore è in grado di rappresentare informazioni al proprio interno solo utilizzando cifre binarie (bit) che solitamente vengono manipolate
DettagliCODIFICA BINARIA. ... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità.
I METODI DI NUMERAZIONE I numeri naturali... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità. Il numero dei simboli usati per valutare la numerosità costituisce la base
DettagliAlgebra di Boole. Le operazioni, nell algebra booleana sono basate su questi tre operatori: AND ( ), OR ( + ),NOT ( )
Algebra di Boole L algebra di Boole prende il nome da George Boole, matematico inglese (1815-1864), che pubblicò un libro nel 1854, nel quale vennero formulati i principi dell'algebra oggi conosciuta sotto
DettagliRappresentazione di informazioni con un alfabeto finito
Rappresentazione di informazioni con un alfabeto finito Sia A = { a 1,, a k } un insieme (alfabeto) di k simboli, detti anche lettere. Quante sono le sequenze composte da n simboli (anche ripetuti) di
DettagliAppunti del corso di Informatica 1. 6 Introduzione al linguaggio C
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliAPPUNTI DI ELETTRONICA DIGITALE
APPUNTI DI ELETTRONICA DIGITALE ITIS MARCONI-GORGONZOLA docente :dott.ing. Paolo Beghelli pag.1/24 Indice 1.ELETTRONICA DIGITALE 4 1.1 Generalità 4 1.2 Sistema di numerazione binario 4 1.3 Operazioni con
DettagliElementi di Informatica. ( Lezione II, parte I ) Sistemi di numerazione: binario, ottale ed esadecimale
Elementi di Informatica ( Lezione II, parte I ) Sistemi di numerazione: binario, ottale ed esadecimale Il sistema di numerazione posizionale decimale Nella numerazione posizionale ogni cifra del numero
DettagliSISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE
SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE La base del sistema decimale è 10 I simboli del sistema decimale sono: 0 1 2 3 4 5 6 7 8 9 Il sistema di numerazione decimale è un sistema posizionale. L aggettivo
DettagliLinguaggio del calcolatore. Algebra di Boole AND, OR, NOT. Notazione. And e or. Circuiti e reti combinatorie. Appendice A + dispense
Linguaggio del calcolatore Circuiti e reti combinatorie ppendice + dispense Solo assenza o presenza di tensione: o Tante componenti interconnesse che si basano su e nche per esprimere concetti complessi
DettagliSistemi di Numerazione
Fondamenti di Informatica per Meccanici Energetici - Biomedici 1 Sistemi di Numerazione Sistemi di Numerazione I sistemi di numerazione sono abitualmente posizionali. Gli elementi costitutivi di un sistema
DettagliCodifica binaria dei numeri
Codifica binaria dei numeri Caso più semplice: in modo posizionale (spesso detto codifica binaria tout court) Esempio con numero naturale: con 8 bit 39 = Codifica in virgola fissa dei numeri float: si
DettagliEsempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione
Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione Fondamenti di Informatica Michele Ceccarelli Università del Sannio ceccarelli@unisannio.it Angelo Ciaramella DMI-Università degli
Dettagli10 - Programmare con gli Array
10 - Programmare con gli 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
DettagliPROVA INTRACORSO TRACCIA A Pagina 1 di 6
PROVA INTRACORSO DI ELEMENTI DI INFORMATICA MATRICOLA COGNOME E NOME TRACCIA A DOMANDA 1 Calcolare il risultato delle seguenti operazioni binarie tra numeri interi con segno rappresentati in complemento
DettagliFondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C
Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Lab 02 Tipi semplici in C Obiettivo dell esercitazione Acquistare familiarità con i tipi di dato semplici supportati
DettagliLibreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione
Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione basata sul campo d utilizzo. I principali package sono:
DettagliRappresentazione dei numeri in un calcolatore
Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri
DettagliAPPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)
ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,
DettagliSistema operativo: Gestione della memoria
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e
DettagliUniversità degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella
Corso di Informatica Puntatori Anno Accademico 2010/2011 Francesco Tortorella Variabili, registri ed indirizzi Abbiamo visto che la definizione di una variabile implica l allocazione (da parte del compilatore)
DettagliRappresentazione delle informazioni
Rappresentazione delle informazioni Abbiamo informazioni (numeri, caratteri, immagini, suoni, video... ) che vogliamo rappresentare (e poter elaborare) in un calcolatore. Per motivi tecnologici un calcolatore
DettagliAlgebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.
Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra
DettagliLA NOTAZIONE SCIENTIFICA
LA NOTAZIONE SCIENTIFICA Definizioni Ricordiamo, a proposito delle potenze del, che = =.000 =.000.000.000.000 ovvero n è uguale ad seguito da n zeri. Nel caso di potenze con esponente negativo ricordiamo
DettagliCorso Base. Liceo Norberto Rosa Bussoleno Prof. Angelo GIORGIO
Corso Base Liceo Norberto Rosa Bussoleno Prof. Angelo GIORGIO Java Java è un Linguaggio di Programmazione orientato agli oggetti. Un Linguaggio di Programmazione è un linguaggio ad alto livello, dotato
DettagliCodifica dei numeri negativi
E. Calabrese: Fondamenti di Informatica Rappresentazione numerica-1 Rappresentazione in complemento a 2 Codifica dei numeri negativi Per rappresentare numeri interi negativi si usa la cosiddetta rappresentazione
Dettaglivoid funzioneprova() { int x=2; cout<<"dentro la funzione x="<<x<<endl; }
FUNZIONI 57. Cosa servono le funzioni? A spezzare il programma in diverse parti relativamente indipendenti fra loro, ovvero interagenti sono attraverso i parametri di input ed IL VALORE di uscita. In questo
DettagliElementi di informatica
Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni
DettagliIntroduzione. Università degli studi di Cassino. Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39 081 7723364
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Introduzione Ing Saverio De e-mail: saveriodevito@porticieneait Tel: +39 8 7723364
DettagliRisolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati
Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari
DettagliAlgebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE
Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Andrea Bobbio Anno Accademico 2000-2001 Algebra Booleana 2 Calcolatore come rete logica Il calcolatore può essere visto come una rete logica
DettagliModulo 4: Ereditarietà, interfacce e clonazione
Modulo 4: Ereditarietà, interfacce e clonazione Argomenti Trattati: Classi, Superclassi e Sottoclassi Ereditarietà Ereditarietà ed Attributi Privati Override super Ereditarietà e Costruttori Polimorfismo
DettagliDati testuali. Caratteri e stringhe. Tipi di dato testuali. Dati testuali. Il sistema dei tipi C. Rappresentazione dei testi
Tipi di dato testuali Caratteri Stringhe Caratteri e stringhe 5 Tipi di dato testuali I programmi visti finora erano in grado di elaborare esclusivamente informazioni numeriche Numeri eri (), numeri reali
Dettagli