Elementi del linguaggio Python

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Elementi del linguaggio Python"

Transcript

1 Elementi del linguaggio Python 07/08 - Lezione Massimo Lauria <massimo.lauria@uniroma.it> Venerdì, 9 Settembre 07

2 Tipi numerici e calcoli

3 In Python ogni dato ha un tipo type(5) # il tipo dell'espressione 5 type('ciao') # il tipo dell'espressione 'ciao' type(.) # il tipo dell'espressione. type(5.0) # il tipo dell'espressione # somma tra dati di tipo diverso type(. + 5) # il tipo del risultato 5 + 'ciao' # altra somma tra dati di tipo diverso <class 'int'> <class 'str'> <class 'float'> <class 'float'> 8. <class 'float'> Traceback (most recent call last): File "<stdin>", line, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str'

4 Numeri naturali e interi I numeri naturali N sono 0,,,,... in alcuni libri lo zero non è incluso, in altri sì. I numeri interi Z sono...,,,, 0,,,,... contengono numeri negativi. Gli interi sono codificati in Python con elementi di tipo int type(-) type(0) type(00) <class 'int'> <class 'int'> <class 'int'>

5 Python come una calcolatrice Le operazioni comuni +,-,* sono supportate 5 + # Out: # Out: -5 *7 # Out: 5 6 Naturalmente i risultati sono di tipo int type( + ) type(5 - ) type(* ) <class 'int'> <class 'int'> <class 'int'> 5

6 Numeri non interi I matematica l insieme dei numeri reali è denotato da R. alcuni hanno rappresentazioni posizionali finite, 0, 57 la maggior parte di essi non ne ha c π π π 7 6

7 Rappresentazione dei numeri reali I numeri reali sono rappresentati come sequenze finite di cifre prima e dopo la virgola: E.g., ;, ; 0,0000 ;, E.g. { o π non sono rappresentabili type(.5) * - type(-) type(-.0) 5 <class 'float'> <class 'int'> <class 'float'> 7

8 Floating point numbers (float) La rappresentazione mantiene alcune cifre decimali, le più significative, spostando la virgola ˆ ˆ e+9.e-6 notazione scientifica: NeE invece di N ˆ 0 E 8

9 float è una rappresentazione approssimata Non vengono mantenute le cifre decimali meno significative e0 + e-0 == e0 # 0**0 + 0**(-0) uguale a 0**0? (.0**(/00))**00.e+ 0. True Questo può portare ad errori se non si gestisce l approssimazione. 9

10 Conversione di tipi: da float a int Se x è un float allora int(x) è ottenuto troncando i decimali int(.5) int(-.5) int(.875e+) int(0.5)

11 Conversione di tipi: da int a float Se x è un int allora float(x) è ottenuto prendendo le cifre più significative float() float(0) float( ) e+6

12 Operazioni tra int e float Le operazioni aritmetiche tra int e float sono operate convertendo l operando intero a float eseguendo l operazione Anche se il risultato è intero # Out: * 5 # Out: 90.0

13 Divisione intera // e resto (int) 5 // 6 // 5 % 6 % 0

14 Divisione intera // e resto (float) 5. //.0 5 //.0 7. //. 7. %

15 Resto è sempre positivo 5 // -5 // 5 % -5 % 6. //. -6. //. 6. %. -6. %

16 Divisione esatta / La divisione esatta è sempre un float / /.0 / 5.0 /

17 Divisioni per zero int / 0 // 0 % 0 Traceback (most recent call last): File "<stdin>", line, in <module> ZeroDivisionError: division by zero Traceback (most recent call last): File "<stdin>", line, in <module> ZeroDivisionError: integer division or modulo by zero Traceback (most recent call last): File "<stdin>", line, in <module> ZeroDivisionError: integer division or modulo by zero 7

18 Divisioni per zero float.0 / // % 0.0 Traceback (most recent call last): File "<stdin>", line, in <module> ZeroDivisionError: float division by zero Traceback (most recent call last): File "<stdin>", line, in <module> ZeroDivisionError: float divmod() Traceback (most recent call last): File "<stdin>", line, in <module> ZeroDivisionError: float modulo 8

19 Elevazione a potenza **8 ** ** 8.0 **0.5 **00.0** e+0 se un operando è float, il risultato è float se base e esponente sono interi: potenza positiva int potenza negativa float 9

20 Precedenza degli operatori. ** con associatività a destra. /, //, % con associatività a sinistra. +, - come operatori aritmetici. Eccezioni e altri operatori nella documentazione * ** * // 5 ( * ) ** * ( // 5 ) Le parentesi non necessarie migliorano la leggibilità. 0

21 Modulo matematico (I) import math math.pi math.sin(0.0) math.sin(math.pi / ) math.sin(math.pi) math.e math.log(math.e * math.e) e

22 Modulo matematico (II) math.log0(0.0) math.log0(00.0) math.log0(.0e) math.log(**0) math.log(/)

23 Altre conversioni da float a int import math int(5.) # troncamento round(5.) # arrotonda all'intero più vicino round(5.5) # arrotonda all'intero più vicino round(5.9) # arrotonda all'intero più vicino math.floor(5.) # intero minore più vicino math.floor(-5.) # intero minore più vicino math.ceil(5.) # intero maggiore più vicino math.ceil(-5.) # intero maggiore più vicino

24 Variabili

25 Variabili L associazione di un nome al valore di un espressione. nome_variable = espressione Durante l esecuzione nel codice inizializzata con un valore il valore può cambiare nel tempo l informazione nella variabile è riutilizzata la variable viene distrutta 5

26 Uso e riuso di variabili pigreco =. # area di un cerchio di raggio 0 raggio = 0 area = pigreco * raggio ** print(area) # Out:.0 # ricalcolo dell'area con raggio 0 raggio = 0 area = pigreco * raggio ** print(area) # Out:

27 Il tipo di una variabile Tipo della variabile = tipo del dato memorizzato Può variare durante il programma approx_pigreco = print(type(approx_pigreco)) # meglio usare un'approssimazione migliore approx_pigreco =.59 print(type(approx_pigreco)) 5 6 <class 'int'> <class 'float'> 7

28 Name not defined Non è possibile utilizzare una variable prima che essa sia definita. Se lo facciamo l interprete Python darà un errore. print( * non_definita) Traceback (most recent call last): File "<stdin>", line, in <module> NameError: name 'non_definita' is not defined 8

29 Stringhe di testo Le stringhe sono sequenze di bit (o piuttosto di byte) che codificano del testo. 'ciao' # Out: 'ciao' print('ciao') # Out: ciao print("l'altra mattina") # Out: L'altra mattina # stringa vuota '' # Out: '' print('') # Out:

30 Apici singoli e doppi Se nel programma si usano gli apici ' e " per delimitare le stringhe, come si inseriscono questi apici all interno delle stringhe stesse. print("una stringa che contiene l'apostrofo") print('una stringa "protetta" da apici singoli') una stringa che contiene l'apostrofo una stringa "protetta" da apici singoli Ma se li voglio mischiare? 0

31 Caratteri speciali o non stampabili Per inserire certi caratteri nelle stringhe del programma esistono le sequenza escape \n \' \" \t \\ print("sequenze escape\n\t\\n - a capo") print("\t\\\' - apice singolo\n\t\\\" - apice doppio") print("\t\\\\ - backslash") Sequenze escape \n - a capo \' - apice singolo \" - apice doppio \\ - backslash

32 Costruzione di testi Python ha delle operazioni per l elaborazione di stringhe nome = "Giorgio" cognome = "Rossi" print(nome + " " + cognome) #concatenazione

33 Organizzazione del codice

34 Astrazioni Astrazione: l attodinontenereinconsiderazione unaopiùproprietàdiunoggettocomplesso, cosìdapoteranalizzarnealtre.

35 Funzioni Variabili: riuso del valore di espressioni Funzioni: riuso di una sequenze di istruzioni def nome_funzione(parametro, parametro,..., parametron): istruzione_ istruzione_... istruzione_m return espressione # opzionale 5 6 Per usare una funzione già creata nome_funzione(valore, valore,..., valoren) 5

36 Funzioni: esempio def area_cilindro(raggio, altezza): pigreco =.59 area = pigreco * raggio ** circonferenza = * pigreco * raggio return * area + altezza * circonferenza print(area_cilindro(0, 5)) # Out: 9.77 print(area_cilindro(0, 0)) # Out: raggio, altezza sono i parametri formali (0,5) e (0,0) sono i parametri effettivi 6

37 Nomi legali per variabili e funzioni può contenere lettere maiuscole o minuscole può contenere il carattere _ può contenere numeri Non può iniziare con un numero variable = 0 variabile_con_nome_lungo = 0 NomeMaiuscolo = 0 def _my_print(): pass 5 7

38 Letture Capitolo Paragrafi.,. 8

Elementi del linguaggio Python

Elementi del linguaggio Python Elementi del linguaggio Python Informatica@SEFA 08/09 - Lezione 5 Massimo Lauria http://massimolauria.net/courses/infosefa08/ Mercoledì, Ottobre 08 Capitoli del libro su Python

Dettagli

Elementi di Base. Introduzione a Python.

Elementi di Base. Introduzione a Python. Elementi di Base Introduzione a Python http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Panoramica Elementi di base della sintassi (struttura,

Dettagli

Il linguaggio Python

Il linguaggio Python Il linguaggio Python Capitolo 2 Variabili, Espressioni e Comandi Prof. Mauro Gaspari: gaspari@cs.unibo.it Il Linguaggio Python Python e' un linguaggio imperativo con alcune caratteristiche funzionali.

Dettagli

Programmi. 2018/ Lezione 3. Massimo Lauria

Programmi. 2018/ Lezione 3. Massimo Lauria Programmi Informatica@SEFA 2018/2019 - Lezione 3 Massimo Lauria http://massimolauria.net/courses/infosefa2018/ Venerdì, 28 Settembre 2018 1 Questionario Questo è lo stesso

Dettagli

Laboratorio 01. Programmazione - CdS Matematica. Michele Donini 27 Ottobre 2015

Laboratorio 01. Programmazione - CdS Matematica. Michele Donini 27 Ottobre 2015 Laboratorio 01 Programmazione - CdS Matematica Michele Donini 27 Ottobre 2015 Prendiamo confidenza Apriamo la console di Python: python Python 2.7.3 (default, Sep 26 2013, 20:03:06) [GCC 4.6.3] on linux2

Dettagli

Laboratorio 01. Programmazione - CdS Matematica. Mirko Polato 6 Novembre 2018

Laboratorio 01. Programmazione - CdS Matematica. Mirko Polato 6 Novembre 2018 Laboratorio 01 Programmazione - CdS Matematica Mirko Polato 6 Novembre 2018 Prendiamo confidenza Apriamo la console di Python: python Python 2.7.3 (default, Sep 26 2013, 20:03:06) [GCC 4.6.3] on linux2

Dettagli

Il linguaggio JavaScript

Il linguaggio JavaScript Il linguaggio JavaScript JavaScript è un linguaggio di programmazione ad alto livello compatto e comprensibile. sintassi e semantica sono formalmente definite, compatto e comprensibile. appartiene alla

Dettagli

Laboratorio 01. Programmazione - CdS Matematica. Ivano Lauriola 31 Ottobre 2017

Laboratorio 01. Programmazione - CdS Matematica. Ivano Lauriola 31 Ottobre 2017 Laboratorio 01 Programmazione - CdS Matematica Ivano Lauriola 31 Ottobre 2017 Prendiamo confidenza Apriamo la console di Python: python Python 2.7.3 (default, Sep 26 2013, 20:03:06) [GCC 4.6.3] on linux2

Dettagli

Programmare. Definire una sequenza di istruzioni che specificano come effettuare una elaborazione

Programmare. Definire una sequenza di istruzioni che specificano come effettuare una elaborazione Python Programmare Definire una sequenza di istruzioni che specificano come effettuare una elaborazione Le istruzioni devono essere date in un linguaggio comprensibile dal calcolatore. In generele questi

Dettagli

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Dettagli

Corso di Fondamenti di Informatica Il sistema dei tipi in C++

Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout

Dettagli

Esercizi in Laboratorio

Esercizi in Laboratorio Esercizi in Laboratorio Informatica@SEFA 2018/2019 - Laboratorio 1 Massimo Lauria http://massimolauria.net/courses/infosefa2018/ Lunedì, 8 Ottobre 2018 1 Funzioni che restituiscono

Dettagli

Tipi di dato primitivi

Tipi 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

Dettagli

Il linguaggio Python

Il linguaggio Python Il linguaggio Python Capitolo 2 Variabili, Espressioni e Comandi Prof. Mauro Gaspari: mauro.gaspari@unibo.it Il Linguaggio Python Python è un linguaggio imperativo con alcune caratteristiche funzionali.

Dettagli

Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU

Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU Tutorato di Fondamenti di Informatica PROFESSORE: GIAN LUCA MARCIALIS TUTOR: DAVIDE GHIANI, GIULIA ORRU Organizzazione Informazioni di contatto: informatica.marcialis@gmail.com Davide Ghiani Giulia Orrù

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione 1 C-Introduzione.tex: Versione 1.0, aa 2005-2006 Linguaggi di programmazione (1) Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili, direttamente

Dettagli

Strutturare il codice

Strutturare il codice Strutturare il codice Informatica@SEFA 08/09 - Lezione 7 Massimo Lauria http://massimolauria.net/courses/infosefa08/ Mercoledì, 0 Ottobre 08 Valori indefiniti Valore None None

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013

Laboratorio 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

Dettagli

Tipi di dato e variabili. Walter Didimo

Tipi 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

Dettagli

Logica booleana, Costrutto IF

Logica booleana, Costrutto IF Logica booleana, Costrutto IF Informatica@SEFA 207/208 - Lezione 4 Massimo Lauria http://massimolauria.net/courses/infosefa207/ Mercoledì, 4 Ottobre 207 La logica booleana 2

Dettagli

Laboratorio di Python

Laboratorio di Python Laboratorio di Python Variabili e Funzioni Lab02 1 Marzo 2017 Outline Variabili modificabili Teoria Esempi ed esercizi Funzioni Teoria Esempi ed esercizi Esercizi per casa Outline Variabili modificabili

Dettagli

Esercizi Programmazione I

Esercizi 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

Dettagli

Corso di Fondamenti di Informatica Università degli Studi di Cassino

Corso di Fondamenti di Informatica Università degli Studi di Cassino Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono l algoritmo Cominciamo ad analizzare la

Dettagli

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point) Rappresentazione di Numeri Reali Un numero reale è una grandezza continua Può assumere infiniti valori In una rappresentazione di lunghezza limitata, deve di solito essere approssimato. Esistono due forme

Dettagli

Struttura di un programma C++

Struttura di un programma C++ Struttura di un programma C++ // Programma semplice in C++ #include using namespace std; int main() { cout

Dettagli

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17 Introduzione al C Informatica Generale - Introduzione al C Versione 1.0, aa 2005-2006 p.1/17 Linguaggi di programmazione Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili,

Dettagli

Codifica dell informazione

Codifica 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

Dettagli

IL LINGUAGGIO C TIPI DI DATO

IL 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

Dettagli

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO

Il 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

Dettagli

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale Analogico vs. Digitale LEZIONE II La codifica binaria Analogico Segnale che può assumere infiniti valori con continuità Digitale Segnale che può assumere solo valori discreti Analogico vs digitale Il computer

Dettagli

Programmazione in Python. Moreno Marzolla

Programmazione in Python. Moreno Marzolla Programmazione in Python Moreno Marzolla http://www.moreno.marzolla.name/ Copyright 2011, Moreno Marzolla (http://www.moreno.marzolla.name/teaching/labinf2011/) This work is licensed under the Creative

Dettagli

Esecuzione condizionale ed espressioni logiche

Esecuzione condizionale ed espressioni logiche Esecuzione condizionale ed espressioni logiche Informatica@SEFA 08/09 - Lezione 6 Massimo Lauria http://massimolauria.net/courses/infosefa08/ Venerdì, 5 Ottobre 08 Ripartiamo

Dettagli

Somma di numeri binari

Somma di numeri binari Fondamenti di Informatica: Codifica Binaria dell Informazione 1 Somma di numeri binari 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Esempio: 10011011 + 00101011 = 11000110 in base e una base Fondamenti di

Dettagli

Tipi di dato semplici

Tipi di dato semplici Tipi di dato semplici Perché dichiarare una variabile? 2 Una variabile rappresenta uno spazio di memoria centrale Prima dell esecuzione del programma deve essere chiaro quanto spazio serve al programma

Dettagli

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi MASTER Information Technology Excellence Road (I.T.E.R.) Programmare in C Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Tipi di Dati Valori Un insieme

Dettagli

Gocce di Java. Gocce di Java. Tipi di dato primitivi. Pierluigi Crescenzi. Università degli Studi di Firenze

Gocce 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

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java

INTRODUZIONE 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

Dettagli

LINGUAGGI DI PROGRAMMAZIONE!

LINGUAGGI 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

Dettagli

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

Dettagli

Java e i Tipi di dati primitivi. Parte 3

Java e i Tipi di dati primitivi. Parte 3 Java e i Tipi di dati primitivi Parte 3 La nozione di tipo di dato Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che rappresenta

Dettagli

Programmazione Caratteri, stringhe, tipo unit ed ennuple

Programmazione Caratteri, stringhe, tipo unit ed ennuple Programmazione Caratteri, stringhe, tipo unit ed ennuple Samuel Rota Bulò DAIS Università Ca Foscari di Venezia. Outline Caratteri e stringhe Booleani Il tipo unit Ennuple I caratteri Il tipo char rappresenta

Dettagli

Cominciamo ad analizzare la rappresentazione delle informazioni... di Cassino. C. De Stefano Corso di Fondamenti di Informatica Università degli Studi

Cominciamo ad analizzare la rappresentazione delle informazioni... di Cassino. C. De Stefano Corso di Fondamenti di Informatica Università degli Studi Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono l algoritmo Cominciamo ad analizzare la

Dettagli

Programmare. Definire una sequenza di istruzioni che specificano come effettuare una elaborazione

Programmare. Definire una sequenza di istruzioni che specificano come effettuare una elaborazione Python Programmare Definire una sequenza di istruzioni che specificano come effettuare una elaborazione Le istruzioni devono essere date in un linguaggio comprensibile dal calcolatore. In generele questi

Dettagli

Dati due punti sul piano calcolare la loro distanza

Dati 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

Dettagli

I tipi di dato del Fortran

I tipi di dato del Fortran I tipi di dato del Fortran In Fortran sono disponibili 5 tipi di dato (tipi primitivi o predefiniti): INTEGER REAL COMPLEX CHARACTER LOGICAL tipi numerici tipi non numerici Non considereremo il tipo COMPLEX

Dettagli

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

Dettagli

LINGUAGGI DI PROGRAMMAZIONE

LINGUAGGI 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

Dettagli

Appunti di Laboratorio Il Linguaggio Python - Lezione 1

Appunti di Laboratorio Il Linguaggio Python - Lezione 1 Appunti di Laboratorio Il Linguaggio Python - Lezione 1 Giancarlo de Gasperis, Dario Del Moro, Luca Giovannelli Dipartimento di Fisica, Università di Roma Tor Vergata A.A. 2016/2017 GdG, DDM, LG (Fisica,

Dettagli

Tipi di dato semplici

Tipi di dato semplici Tipi di dato semplici Informatica B Tipi di dati q In C esistono diversi tipi di dato built-in, tra cui int: numeri interi float: numeri con virgola (singola precisione) double : numeri con virgola (doppia

Dettagli

Il linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1

Il linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1 Il linguaggio C I linguaggi di programmazione ad alto livello sono linguaggi formali ( sintassi e semantica formalmente definite) però sono compatti e comprensibili. Le tipologie di linguaggi sono: procedurali

Dettagli

Costanti e Variabili

Costanti e Variabili Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli

Dettagli

Precisazione sui tipi in ANSi C

Precisazione 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:

Dettagli

Informatica. Stefano Lodi. 16 novembre in linguaggio C

Informatica. Stefano Lodi. 16 novembre in linguaggio C Informatica in linguaggio C Stefano Lodi 16 novembre 2005 0-0 Algoritmi, linguaggi, programmi, processi trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante istruzioni

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 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,

Dettagli

Programmazione. Tipi di dato primitivi. Francesco Tiezzi. Scuola di Scienze e Tecnologie Sezione di Informatica Università di Camerino

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

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Input/Output, Variabili, Tipi e Stringhe Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2016/2017 Fondamenti di Informatica T-1 Allegra De Filippo 1 / 19 VARIABILI

Dettagli

La codifica binaria. Informatica B. Daniele Loiacono

La codifica binaria. Informatica B. Daniele Loiacono La codifica binaria Informatica B Introduzione Il calcolatore usa internamente una codifica binaria ( e ) per rappresentare: i dati da elaborare le istruzioni dei programmi eseguibili Fondamenti di codifica

Dettagli

Rappresentazione della informazione

Rappresentazione della informazione Rappresentazione della informazione Rappresentazione digitale dei dati Numeri interi Numeri reali Caratteri (C++: int) (C++ float e double) (C++ char) Memoria del calcolatore è finita L insieme dei numeri

Dettagli

Struttura dei programmi e Variabili

Struttura 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

Dettagli

Laboratorio di Python

Laboratorio di Python Laboratorio di Python Booleani, Selezione, Input Lab03 7 Marzo 2018 Outline Correzione esercizi per oggi Booleani e Selezione (if) Teoria Esercizi Input Teoria Esercizi Esercizi per casa Esercizio 1 per

Dettagli

Architettura degli Elaboratori e Laboratorio

Architettura degli Elaboratori e Laboratorio Architettura degli Elaboratori e Laboratorio Docente: Francesco Giacomini Assistente: Matteo Manzali Università di Ferrara, Anno Accademico 2013/2014 Rappresentazione binaria delle informazioni 12 Rappresentazione

Dettagli

#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main()

#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main() Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine

Dettagli

BASI LINGUAGGIO. Programmazione Web 1

BASI LINGUAGGIO. Programmazione Web 1 BASI LINGUAGGIO Programmazione Web 1 Commen0 Riga singola // This is a comment Riga mul8pla /* This is a sec8on of mul8line comments which will not be interpreted */ Programmazione Web 2 Istruzioni Un

Dettagli

La "macchina" da calcolo

La macchina da calcolo La "macchina" da calcolo Abbiamo detto che gli algoritmi devono essere scritti in un linguaggio "comprensibile all'esecutore" Se il nostro esecutore è il "calcolatore", questo che linguaggio capisce? che

Dettagli

IL LINGUAGGIO C TIPI DI DATO

IL 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

Dettagli

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

Dettagli

Il corpo di tutte le funzioni deve essere contenuto tra parentesi graffe

Il corpo di tutte le funzioni deve essere contenuto tra parentesi graffe Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine

Dettagli

Rappresentazione di interi

Rappresentazione di interi Rappresentazione dei numeri Rappresentazione di interi Supponiamo 2 byte (16 bit) 2 16 = 65536 [-32767, 32768] con m bit 2 m -1 numeri Se prendiamo come segno il primo bit abbiamo ad esempio (01111111)

Dettagli

La codifica delle informazioni numeriche ed alfanumeriche.

La codifica delle informazioni numeriche ed alfanumeriche. Prof.ssa Bianca Petretti La codifica delle informazioni numeriche ed alfanumeriche. Appunti del docente RAPPRESENTAZIONE INFORMAZIONI ALFANUMERICHE codifica ASCII (7 bit): 128 caratteri (da 000 a 127);

Dettagli

1

1 Manuali di C Linguaggio C B. W. Kernigan, D. M. Ritchie Jackson La guida completa al C H. Schildt McGraw-Hill Fondamenti di Informatica 1 Linguaggio C Creato nei primi anni 70 per sviluppare il S.O. Unix

Dettagli

Le variabili nel linguaggio C

Le 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

Dettagli

Laboratorio di informatica Ingegneria meccanica

Laboratorio 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

Dettagli

Un elaboratore è un manipolatore di simboli (segni) intrinsecamente capace di trattare vari. caratteri char caratteri ASCII unsigned char

Un 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

Dettagli

Operazione +. La somma di due oggetti str s1, s2 è un nuovo oggetto str dato dalla concatenazione dei caratteri di s1 e s2

Operazione +. La somma di due oggetti str s1, s2 è un nuovo oggetto str dato dalla concatenazione dei caratteri di s1 e s2 Tipi numerici Python gestisce diversi formati numerici. int è il formato standard per la gestione dei numeri interi. x = 42 type(x) # > int float è il formato standard per la gestione dei numeri con la

Dettagli

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

Dettagli

Codifica dell informazione numerica. Matteo Re, Nicola Basilico,

Codifica dell informazione numerica. Matteo Re, Nicola Basilico, Codifica dell informazione numerica Matteo Re, matteo.re@unimi.it Nicola Basilico, nicola.basilico@unimi.it Informazioni (edizione 2017-2018) Turno A (cognomi A - F) Nicola Basilico, dip. via Comelico,

Dettagli

Rappresentazione dei numeri. Rappresentazione di insiemi numerici mediante insiemi finiti di stringhe di bit Problemi:

Rappresentazione dei numeri. Rappresentazione di insiemi numerici mediante insiemi finiti di stringhe di bit Problemi: Argomenti trattati Rappresentazione dei numeri Calcoli in binario Rappresentazione di numeri naturali Rappresentazione di numeri relativi Rappresentazione di numeri reali (Virgola mobile) Rappresentazione

Dettagli

Numeri floating point

Numeri floating point Numeri floating point Corso di Calcolo Numerico, a.a. 2008/2009 Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Numeri floating point 1 / 32 Rappresentazione

Dettagli

Programmazione in Java (I modulo)

Programmazione 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

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni

Dettagli

Conversione binario-ottale/esadecimale. Conversione binario-ottale/esadecimale. Rappresentazione di Numeri Interi Positivi (numeri naturali)

Conversione binario-ottale/esadecimale. Conversione binario-ottale/esadecimale. Rappresentazione di Numeri Interi Positivi (numeri naturali) Conversione binario-ottale/esadecimale Conversione binario-ottale/esadecimale Nella rappresentazione ottale (B=8) si usano gli 8 simboli,, 2, 3, 4, 5, 6, 7 In quella esadecimale (B=6) i 6 simboli,, 2,

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi di Numerazione Francesco Fontanella I sistemi di numerazione Sono stati inventati i SISTEMI DI NUMERAZIONE: Forme di rappresentazione dei numeri

Dettagli

Laboratorio di Informatica Ingegneria Clinica Lezione 9/11/2011. Prof. Raffaele Nicolussi

Laboratorio 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

Dettagli

Primi programmi in C

Primi programmi in C Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica In breve Uso del compilatore gcc Struttura di un programma

Dettagli

Introduzione alla programmazione in linguaggio C

Introduzione alla programmazione in linguaggio C Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008

Dettagli

Linguaggio Macchina. Numeri binari. E il linguaggio che il microprocessore comprende. In Esadecimale

Linguaggio Macchina. Numeri binari. E il linguaggio che il microprocessore comprende. In Esadecimale Linguaggio Macchina Numeri binari In Esadecimale E il linguaggio che il microprocessore comprende 1 Numeri Esadecimali Sono composti con 16 simboli: 0 1 2 3 4 5 6 7 8 9 A B C D E F Un numero di 4 cifre

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Introduzione al linguaggio Java - Input/Output, Variabili, Tipi Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De

Dettagli

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

Dettagli

Il linguaggio C. Notate che...

Il linguaggio C. Notate che... Il linguaggio C Notate che... 1 Il C è un linguaggio a blocchi int main (void) { blocco } 2 Il C è un linguaggio a blocchi (2) Non è possibile mischiare dichiarazioni e comandi! int main (void) { } Dichiarazione

Dettagli

Rappresentazione numeri relativi e reali

Rappresentazione numeri relativi e reali Rappresentazione numeri relativi e reali Lezione 2 Rappresentazione numeri relativi Rappresentazione numeri reali Rappresentazione in Modulo e Segno Rappresentare separatamente il segno (mediante un bit

Dettagli

La codifica binaria. Informatica B. Daniele Loiacono

La codifica binaria. Informatica B. Daniele Loiacono La codifica binaria Informatica B Introduzione Il calcolatore usa internamente una codifica binaria (0 e 1) per rappresentare: i dati da elaborare (numeri, testi, immagini, suoni, ) le istruzioni dei programmi

Dettagli

Codifica dell informazione numerica

Codifica dell informazione numerica Codifica dell informazione numerica Nicola Basilico, nicola.basilico@unimi.it Architetture degli Elaboratori I, Laboratorio - Corso di Laurea in Informatica, A.A. 201-2018 Informazioni (edizione 2017-2018)

Dettagli

Introduzione al linguaggio C

Introduzione al linguaggio C Introduzione al linguaggio C Abbiamo già visto come un programma non sia altro che un algoritmo codificato in un linguaggio di programmazione. Problema: quale linguaggio scegliere per la codifica di un

Dettagli

Aritmetica dei Calcolatori

Aritmetica dei Calcolatori Aritmetica dei Calcolatori Nicu Sebe March 14, 2016 Informatica Nicu Sebe 1 / 34 Operazioni su Bit Bit Scienza della rappresentazione e dell elaborazione dell informazione Abbiamo visto come i computer

Dettagli

Un piccolo esempio: script

Un piccolo esempio: script Un piccolo esempio: script # Script per calcolare il perimetro e l'area # di un rettangolo, dati i suoi lati side1=input('inserisci la lunghezza della base: ') side2=input("inserisci la lunghezza dell'altezza:

Dettagli