Informatica 22/03/2012.

Slides:



Advertisements
Presentazioni simili
Calcolo di valori approssimati delle radici
Advertisements

LINGUAGGIO DI PROGRAMMAZIONE C
Esercizio Usate il ciclo repeat until (controllo post condizionale) per simulare il prodotto N x M con M somme di N. Esempio: 5 x 3 equivale a fare 5 +5.
Programma: main() { istruzioni } ; assegnazione condizione ciclo istruzione: ;
CAPITOLO 2.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Iterazione while – do while - for.
Selezione - approfondimento
LS Tron Classe 4TC – as 2006/07 LORGANIZZAZIONE DEI PROGRAMMI UD. 8 p. 282.
PROGRAMMARE IN PASCAL (le basi)
I File di testo in Pascal
3TC – 5/11/2010 Cicli while e do.. While Contatori e Totalizzatori.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F3 Iterazione.
Algoritmi e Programmazione
Informatica Generale Marzia Buscemi
Dall’Algoritmo al Programma
numero rette n numero parti piano f(n) f(n -1)n -1 f(n -1) + nn numero parti piano f(n) numero rette n.
INFORMATICA Strutture iterative
Programmazione Procedurale in Linguaggio C++
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Variabili in Javascript.
Linguaggio MATLAB: costrutti tipici (IF,WHILE…)
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
Ricorsione e Debug.
Primo esercizio Scrivere un programma che legge da input
Cosè un programma? LALA PROGRAMMAZIONE PROGRAMMAZIONELALA PROGRAMMAZIONE PROGRAMMAZIONE UN ELENCO DI ISTRUZIONI, APPARTENENTI A UN BEN DEFINITO LINGUAGGIO,
Il linguaggio Fortran 90: 2. Istruzioni di Controllo
Il linguaggio Fortran 90: 5. Formato di I/O e Files
Introduzione alla programmazione lll
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.
Esercitazioni sui File Nicola Fanizzi - DIB Corso (B) di Programmazione CdL in Informatica – I livello A.A. 2003/2004.
Organizzazione del corso
Algoritmi su Tipi Semplici
Istruzioni Decisionali
Istruzioni Iterative Nicola Fanizzi
Dichiarazioni e tipi predefiniti nel linguaggio C
Problema Ci sono 5 signore nel parco. Ognuna di loro ha 1 figlio. Ogni bambino ha 10 figurine di calciatori, per un totale quindi di 50 figurine. Questi.
OPERAZIONI CON STRINGHE Le operazioni più interessanti da fare, per ora, con le stringhe sono: determinare la lunghezza della stringa, cioè quanti caratteri.
CAPITOLO 7.
CAPITOLO 6.
4 Tipi di dati & variabili
Javascript 6 Funzioni. Una funzione sarà eseguita in risposta ad un evento o ad una chiamata diretta. Le funzioni possono essere inserite comodamente.
TURBOPASCAL …. ripassiamo - prof. V. Riboldi -.
PROBLEMA ALGORITMO PROGRAMMA LINGUAGGI di PROGRAMMAZIONE
Cicli in Fortran I cicli consentono di eseguire una sequenza di istruzioni più di una volta due tipi: Cicli iterativi Cicli while.
Lo sviluppo del software e i linguaggi di programmazione
I numeri di Fibonacci.
matematico greco del III° secolo a.c.,
Problema: come dividere due numeri
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
Programmazione Strutturata
TURBOPASCAL …. ripassiamo - prof. V. Riboldi -.
RISOLUZIONE DI EQUAZIONI
Il linguaggio Fortran 90: 3. Procedure e Funzioni
TURBOPASCAL L’iterazione - prof. V. Riboldi -.
Lezione 3 Struttura lessicale del linguaggio
Il ciclo while.  Permette di ripetere un blocco di istruzioni fino a quando non si verifica un determinato evento  Il ciclo while può essere realizzato.
Introduzione a Javascript
Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre.
PROVA INTERCORSO MOD.B a.a RICORSIONE ESERCIZI A1.1-A1.6.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
Interpreti e compilatori
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Informatica e Informatica di Base
Ciclo for nei linguaggi di programmazione. Nei linguaggi di programmazione, il ciclo for è una struttura di controllo iterativa che determina l'esecuzione.
ALGORITMI Dal problema al programma Definizione di algoritmo
Samuele Marino. Cos’è il Repeat Until?  In Pascal, il Repeat Until è un ciclo che consiste nel ripetere (Repeat) una o più istruzioni fino a quando (Until)
Strutture di controllo
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Transcript della presentazione:

Informatica 22/03/2012

Operatori matematici + - * / div mod Div: divisione tra interi, ottieni un quoziente intero. Mod: resto della divisione tra interi Es.: 7 div 4 = 1 7 mod 4 = 3

Dichiarazione di costanti (Nella sezione dichiarativa del programma) Const nomecostante = valore; Es.: Const pi=3.14; risposta=‘si’; Le costanti di tipo alfanumerico vanno chiuse tra apici.

Dichiarazione di variabile VAR nomevariabile:tipo; Es.: VAR a:integer; b:real; c:char; nome:string; cognome:string[30];

Tipi di variabile Char: il tipo char è un singolo carattere alfanumerico. String: il tipo string è una serie di caratteri alfanumerici di lunghezza qualunque tra 1 e 256 elementi. String[n]: è una serie di n caratteri alfanumerici.

I commenti Nel programma Pascal potete inserire dei commenti vostri, degli appunti per chiarimento al programma. I commenti si scrivono tra parentesi graffe. Es.: Var eta:integer; {età della persona}

Funzioni matematiche A:=sqr(x); {restituisce il quadrato di x} A:=sqrt(x); {restituisce la radice quadrata di x} A:=round(x); {restituisce l’arrotondamento di x} A:=trunc(x); {restituisce il troncamento di x} esempio: Sqr(5) = 52=25 Sqrt(25) = √25 =5 Round(3,7) = 4 Trunc(3.7) = 3

Le parentesi Con le parentesi si stabilisce quali operazioni si devono eseguire per prima. 5+6*2-7 = 5+12-7=10 (5+6)*(2-7) = 11*(-5)=-55 (5+6)*2-7 = 11*2-7=22-7=15 Sqr(4-2)/(3*1) = 22/3 =4/3 = 1.333 Sqr[(4-2)/(3*1)] = [2/3]2 =4/9 = 0.444

Operatori logici Informatica. > < = >= <= <> Maggiore Minore Uguale Maggiore o uguale Minore o uguale Diverso Matematica. > < = ≥ ≤ ≠

Operatori boleani And entrambi Or o l’uno o l’altro o entrambi Xor o l’uno o l’altro Not il contrario (non) Esempio. Not (a=b) a diverso da b Not (a<b) a>b

Istruzioni di i/o Input readln(); leggi read(); Output writeln(); scrivi write(); Esempio Writeln(‘area del cerchio ‘, r * r * 3.14);

Output formattati Si impone di quanti caratteri debba essere l’output. Write(numero:n); voglio solo n cifre Write(numero:n:m); voglio solo n cifre di cui m decimali Write(stringa:n); voglio solo n caratteri

Program valuta inizio Chiedi euro,cambio leggi euro,cambio Dollari=euro/cambio Scrivi dollari fine

Program valuta; Var euro,cambio:real; {dati in input} dollari:real; {dati in output} Begin write('Inserisci l’’ importo in euro : '); readln(euro); write('Quale e'' il cambio euro/dollaro ? '); readln(cambio); dollari:=euro/cambio; writeln; writeln('Euro':10, 'Cambio':10,'Dollari':10); writeln(euro:10:2,cambio:10:3,dollari:10:2); readln; End.

Output formattati 1 2 3 4 5 6 7 8 9 e u r o c a m b i 7, 1,

Cicli ripetitivi Sono strutture che servono a ripetere una serie di comandi Per un certo numero di volte Controllato da una condizione

Cicli ripetitivi Il controllo della condizione si può mettere alla fine delle istruzioni (controllo postcondizionale) Oppure all’inizio (controllo precondizionale)

Cicli ripetitivi Ripetizione con controllo finale (finchè) Repeat istruzione 1 istruzione n Until (cond) Ripetizione con controllo iniziale (mentre) While (cond) do Begin Istruzione 1 Istruzione n end

Confronto tre le strutture di ripetizione Controllo dopo condizione istruzioni Esce se falsa condizione istruzioni Falso Vero Falso Vero Esce se vera Controllo prima Ripetizione mentre While (cond) do Begin end Ripetizione finchè Repeat Until (cond)

Ripetizione postcondizionale Pseudolinguaggio Esegui Istruzione 1 ….. Istruzione n Fino a che (condizione) Pascal Repeat Istruzione 1 ….. Istruzione n Until (condizione)

Ripetizione postcondizionale esempio Pascal Repeat Write(inserisci mese); Readln(mese) Until (mese>0) and (mese<13); Ripete la richiesta di un mese finché il numero inserito è tra 1 e 12. Controlla cioè che non si sia inserito 400 perché in quel caso ripete la richiesta.

Writeln(‘inserisci mese’); Readln(mese) Program mese; Var mese: integer; Begin Repeat Writeln(‘inserisci mese’); Readln(mese) Until (mese<13) and (mese>0); Readln; End. inizio Controllo dopo o: mese? i: mese Falso Vero Mese>0 Mese<13 Esce se vera fine

Indovina la carta inizio M=random(10) Chiedi carta Leggi carta i=i+1 Carta=M ? Falso Vero Indovinato in i tentativi fine

Program indovinacarta; { uso del contatore} Var n,m,i: integer; Begin i:=0; {inizializzazione del contatore} Randomize; m:=1+random(9); {sceglie numero a caso tra 1 e 10} Repeat i:=i+1; {incremento del contatore} Write('Quale carta ho scelto tra 1 e 10 ? '); Readln(n) Until (m=n); Writeln('Hai indovinato con ', i,' tentativi !!!'); {controllo del contatore} Readln; End.

Player A inserisce un numero, Player B lo deve indovinare ! inizio Player A chiedi N 1..10 Player B chiedi M 1..10 Leggi N Leggi M Falso Vero N >0 N <11 M = N fine

Program indovina; {il giocatore A inserisce un numero, B lo indovina} uses crt; { gestisce lo schermo} Var n,m: integer; Begin Repeat Write('Giocatore A, inserisci numero tra 1 a 10 : '); {ciclo di controllo} Readln(n) {dell’input} Until (n<11) and (n>0); Clrscr; { pulisce lo schermo} Writeln; {riga vuota} Write('Giocatore B, indovina il numero : '); {ciclo di verifica dell’input} Readln(m) Until (m=n); Writeln; Writeln(‘ Hai indovinato !!!!!!!!!!!!!!!!! '); {uscita dai cicli } Readln; End.

Esercizio Aggiungete un contatore al precedente esercizio con cui CONTARE il numero di tentativi fatti dal giocatore 2.

Program indovina; {il giocatore A inserisce un numero, il giocatore B lo indovina} uses crt; { gestisce lo schermo} Var n,m,i: integer; Begin Repeat Write('Giocatore A, inserisci numero tra 1 a 10 : '); {ciclo di controllo} Readln(n) {dell’input} Until (n<11) and (n>0); clrscr; { pulisce lo schermo} Writeln; {lascia una riga vuota a video} i:=0; Writeln('Giocatore B, indovina il numero '); writeln; i:=i+1; Write(i, ' ^ tentativo : '); {ciclo di verifica dell’input} Readln(m) Until (m=n); Writeln; Writeln(' Hai indovinato in ',i,' tentativi '); {uscita dai cicli } Readln; End.

Esercizio Fate una variante del gioco : si indovina il mese dell’anno in cui si è nati!

Program indovina2; { uso del contatore} uses crt; { gestisce lo schermo} Var n,m,i: integer; Begin i:=0; {inizializzazione del contatore} Repeat Write(‘ Inserisci un mese (numero tra 1 e 12 ) : '); Readln(m) Until (m<13) and (m>0); clrscr; { pulisce lo schermo} Writeln; i:=i+1; {incremento del contatore} Write(‘ Indovina un un mese (numero tra 1 e 12) : '); Readln(n) Until (m=n); Writeln(‘ Hai indovinato con ', i, ' tentativi !!! '); {controllo del contatore} Readln; End.

Player A inserisce un numero. Player B indovina il numero.

Media dell’età inizio Quante persone? Leggi p Tot=0; i=p Chiedi età Leggi età Tot=Tot+età; i=i-1 i=0 Tot=Tot/p Età media = Tot fine

Program mediaeta; Var p,i: integer; tot,eta:real; Begin Writeln(‘ Calcolo dell'' eta'' media '); Write(‘ Quante persone sono? '); Readln(p); tot:=0; {azzeramento del totalizzatore} i:=p; {inizializzazione del contatore} Repeat Write( 'inserisci eta'' : '); Readln(eta); i:=i-1; {decremento del contatore} tot:=tot+eta Until (i=0); tot:=tot/p; {calcolo della media} Writeln(‘ L'' eta'' media delle ', p, ' persone e'' : ', tot:5:2); Readln; End.

Età media di n persone.