Esercizio 1: Problema. Risoluzione Esercizi. Esercizio 1: Flow Chart

Documenti analoghi
Risoluzione Esercizi. Esercizio 1: Flow Chart

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Reti di Calcolatori

PROBLEMI ALGORITMI E PROGRAMMAZIONE

PROGRAMMAZIONE STRUTTURATA

L AREA DELLE PRINCIPALI FIGURE DELLA GEOMETRIA PIANA

Esercizi su Scratch. Esegui la Somma e il Prodotto dei numeri inseriti in Input fino a che non inserisco la vocale e.

Risoluzione di un problema

Rappresentazione degli algoritmi

Strutture di Controllo Iterative: Istruzioni While e Do

Informatica Generale Andrea Corradini Algoritmi: ordinamento per inserimento e ricorsione

Corso di Fondamenti di Informatica Macroarea di Ingegneria 2017/18. Tutor: prof. Francesco De Vincenzi

Esercizio: dispari-pari

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

L informazione. Bateson, Ricevere informazioni vuol dire necessariamente ricevere notizie di differenza (Es.: Luce accesa/spenta, 1/0,...

Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.

Rappresentazione con i diagrammi di flusso (Flow - chart)

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

DISPENSE DI PROGRAMMAZIONE

LA METAFORA DELL UFFICIO

ISTRUZIONI A B K A, B, K A<B? SI A<B? SI A<B? SI

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

APPUNTI DI INFORMATICA

1. Si considerino: l insieme A degli iscritti all Università di Pavia e l insieme B dei residenti a Pavia. Descrivere

La principale modalità di calcolo è l applicazione di funzioni

1) Premessa: Al posto dei numeri posso utilizzare delle.. m) La differenza tra due numeri qualsiasi:...

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1

Rappresentazione degli algoritmi

292 Capitolo 11. Polinomi Scrivi un polinomio di terzo grado nelle variabili a e b che sia omogeneo.

Programmazione a blocchi. Algobuild Prof. Sergio Roselli

Strutture di Controllo

Rappresentazione generale del problema e fasi di progettazione

Ricorsione. DD cap. 5 pp KP cap. 5 pp

Rapporti e proporzioni

Esercizi. perimetro > X area > Y. dove al posto di X e Y vanno scritti il valori corrispondenti.

Strutture di Controllo

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

OSSERVA LE FIGURE: RIPASSA DI BLU IL CONFINE DEI TRIANGOLI, DI VERDE IL CONFINE DEI RETTANGOLI, DI ROSSO IL CONFINE DEI QUADRATI.

ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }

LABORATORIO 4 - Iterazioni

del Linguaggio C Istruzioni di iterazione

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Caratteristiche di un calcolatore elettronico

Esercitazione 3. Espressioni booleane I comandi if-else e while

Problemi e algoritmi. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 (da U. de' Liguoro - Alg. & Spe. 03/04)

Problemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come

IL Calcolo letterale (o algebrico). (teoria pag ;esercizi pag , es.59 66) 1) Premessa: Al posto dei numeri posso utilizzare delle..

Ministero della Difesa Direzione Generale per il Personale Militare I Reparto

Linguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato»

Programmazione strutturata

Dall analisi alla codifica (1)

IMPLEMENTARE. le sue variabili devono essere registrabili su memoria le variabili devono poter essere messe in relazione tra loro

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Macroarea di Ingegneria 2016/17. Tutor: prof. Francesco De Vincenzi

Strutture di Controllo IF-ELSE

Geometria figure piane Raccolta di esercizi

Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output

BREVE RIEPILOGO SULLE FRAZIONI

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Dall algoritmo al programma

Chi non risolve esercizi non impara la matematica.

ESERCIZI. 1.2 Dire quali dei seguenti insiemi sono vuoti e descriverne il complementare nell insieme dei numeri reali: C:= {x R x 1 3 e x 1 2 };

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base

INTRODUZIONE ALLA PROGRAMMAZIONE

Dall analisi del problema alla definizione dell algoritmo A. Ferrari

VERIFICA DI MATEMATICA 11 febbraio 2016 classe 2 a D. Nome...Cognome... ARITMETICA

Competenza matematica e competenze di base in scienze e tecnologia

Ing. Lorenzo Vismara

Esercizi sugli Algoritmi numerici

Parte 1: tipi primitivi e istruzioni C

Informatica A (per gestionali) A.A. 2004/2005. Esercizi C. Strutture di controllo

Laboratorio di Programmazione M-Z

LABORATORIO di INFORMATICA

DECLINAZIONE COMPETENZE SCUOLA PRIMARIA: MATEMATICA CLASSI 1 a 2 a 3 a

Rapporti e proporzioni

La programmazione nel linguaggio JavaScript. Il programma

CORSO DI LAUREA IN INGEGNERIA ELETTRICA

Corso di Informatica Modulo T1 C1-Sequenza e selezione

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Introduzione agli Algoritmi

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);

ESERCIZIO 1 (Funzioni)

Esercitazione di tutorato del 17 e 19 Ottobre 2018

ESERCIZI DI PROGRAMMAZIONE C/C++

Programmazione Strutturata

Algoritmi. Informatica B. Daniele Loiacono

Algoritmi e diagrammi di flusso versione biennio

4U Informatica 30/10/2015 Prova di verifica (soluzioni) N.A.

Moltiplicazione veloce di interi

Algoritmi. Informatica B. Daniele Loiacono

03.x1. esercizi Sui cicli. 03-X1_Esercizi_[02] Versione del: giovedì 14 novembre Andrea Zoccheddu CORSO INFORMATICA ITI ANGIOY SASSARI

Come ragiona il computer. Problemi e algoritmi

Sistemi di Elaborazione delle Informazioni

Rapporti e proporzioni

ARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa.

Laboratorio di Programmazione Laurea in Bioinformatica

Transcript:

Esercizio 1: Problema Calcolare area e perimetro di una figura geometrica fornita in input. Le possibili figure geometriche sono cerchio, triangolo, rettangolo e quadrato 1 2 Esercizio 1: Analisi Il problema del calcolo di area e perimetro delle quattro figure geometriche può essere decomposto in 4 sottoproblemi, ciascuno finalizzato al calcolo di area e perimetro di ognuna delle figure Ciascuno dei 4 sottoproblemi può ulteriormente essere decomposto in 2 sotto sottoproblemi: calcolo del perimetro e calcolo dell area Calcolo di perimetro e area è ulteriormente decomposto in problemi elementari (controllo consistenza dati in input e calcoli aritmetici elementari) 3 Input igura Cerchio Quadrato Rettangolo riangolo put igura non Valida Input raggio Input lato Input base e altezza Input base, altezza, lati Esercizio 1: low Chart Area=π*raggio 2 Area=lato 2 Area= base*altezza Area= (base*altezza)/2 =2*π*raggio =4*lato =2* base+altezza) =somma_lati put Area e 4 1

Esercizio 1: Linguaggio Lineare leggi figura if (figura == cerchio) leggi raggio; area=π*raggio 2 ; perimetro= 2*π*raggio; if (figura == quadrato) leggi lato; area=lato 2 ; perimetro= 4*lato; scrivi area; scrivi perimetro; if (figura == rettangolo) leggi base; leggi h; area=base*altezza; perimetro= 2*(base+h); if (figura == triangolo) leggi b, h; leggi l1, l2, l3; area=(b*h)/2; perimetro= l1+ l2 + l3; scrivi igura Non Valida ; 5 Esercizio 2: Problema Decidere se un anno è bisestile sono bisestili: gli anni non secolari multipli di 4 gli anni secolari multipli di 400 6 Esercizio 2: Analisi Il problema può essere decomposto in due sottoproblemi Analisi degli anni non secolari Analisi degli anni secolari In entrambi i casi l analisi avviene applicando istruzioni elementari, rispettivamente Resto della divisione dell anno per 4 Resto della divisione dell anno per 400 Limitiamo il calcolo agli anni d.c. I valori che esprimono gli anni sono solo interi >0 Input anno anno %100 anno %400 Esercizio 2: low Chart anno %4 Anno Bisestile Anno NON Bisestile Anno NON Bisestile Anno Bisestile 7 8 2

Esercizio 2: Linguaggio Lineare input anno if ((anno % 100)) then if ((anno%400)) then output Anno Bisestile ; output Anno NON Bisestile ; if ((anno%4)) then output Anno Bisestile ; output Anno NON Bisestile ; 9 Esercizio 3: Problema Data una sequenza di k numeri, trovare il primo numero diverso da zero e contare quante volte compare nella sequenza 10 Esercizio 3: Analisi Il problema può essere decomposto nei seguenti sottoproblemi Identificazione del valore k Analisi iterativa dei numeri, che può essere decomposto nei seguenti Se è 0, passare al numero successivo Se è la prima occorrenza diversa da 0 segnalarla, incrementare il contatore,ricordarla e passare al numero successivo Altrimenti, se è un altra occorrenza del numero identificato al passo precedente incrementare il contatore e passare al numero successivo Altrimenti passare al numero successivo 11 Input k count >k primo num_occ Esercizio 3: low Chart Input num count++ num!=0 primavolta == primavolta = primo=num num_occ++ num== primo num_occ++ 12 3

input k; count= 1; num_occ=0; primavolta=; while (count<=k) input num; if (num!=0) then if (primavolta==) then primavolta=; primo=num; num_occ++; count++; output primo; output num_occ; Esercizio 3: Linguaggio Lineare if (num==primo) then num_occ++; 13 Esercizio 4: Problema Calcolare x alla y 14 Esercizio 4: Analisi Limitiamo il problema al caso in cui sia x che y siano interi positivi Osservando che x y può essere ottenuto il prodotto di x per sé stesso y volte, il problema può essere decomposto nei seguenti Identificazione di x e di y Moltiplicare iterativamente x per sé stesso y volte È possibile svolgere il problema anche in modo ricorsivo Input x, y count ==y potenza Esercizio 4: low Chart potenza= potenza*x count++ 15 16 4

Esercizio 4: Linguaggio Lineare input x, y; potenza = 1; for (count=0; count < y; count++) potenza = potenza * x; output potenza; Esercizio 4 bis: Problema Calcolare x alla y usando una funzione ricorsiva 17 18 Esercizio 4 bis: Analisi Limitiamo il problema al caso in cui sia x che y siano interi positivi Osserviamo che se y>0 allora x y = x*(x y 1 ), mentre se y = 0 allora x y = x 0 = 1 È necessario usare una funzione che chiama se stessa ricorsivamente 19 Esercizio 4 bis: Linguaggio Lineare input x, y; potenza = pot(x,y); output potenza; pot(base, esp) if esp then valore_fin = 1; valore_fin=base*pot(base, esp 1); return valore_fin; 20 5