VARIABILI E COSTANTI LOGICHE

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

Calcolo Relazionale.
Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
Agenda per oggi Cinematica 2-D, 3-D 1.
Lavoro di una forza A cura di Orsola Paciolla.
Universita di Camerino
16/11/2004Laboratorio di Programmazione - Luca Tesei1 Espressioni booleane, confronti.
Istruzioni condizionali e blocco
Anno accademico Gli operatori e le espressioni in C.
Il linguaggio C Gli operatori e le espressioni C Language
Dallalgoritmo minimax allalgoritmo alfa-beta. MINIMAX int minimax(stato, livello) { if((livello == max_livello) || condizione_uscita(stato)) { CAMMINO.
Programmazione Procedurale in Linguaggio C++
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Condizioni ed istruzioni condizionali.
Potenziale costante V(x)=cost
Tipi di dato e controllo del flusso Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA.
Linguaggio MATLAB: costrutti tipici (IF,WHILE…)
IL MODELLO DI REGRESSIONE MULTIPLA
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Assegnamento di valore a una variabile Anno Accademico 2009/2010.
Corso di Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
Corso di Laurea in Biotecnologie Informatica (Programmazione)
LISP.
Il linguaggio Fortran 90: 2. Istruzioni di Controllo
Introduzione alla programmazione ll
DAL PROBLEMA ALL'ALGORITMO Problemi e Programmi Paolo Amico
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Laurea.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Dott.ssa.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Dott.ssa.
Fondamenti di Informatica I a.a Il linguaggio C Il controllo di flusso La selezione condizionale Listruzione switch I cicli Le istruzioni break,
Fondamentidi Programmazione Corso: Fondamenti di Programmazione Classe: PARI-DISPARI Docente: Prof. Luisa Gargano Testo: Aho, Ulman, Foundations of Computer.
Programmazione Corso di laurea in Informatica
Unità Didattica 1 Algoritmi
Istruzioni Decisionali
Istruzioni Iterative Nicola Fanizzi
CAPITOLO 7.
Ingegneria della conoscenza e sistemi esperti Dario Bianchi, 1999 Conoscenza e ragionamento Logica dei predicati del primo ordine.
Ingegneria della conoscenza e sistemi esperti Dario Bianchi, 1999 Logica dei predicati del primo ordine.
Il Linguaggio C.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Shell: uso avanzato e script Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
6.4.Strumenti di valutazione: gli scenari Valutazione delle politiche AA 2005/2006 Davide Viaggi.
Lezione II Laboratorio di Programmazione. Sito del corso Lo trovate a:
Java base I: Sintassi e tipi di dati
Programmazione in Java Claudia Raibulet
4 Tipi di dati & variabili
VALORE ASSOLUTO Prof. Giulia Cagnetta
Cicli in Fortran I cicli consentono di eseguire una sequenza di istruzioni più di una volta due tipi: Cicli iterativi Cicli while.
Parte 4 Elementi di Informatica di base
VARIABILI E COSTANTI INTEGER
Programmazione di Calcolatori
Programmazione di Calcolatori
Pierdaniele Giaretta Linguaggio della logica predicativa
Laboratorio di Informatica1 Parte 4 Laboratorio di Informatica Dott.ssa Elisa Tiezzi Dott.ssa Elisa Mori.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
Pierdaniele Giaretta Linguaggio della logica predicativa
Fondamenti di Programmazione
Anno accademico Le istruzioni di controllo in C.
Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente Corso IFTS Ilaria Pietroni.
Le struct con il C. Cosa sono ? Variabili strutturate come i vettori … … ma che superano una limitazione dei vettori.
Algebra di Boole.
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (II) Istruzioni e strutture di controllo.
Università di Torino – Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a prof. Viviana Bono Blocco 7 – Array.
1 Fabio Scotti – Università degli Studi di Milano Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( )
Parte IV Elementi di Informatica 1 I fogli elettronici e Excel Parte IV.
Rappresentazione dell'informazione
Query languages per Basi di Dati Relazionali  Algebra Relazionale:  basato sulla teoria degli insiemi  procedurale  usato per l’implementazione di.
Rapporto incrementale
Condizioni decisionali e costrutto if. 2 Operatori relazionali e logici = Maggiore, maggiore uguale ==, != Uguale a, diverso.
PROGRAMMAZIONE BASH – ISTRUZIONE IF
Transcript della presentazione:

VARIABILI E COSTANTI LOGICHE LOGICAL :: var LOGICAL, PARAMETER :: cost=… valide cost=.TRUE. cost=.FALSE. non valide cost=TRUE cost=.FALSE In generale var = espressione logica

Operatori relazionali nuovo vecchio descrizione == .EQ. uguale /= .NE. diverso > .GT. maggiore >= .GE. maggiore o uguale < .LT. minore <= .LE. minore o uguale

Operatori relazionali N.B. non confondere l’operatore relazionale di uguaglianza == con l’operatore di assegnazione = operazione risultato 6 < 7 .TRUE. 6 > 7 .FALSE. 6 == 7 .TRUE. ‘A’ < ‘B’ .TRUE. i caratteri vengono valutati in ordine alfabetico

Operatori relazionali gli operatori relazionali sono valutati dopo tutti gli operatori matematici le seguenti espressioni sono equivalenti 7+3 < 10+15 (7+3) < (10+15)

Operatori relazionali se l’operazione relazionale riguarda numeri interi e reali gli interi vengono trasformati in numeri reali operazione risultato 6 == 6. .TRUE. operazioni relazionali tra dati numerici e dati di tipo carattere non sono ammessi operazione risultato 6 <= ‘S’ errore

Operatori logici operazione descrizione v1.AND.v2 TRUE se v1 e v2 sono TRUE v1.OR.v2 TRUE se v1 o v2 è TRUE v1.EQV.v2 TRUE se v1 e v2 sono concordi v1.NEQV.v2 TRUE se v1 e v2 sono discordi .NOT.v1 TRUE se v1 è FALSE FALSE se v1 è TRUE

Gerarchia delle operazioni 1) gli operatori aritmetici (con la loro gerarchia) 2) gli operatori relazionali da sinistra verso destra 3) gli operatori .NOT. da sinistra verso destra 4) gli operatori .AND. da sinistra verso destra 5) gli operatori .OR. da sinistra verso destra 6) gli operatori .EQV. e .NEQV. da sinistra verso destra

Gerarchia delle operazioni Esempi: v1=.TRUE. v2=.TRUE. v3=.FALSE. operazione risultato v1.AND.v2.OR.v3 .TRUE. v1.AND.(v2.OR.v3) .FALSE.

Istruzioni di diramazione permettono di selezionare ed eseguire delle particolari parti del codice saltandone altre due tipi: istruzioni IF istruzioni SELECT

Istruzione IF IF (espressione logica) THEN istruzione 1 istruzione 2 …………… blocco 1 ENDIF Se l’espressione logica è .TRUE. vengono eseguite le istruzione contenute nel blocco 1 Se l’espressione logica è .FALSE. si salta alla prima istruzione eseguibile dopo ENDIF

Istruzione IF (esempio) READ(*,*) a y=1.D0 IF (a.GE.0.D0) THEN y=DSQRT(a) ENDIF WRITE(*,*) ‘ valore di y = ‘,y se a<0 si ha y=1 altrimenti è uguale alla radice quadrata di a

Istruzione IF IF (espressione logica) THEN istruzione 1 istruzione 2 …………… blocco 1 ELSE istruzione 3 istruzione 4 …………… blocco 2 END IF

Istruzione IF Se l’espressione logica è .TRUE. vengono eseguite le istruzione contenute nel blocco 1 e si salta alla prima istruzione eseguibile dopo ENDIF Se l’espressione logica è .FALSE. vengono eseguite le istruzione contenute nel blocco 2 e si va alla prima istruzione eseguibile dopo ENDIF

Istruzione IF (esempio) READ(*,*) a y=1.D0 IF (a.GE.0.D0) THEN y=DSQRT(a) ELSE y=0.D0 ENDIF WRITE(*,*) ‘ valore di y = ‘,y se a<0 si ha y=0 altrimenti è uguale alla radice quadrata di a

Istruzione IF IF (espressione logica 1) THEN istruzione 1 blocco 1 …………… blocco 1 ELSE IF (espressione logica 2) THEN istruzione 3 istruzione 4 …………… blocco 2 ELSE istruzione 5 istruzione 6 …………… blocco 3 END IF

Istruzione IF Se l’espressione logica1 è .TRUE. vengono eseguite le istruzione contenute nel blocco 1 e si salta alla prima istruzione eseguibile dopo ENDIF Se l’espressione logica2 è .TRUE. vengono eseguite le istruzione contenute nel blocco 2 e si salta alla prima istruzione eseguibile dopo ENDIF Se le espressioni sono entrambe .FALSE. vengono eseguite le istruzione contenute nel blocco 3 e si va alla prima istruzione eseguibile dopo ENDIF

Istruzione IF (esempio) READ(*,*) a IF (a.GE.1.D0) THEN y=1.D0DSQRT(a) ELSE IF (a.GE.0.D0) THEN y=DSQRT(a) ELSE y=0.D0 END IF se a<0 si ha y=0 se 0=<a<1 y è uguale alla radice quadrata di a Se a>=1 si ha y=1

Istruzione IF con nome [nome] IF (espressione logica 1) THEN …………… blocco 1 ELSE IF (espressione logica 2) THEN [nome] istruzione 3 istruzione 4 …………… blocco 2 ELSE [nome] istruzione 5 istruzione 6 …………… blocco 3 END IF [nome]

Istruzione IF con nome [nome1] IF (espressione logica 1) THEN …………... …………… [nome2] IF (espressione logica 2) THEN …………… END IF [nome2] …………… END IF [nome1]

Istruzione IF logico IF (espressione logica) istruzione Se l’espressione logica è .TRUE. viene eseguita la singola istruzione IF (a>0.d0) y=DSQRT(a)

Istruzione GO TO GO TO label preceduta dal label si salta alla prima istruzione eseguibile dopo quella preceduta dal label

Istruzione SELECT CASE SELECT CASE (espressione CASE) CASE (valori 1) istruzione …………… blocco 1 CASE (valori 2) istruzione …………… blocco 2 ……………….. CASE DEFAULT istruzione …………… blocco default END SELECT

Istruzione SELECT CASE Se l’espressione CASE ha un valore compreso in valori 1 vengono eseguite le istruzione contenute nel blocco 1 Se l’espressione CASE ha un valore compreso in valori 2 vengono eseguite le istruzione contenute nel blocco 2 Se l’espressione CASE ha un valore che non è compreso in nessuno valori descritti dai vari CASE, vengono eseguite le istruzione contenute nel blocco default

Istruzione SELECT CASE Il CASE DEFAULT è facoltativo. Se non è presente e l’espressione CASE ha un valore che non è compreso in nessuno valori descritti dai vari CASE non viene eseguita nessuna istruzione.

Istruzione SELECT CASE (esempio) INTEGER :: valore SELECT CASE (valore) CASE (1,3,5,7,9,) write(*,*) ‘ valore dispari minore di 10’ CASE (2,4,6,8,10) write (*,*) ‘ valore pari minore uguale a 10’ CASE (11:20) write (*,*) ‘ valore tra 11 e 20’ CASE DEFAULT write (*,*) ‘ valore negativo, zero oppure & superiore a 20’ END SELECT