Complementi ed esercitazioni sui sottoprogrammi
|
|
- Valeria Molteni
- 6 anni fa
- Visualizzazioni
Transcript
1 Complementi ed esercitazioni sui sottoprogrammi Prof. Antonio Scanu
2 1 Esempi sulle funzioni 1.1 Esempio : Somma tra due numeri #include <iostream> int somma (int x, int y); int main () int a,b,z; cout<< inserisci a ; cout<< inserisci b ; cin>>b; z = somma (a,b); cout << "Il risultato e' " << z; return 0; int somma (int x, int y) int r; r=x+y; return r; 1.2 Esempio: Creare due funzioni una per acquisire dei dati e una per calcolare l'area di un triangolo (vengono passati come parametri l'altezza e l'area ). Usare le due funzioni per calcolare l'area maggiore di 5 trinagoli. #include<iostream> float funarea(int h,int b); int funcarica(void); main() int b1,h1,i; float area1,amax; amax=-1111; for(i=0;i<5;i++) b1=funcarica(); h1=funcarica(); area1=funarea(h1,b1); if(amax<area1); amax=area1; cout<<endl<<amax; float funarea(int h,int b) float a; a=(float)h*b/2; return a;
3 int funcarica(void) int a; cout<<"ins valore "; while(a<0) cout<<"errato \n"; cout<<"ins valore "; return a; 1.3 Esempio: calcolo della media di due studenti e rilevazione dello studente migliore (ogni studente ha tre voti) #include <iostream> int media(void); char maggiore(int x,int y); int main () int a,b; char c; a = media(); b = media(); c = maggiore(a,b); cout << "il migliore è" << c; return 0; int media() int m,numero,i,somma; for(i=0;i<3;i++) cout<< inserisci numero ; cin>>numero; somma=somma+numero; m=numero/3; return m; char maggiore(int x,int y) if(x>y) return ('a'); else return ('b'); 2 Complementi sui passaggi o di parametro In C++ il passaggio per valore avviene di default Vediamo come funziona la seguente procedura per l'ordinamento di due variabili. #include <iostream> void scambia(int x,int y); int main () int a,b;
4 cout<<"inserisci a"; cout<<"inserisci b"; cin>>b; scambia(a,b); cout<<"i numeri ordinati sono"<<a<<" "<<b; return 0; void scambia(int x,int y) int temp; temp=x; x=y; y=temp; È evidente che il programma, pur essendo corretto in ogni suo punto, non risolve il problema dato: le variabili A e B, infatti, non hanno subito il dovuto scambio. Il motivo per il quale l'algoritmo precedente non produce il risultato corretto è dato dal fatto che è stato utilizzato un passaggio di parametri per valore. Per questo tipo di problemi, quando cioè vogliamo che il sottoprogramma restituisca il valore dei parametri formali (cioè alteri il valore dei parametri attuali), dobbiamo servirci di un passaggio per indirizzo. Nel passaggio dei parametri per indirizzo i parametri formali contengono l'indirizzo di memoria dei parametri attuali. Di conseguenza, una modifica dei parametri formali provoca una modifica dei corrispondenti attuali. Con questo tipo di passaggio, quindi, si può perdere il contenuto originale dei parametri attuali. In C++ il passaggio per indirizzo viene indicato anteponendo il simbolo & al parametro o alla lista di parametri formali interessati Tecnicamente, il passaggio per indirizzo differisce da quello per valore in quanto, all'atto della chiamata del sottoprogramma, non viene allocata nessuna area di memoria per valori dei parametri formali. Poiché essi si riferiscono alla stessa area di memoria allocata per i
5 parametri attuali, la stessa cella di memoria sarà individuabile con due nomi distinti (alias). In questo tipo di passaggio non viene trasmesso il valore dei parametri attuali, bensì l'indirizzo della cella di memoria a essi assegnata; di conseguenza, la modifica di un parametro comporterà la modifica dell'altro. Consideriamo l'esempio precedente, ma questa volta effettuando un passaggio per indirizzo. #include <iostream> void scambia(int &x,int &y); int main () int a,b; cout<<"inserisci a"; cout<<"inserisci b"; cin>>b; scambia(a,b); cout<<"i numeri ordinati sono"<<a<<" "<<b; return 0; void scambia(int &x,int &y) int temp; temp=x; x=y; y=temp; La tabella seguente illustra la situazione della memoria durante l'esecuzione. Ora il risultato è quello che attendevamo! Concludendo, vediamo quali sono le regole generali da seguire per scegliere la modalità del passaggio dei parametri.
6 È opportuno effettuare un passaggio per valore quando l'informazione è solo di input per il sottoprogramma. È opportuno effettuare un passaggio per indi- rizzo quando vogliamo la restituzione del valore del parametro formale (parametro di output), Riportiamo di seguito alcune utili regole da seguire per una corretta progettazione di procedure con parametri. Le procedure devono comunicare con l'esterno esclusivamente tramite parametri. Non si deve utilizzare un numero eccessivo di parametri (se ciò dovesse accadere, forse sarebbe utile rivedere la progettazione). Le procedure non devono utilizzare le variabili globali e, in particolar modo, non devono modificarle Le procedure che risolvono un certo problema non devono usare al loro interno istruzioni di input/output: devono comunicare i dati solo attraverso i parametri. La gestione dell'input/output deve avvenire tramite apposite procedure. ESERCITAZIONE SULLE FUNZIONI 1. Scrivere un programma che legge due numeri interi a e b diversi da zero. Inserire in esso una funzione che riceva i due interi letti e renda 0 se a e b hanno lo stesso segno 1 se a e b hanno segno differente Visualizzare dal main il risultato. 3. Inserire nel programma precedente una seconda funzione che riceva i due interi a e b ed un altro intero x e renda: a+b per x=1 a-b per x=2 a*b per x=3 a/b per x=4 0 in tutti gli altri casi. Visualizzare dal main i risultati resi. 4. Scrivere un programma che legge due numeri maggiori di zero. Inserire in esso una funzione che riceva i due interi letti e renda il valore maggiore. Visualizzare dal main il risultato. 5. Esercizi 13,14,15 del libro 6. Un polinomio di grado 2 in x e espresso da ax 2 +bx+c. I coefficienti a, b, c assumono valori interi. Scrivere una funzione che riceve a, b e c ed un valore x e calcola il valore del polinomio in x. Modificare la funzione in modo da tabulare (calcolare e visualizzare) i valori dell incognita nell intervallo [0, 2] con passo 0.1. Per migliorare la precisione potete usare il tipo double per x e per il valore calcolato dalla funzione. 6. Scrivere un programma che genera casualmente un intero a compreso tra 2 e 6,
7 e un intero b compreso tra 1000 e Costruire una funzione che riceve a e b e calcola e visualizza o Il valore delle potenze di a con esponente intero > 1 che sono inferiori o uguali a b o Quante sono queste potenze. Il numero delle potenze dovrà essere restituito e visualizzato dal main. 8. Due classi (corso A e B) hanno 20 alunni. Si vuole saper quale classe ha la media dei voti in Informatica più alta. Creare un programma contenente le seguenti funzioni: o una funzione che non riceve nessun valore e restituisce la media di una classe o una funzione che ricevute le due medie restituisca il nome del corso che ha la media più alta. Visualizzare dal main il nome del corso che ha la media più alta. 9. Una società ha tre filiali (A, B, C) ognuna con un numero di dipendenti diverso, ognuno con uno stipendio diverso. Si vuole sapere il totale degli stipendi di ogni singola filiale e il totale degli stipendi di tutte le filiali. Scrivere un programma utilizzando o Una funzione che riceve il nome della filiale e il numero dei dipendenti e restituisca la somma degli stipendi di quella filiale. Inoltre la funzione stampi il nome della filiale e la somma degli stipendi. O Una funzione che ricevute tutte le somme restituisca la somma totale degli stipendi. Visualizzare dal main la somma totale degli stipendi. ESERCITAZIONE SULLE PROCEDURE E PAS- SAGGIO DI INDIRIZZO 1. Scrivere una funzione che riceve il valore del raggio di un cerchio e calcola restituendolo al main il valore della circonferenza e dell area del cerchio. Visualizzare dal main i valori resi. 2. Scrivere un programma contenente una funzione che generi casualmente 50 numeri positivi e restituisca al main il numero dei pari e dei dispari. 3. Scrivere un programma contenente una funzione che riceve la misura delle due basi e dell altezza di un trapezio isoscele e restituisce il perimetro e l area del trapezio. Costruire anche una seconda funzione che calcoli la misura del lato obliquo. 4. Esercizi 7,8,9,12 5. In una pizzeria si vendono pizze, bibite e dolci. Il listino è: Pizze semplici 2,5
8 Pizze farcite 3 Bibite 3 Dolci 6 Scrivere un programma che permette di calcolare il costo totale e quello singolo dei dolci di tre clienti. Si utilizzi una procedura per calcolare i costi di un singolo cliente. Inoltre si calcoli,nella procedura, quale sarebbe il costo totale se fosse attiva seguente promozione: se il numero delle pizze e delle bibite è uguale e si è speso più di 20 si fa uno sconto di 5 altrimenti fa pagare tutti i dolci 4 I risultati devono essere restituiti al main e visualizzati solo nel main. 6. Un comune vuole calcolare quali sarebbero le entrate possibili se fosse introdotta una nuova tassa sui 50 tra terreni e case accatastati. Scrivere un programma contenente una procedura che Generi casualmente un numero 0 o 1. 0 corrisponde a casa e 1 a terreno. Se viene generato un terreno si generi un numero casuale intero positivo minore di 400 m 2 che rappresenta i metri quadri del terreno. Conti il numero delle case, dei terreni con metratura minore di 200 m 2 e di quelli con metratura maggiore. Tali risultati vanno resi al main. Scrivere una funzione che calcoli le possibili entrate sapendo che la tassa è pari a: 20 per i terreni inferiori a 200 m 2 40 per i terreni maggiori di 200 m 2 50 per ogni casa. 7. In una biblioteca si possono affittare fino a 10 libri per cliente. I maggiorenni pagano 2 a libro, i minorenni 1 a libro. Creare un programma che permetta la gestione della libreria. Si costruisca una funzione che permetta di inserire l età dei clienti e il numero di libri presi e restituisca: Il numero totale dei libri presi, Il numero dei libri presi dai maggiorenni. Il numero dei libri presi dai minorenni. Si costruisca una seconda funzione che calcoli il guadagno totale della libreria. I risultati devono essere visualizzati nel main. Giochi 1. Ottimizzare il gioco del settemezzo utilizzando le funzioni.
9 2. Fra amici: Un giocatore a turno tiene banco e ha a disposizione un mazzo di carte da quaranta che deve mescolare piu volte e far levare a turno ai compagni partendo da sinistra. Deve essere fissata una somma. Il banchiere distribuisce una carta scoperta a tutti partendo dal compagno di destra, poi ne assegna una anche a sè. Chi ha avuto una carta di valore uguale a quella del banchiere non vince e non perde, chi invece ne ha una di valore superiore (il seme non conta) riceve una somma dal banchiere; chi ne ha una di valore inferiore paga una somma. L asso ha il valore più alto, il due quello più basso. Nel caso venga usato un mazzo di carte da 52, dopo l asso valgono in misura decrescente il re, la donna, il fante, il dieci, il nove, l otto, il sette, il sei, il cinque, il quattro il tre il due.
Complementi sui sottoprogrammi
Complementi sui sottoprogrammi Prof. Antonio Scanu 1 Esempi sulle funzioni 1.1 Esempio : Somma tra due numeri int somma (int x, int y); int a,b,z; coutb; z =
DettagliModulo 5 La programmazione Unità 6 I sottoprogrammi
Modulo 5 La programmazione Unità 6 I sottoprogrammi Prof. Antonio Scanu 1 Top-down e Bottom-up Quando un problema appare immediatamente complesso, per risolverlo possiamo individuare e analizzare i sottoproblemi
DettagliEsercitazione 3. Espressioni booleane I comandi if-else e while
Esercitazione 3 Espressioni booleane I comandi if-else e while Esercizio Si consideri la seguente istruzione: if (C1) if (C2) S1; else S2; A quali delle seguenti interpretazioni corrisponde? if (C1) if
DettagliEsercitazione 11. Liste semplici
Esercitazione 11 Liste semplici Liste semplici (o lineari) Una lista semplice (o lineare) è una successione di elementi omogenei che occupano in memoria una posizione qualsiasi. Ciascun elemento contiene
DettagliEsercitazione 5. Procedure e Funzioni Il comando condizionale: switch
Esercitazione 5 Procedure e Funzioni Il comando condizionale: switch Comando: switch-case switch (espressione) { /* espressione deve essere case costante1: istruzione1 di tipo int o char */ [break]; case
DettagliLezione 6 programmazione in Java
Lezione 6 programmazione in Java Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Le costanti I vettori Cos è un vettore Come si usa I vari tipi di vettori Esempi
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 1 Obiettivi di questa esercitazione 1. Passaggio dei parametri per valore/riferimento 2. Trattamento degli errori: funzioni che restituiscono anche codici di errore
DettagliARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa.
3 ITI - a.s. 2007-2008 Compiti di Informatica ESTATE 2008 ARRAY E STRINGHE Scrivere una funzione che carica da tastiera un array di n elementi e lo stampa invertendo il primo elemento con l'ultimo, il
DettagliESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi seconde
ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi seconde vers.3 in lavorazione Docente SAFFI FABIO Contenuti 1. Esercizi generici sul diagramma di flusso - flow chart...2
DettagliEsercitazione. Esercizio 1 Scrivere un programma che calcoli e visualizzi la somma degli interi pari da 2 a 1000 (estremi compresi)
Esercitazione Oggi dovremo di nuovo usare funzioni sui reali. Ma il C non ha operatori nativi del linguggio per queste operazioni, come la radice quadrata, l'elevamento a potenza o l'arrotondamento. Per
DettagliLABORATORIO DI INFORMATICA ESERCITAZIONE VIII
LABORATORIO DI INFORMATICA ESERCITAZIONE VIII Cercate di eseguire gli esercizi da soli. Se non ci riuscite, cercate di capire i messaggi di errore. Se non ci riuscite, provateci di nuovo. Poi chiamate
DettagliLaboratorio di Programmazione: Linguaggio C Lezione 9 del 27 novembre 2013
Laboratorio di Programmazione: Linguaggio C Lezione 9 del 27 novembre 2013 Damiano Macedonio Giochi d Azzardo Note Iniziali Per generare un numero casuale basta includere la libreria stdlib.h e utilizzare
DettagliEsercizi. La funzione swapint() primo tentativo
Politecnico di Milano Esercizi Puntatori, struct con campi puntatore, puntatori a struct, rapporto tra array e puntatori. FUNZIONI Passaggio di parametri per indirizzo, passaggio di array. #include
DettagliERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }
ERRATA CORRIGE Pulizia del buffer di input: come fare? (1) Dopo aver richiamato getchar() per prelevare un carattere dal buffer di input, inseriamo una seconda chiamata a getchar(), senza assegnare il
Dettagli13 Esercizi di Riepilogo
13.1 Esercizi Esercizio 13.1 Si consideri una versione semplificata della battaglia navale in cui le navi possono essere posizionate solo in orizzontale e ogni riga può contenere al massimo una nave. Il
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA2 2.1- Funzioni 1 Prerequisiti Programmazione elementare in Java Tecnica top-down Concetto matematico di funzione Compilazione e link di programmi Esecuzione di funzioni
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE
INTRODUZIONE ALLA PROGRAMMAZIONE Prof. Enrico Terrone A. S: 2008/09 Definizioni Programmare significa risolvere problemi col computer, cioè far risolvere problemi al computer attraverso un insieme di informazioni
DettagliPolitecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.
Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione prof. Lorenzo Porcelli e mail: genna18@iol.it sito: users.iol.it/genna18 Risoluzione di un problema Dato
DettagliLa corrispondenza dei semi tra carte italiani e francesi è la seguente:
Regole della Bestia Il mazzo di carte Si gioca con un mazzo di 40 carte italiane tradizionali che i giocatori possono selezionare a loro piacimento tra quelle disponibili sul sito (napoletane, piacentine
DettagliLaboratorio di Programmazione Lezione 2. Cristian Del Fabbro
Laboratorio di Programmazione Lezione 2 Cristian Del Fabbro Prossima lezione GIOVEDÌ 29 OTTOBRE 14:00 Input da tastiera package input; import java.io.*; public class Input { public static void main(string[]
DettagliEsercizio 2 (punti 7) Dato il seguente programma C: #include <stdio.h> int swap(int * nome, int length);
Fondamenti di Informatica L-A (A.A. 004/005) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista I Prova Intermedia del 11/11/004 - durata h - COMPITO B Esercizio 1 (punti 1) Una associazione di
DettagliUniversità degli Studi di Cassino Corso di Fondamenti di Informatica Visibilità e tempo di vita delle variabili
Corso di Fondamenti di Informatica Visibilità e tempo di vita delle variabili Anno Accademico Francesco Tortorella Il concetto di visibilità Un programma C++ può assumere una struttura complessa grazie
Dettagli3 Costrutti while, for e switch
Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione dei costrutti while, for e switch. I costrutti per costruire cicli in C sono il while, la variante
DettagliInformatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande / VERSIONE 1
Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande/ VERSIONE 1 1) L approccio con cui si studia un sistema focalizzandosi solo sul rapporto tra input e output si chiama
DettagliIntroduzione. Le funzioni in C. Funzioni. Cosa succede
Introduzione Le funzioni in C DD Cap.5 pp.131-160 KP Cap.5 pp. 175-199 La maggior parte dei programmi scritti per risolvere problemi sono (molto!) più lunghi di quelli visti fin ora. Il modo migliore per
DettagliINFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan
INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento lunedì, prima o dopo lezione 1 Le funzioni in C Le funzioni vengono utilizzate per 3 motivi: Riusabilità
DettagliPassare argomenti al programma
Passare argomenti al programma Quando si invoca un programma è possibile passare degli argomenti ad esso durante la chiamata. Gli argomenti ricevuti saranno stringhe (array di char) quindi l insieme di
DettagliI puntatori sono tipi di variabili il cui valore rappresenta un indirizzo della memoria.
Puntatori I puntatori sono tipi di variabili il cui valore rappresenta un indirizzo della memoria. NOTA: quando un programma viene mandato in esecuzione, ad esso viene assegnata un area di memoria di lavoro
DettagliUn esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);
Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i
DettagliRegole del Sette e mezzo
Regole del Sette e mezzo Il mazzo di carte Si gioca con un mazzo di 40 carte italiane tradizionali. I giocatori possono selezionare il tipo di carte (napoletane, piacentine etc.). E anche possibile selezionare
DettagliCome risolvere i quesiti dell INVALSI - primo
Come risolvere i quesiti dell INVALSI - primo Soluzione: Se mancano di 90 significa mancano a 90. Saranno presenti 90 9 = 81 litri. Soluzione: Se il trapezio è isoscele allora l angolo, inoltre l angolo
Dettagli1) Claudio ha 45 biglie colorate e ne regala 1/3 alla sua migliore amica. Con quante biglie gli restano? 2) Ho letto i sette decimi di un libro di
1) Claudio ha 45 biglie colorate e ne regala 1/3 alla sua migliore amica. Con quante biglie gli restano? 2) Ho letto i sette decimi di un libro di 150 pagine. Quante pagine restano da leggere? 3) Luca
DettagliSezione 6.9. Esercizi 191. c ) d ) c ) d ) c ) x + 5y 2 = 23 ; d ) x 2 + 2y 2 = 4. c ) d ) 4y 2 + 9x 2. { x 2 + y 2 = 25. c ) x + 3y = 10 ; d ) c )
Sezione 9 Esercizi 9 9 Esercizi 9 Esercizi dei singoli paragrafi - Sistemi di secondo grado Risolvere i seguenti sistemi di secondo grado { x + y = x + y = { x y x = 0 x y = { x + y = 0 x = y { x xy =
DettagliBasi 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
DettagliLaboratorio di Programmazione Laurea in Bioinformatica
Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.
DettagliEsercitazione 6. Array
Esercitazione 6 Array Arrays Array (o tabella o vettore): è una variabile strutturata in cui è possibile memorizzare un numero fissato di valori tutti dello stesso tipo. Esempio int a[6]; /* dichiarazione
Dettagli7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari
7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa
DettagliLezione 8 Struct e qsort
Lezione 8 Struct e qsort Rossano Venturini rossano@di.unipi.it Pagina web del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start Esercizio 3 QuickSort strambo Modificare il Quicksort
DettagliIL Calcolo letterale (o algebrico). (teoria pag ;esercizi pag , es.59 66) 1) Premessa: Al posto dei numeri posso utilizzare delle..
IL Calcolo letterale (o algebrico). (teoria pag. 29 31;esercizi pag. 100 103, es.59 66) 1) Premessa: Al posto dei numeri posso utilizzare delle.. Esempi:. 2) Introduzione. a) Un numero qualsiasi: b) Il
DettagliESEMPIO: le variabili LETTURA/SCRITTURA DI VARIABILI. Specifica Leggere da tastiera un intero, un carattere, un float e un double. Stamparli a video.
ESEMPIO: le variabili LETTURA/SCRITTURA DI VARIABILI Specifica Leggere da tastiera un intero, un carattere, un float e un double. Stamparli a video. LETTURA/SCRITTURA DI VARIABILI Codice #include
DettagliIntroduzione 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
DettagliIstituto Tecnico Industriale M. M. Milano Polistena. Classe III D a.s. 2015/2016 C++ Guida Base
Istituto Tecnico Industriale M. M. Milano Polistena Classe III D a.s. 2015/2016 C++ Guida Base Prof. Rocco Ciurleo - ITIS M. M. Milano Polistena - 3 D a.s. 2015/2016 1 Le Origini Il Linguaggio C++ è il
DettagliESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi seconde
ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi seconde vers.2 Contenuti 1. Esercizi generici sul diagramma di flusso - flow chart...2 2. Esercizi sulla struttura di selezione...2
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21
DettagliArray e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 12 Array e Oggetti A. Miola Dicembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Array e Oggetti 1 Contenuti Array paralleli
DettagliRegole dell Asso piglia tutto (o Scopa d assi)
Regole dell Asso piglia tutto (o Scopa d assi) Il mazzo di carte Si gioca con un mazzo di 40 carte italiane tradizionali. I giocatori possono selezionare il tipo di carte (napoletane, piacentine). E anche
DettagliLinguaggio C - sezione dichiarativa: costanti e variabili
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente
DettagliCorso di Laurea Ingegneria Civile Elementi di Informatica. Esercizi. Carla Limongelli. Esercizi 1
Corso di Laurea Ingegneria Civile Elementi di Informatica Esercizi Carla Limongelli Esercizi 1 Quanti giorni in un mese? Scrivere un metodo che ricevuto in input un mese e un anno, restituisca il numero
DettagliIntroduzione ai puntatori
Introduzione ai puntatori Algoritmicamente November 19, 2009 http://algoritmicamente.wordpress.com/ 1 Concetti fondamentali Nei linguaggi quali C, C++, il concetto e l'uso dei puntatori è estremamente
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E03 Esempi di algoritmi e programmi A. Miola Novembre 2011 1 Contenuti q Progettazione di algoritmi q Problemi di ingresso - uscita
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
DettagliIl linguaggio C funzioni e puntatori
Salvatore Cuomo Il linguaggio C funzioni e puntatori Lezione n. 8 Parole chiave: Linguaggio C, procedure, funzioni. Corso di Laurea: Informatica Insegnamento: Programmazione II, modulo di Laboratorio Email
DettagliEsercizio 1: funzione con valore di ritorno di tipo puntatore
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 7 Esercitazione: 14 dicembre 2005 Esercizi su ricorsione, manipolazione stringhe, strutture dinamiche Problema: Esercizio
DettagliAppunti, esempi ed esercizi sui linguaggi C/C++
Appunti, esempi ed esercizi sui linguaggi C/C++ Dispense e materiale didattico su http://www.eclecticforce.com/ Ambiente di sviluppo Dev C++ http://www.bloodshed.net/devcpp.html // commento su una linea
DettagliFondamenti 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
DettagliPROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica 1
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa E03 Esempi di algoritmi e programmi A. Miola Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Esempi di algoritmi e
Dettagli$QDOLVLGHOSURJUDPPDTXDGUDWR
$QDOLVLGHOSURJUDPPDTXDGUDWR /* */ calcolare l area del quadrato #include main(){ int lato, area; printf("lato "); scanf("%d", &lato); if(lato < 0) printf("errore nei dati \n"); else { area =
DettagliPRIMA PARTE. Rett 2. Rett 3. cateto a cateto b ipotenusa area perimetro
PRIMA PARTE N.B. Gli esercizi devono essere risolti usando formule che diano risultati corretti qualunque siano i dati in ingresso Esercizio 1 Costruire uno schema su un foglio elettronico per calcolare
Dettagliuguale livello gerarchico non vi sono funzioni più importanti di altre main main
FUNZIONI in C/C++ Un programma C++ è un insieme di funzioni indipendenti e di uguale livello gerarchico (nel senso che non vi sono funzioni più importanti di altre o dotate, in qualche modo, di diritti
DettagliDati aggregati. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica - in breve: Definizione di tipi Array Stringhe Strutture
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
DettagliIL PRIMO PROGRAMMA IN C
IL PRIMO PROGRAMMA IN C LO SCOPO Si vuole scrivere un programma in linguaggio C che chieda all utente di introdurre da tastiera due numeri interi e visualizzi il valore della loro somma sul video SOLUZIONE
DettagliIntroduzione al C. Esercitazione 6. Raffaele Nicolussi. Corso di Fondamenti di Informatica Ingegneria Clinica
Corso di Fondamenti di Informatica Ingegneria Clinica Esercitazione 6 Raffaele Nicolussi Esercizio 1 Si scriva una funzione in linguaggio C che riceve in ingresso un numero intero A letto da tastiera,
DettagliI giocatori possono selezionare il tipo di carte (napoletane, piacentine ).
Regole della Scopa Il mazzo di carte Si gioca con un mazzo di 40 carte italiane tradizionali. I giocatori possono selezionare il tipo di carte (napoletane, piacentine ). E anche possibile selezionare le
Dettagli1) Premessa: Al posto dei numeri posso utilizzare delle.. m) La differenza tra due numeri qualsiasi:...
IL Calcolo letterale ( o algebrico ). 1) Premessa: Al posto dei numeri posso utilizzare delle.. Esempi:. 2) Introduzione. a) Un numero qualsiasi: b) Il doppio di un numero qualsiasi:. c) Il triplo di un
DettagliRegole dei Mazzetti. Il mazzo di carte
Regole dei Mazzetti Il mazzo di carte Si gioca con un mazzo di 40 carte italiane tradizionali. I giocatori possono selezionare il tipo di carte (napoletane, piacentine ). E anche possibile selezionare
DettagliL AREA DELLE PRINCIPALI FIGURE DELLA GEOMETRIA PIANA
L AREA DELLE PRINCIPALI FIGURE DELLA GEOMETRIA PIANA Le formule per il calcolo dell area delle principali figure della geometria piana sono indispensabili per poter proseguire con lo studio della geometria.
Dettagli4. Accesso diretto per gli archivi con record a lunghezza costante
4. Accesso diretto per gli archivi con record a lunghezza costante Nell accesso diretto (in inglese, random) al file binario, le operazioni di lettura o scrittura devono essere precedute dall operazione
Dettaglinome (lista_parametri) Funzioni funzioni predefinite: sqrt(x) log(x) usare queste funzioni significa: specificare il valore degli argomenti
Università di Roma Tor Vergata L9-1 Funzioni funzioni predefinite: sqrt(x) log(x) usare queste funzioni significa: specificare il valore degli argomenti utilizzare il valore restituito quanti argomenti
DettagliFondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni. Lab 06 Array" Lab06 1
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 06 Array" Lab06 1 Esercizio 1" n Creare un programma che legga da input un numero non noto a priori di interi
DettagliRegole della Briscola
Regole della Briscola Il mazzo di carte Si gioca con un mazzo di 40 carte italiane tradizionali. I giocatori possono selezionare il tipo di carte (napoletane, piacentine ). E anche possibile selezionare
DettagliESERCIZI DI PROGRAMMAZIONE C/C++ per le classi seconde
ESERCIZI DI PROGRAMMAZIONE C/C++ per le classi seconde vers.0 in lavorazione Docente SAFFI FABIO Contenuti Struttura del file sorgente...2 Organizzazione della directory di lavoro...2 Esercizi sulle funzione
DettagliALGORITMI E STRUTTURE DATI
ALGORITMI E STRUTTURE DATI Esercitazioni AndreA Orlandini http://www.dia.uniroma3.it/~orlandin/asd/ e-mail: orlandin@dia.uniroma3.it Orario di ricevimento: Martedì 14.00-16.00 Introduzione al C + Array
DettagliEsercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A
Esercizi di MatLab Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, AA 2017 2018 Gli esercizi sono divisi in due gruppi: fondamentali ed avanzati I primi sono
DettagliMinistero della Difesa Direzione Generale per il Personale Militare I Reparto - 3^ Divisione. BANCA DATI MATEMATICA II^ IMMISSIONE Concorso VFP4 2012
Ministero della ifesa irezione Generale per il Personale Militare I Reparto - 3^ ivisione N TI MTEMTI II^ IMMISSIONE oncorso VFP4 2012 Servizio inerente la fornitura di due archivi di quesiti e materiali
DettagliUnità Didattica 4 Linguaggio C. Vettori. Puntatori. Funzioni: passaggio di parametri per indirizzo.
Unità Didattica 4 Linguaggio C Vettori. Puntatori. Funzioni: passaggio di parametri per indirizzo. 1 Vettori Struttura astratta: Insieme di elementi dello stesso tipo, ciascuno individuato da un indice;
DettagliGeometria figure piane Raccolta di esercizi
Geometria figure piane Raccolta di esercizi RETTANGOLO 1. Calcola il perimetro e l area di un rettangolo le cui dimensioni misurano rispettivamente 13 cm e 22 cm. [70 cm; 286 cm 2 ] 2. Un rettangolo ha
Dettagli2. Completa scrivendo il numeratore o il denominatore mancante in modo da avere frazioni tutte equivalenti.
Esercizi per le vacanze estive classe 2^C Svolgere nell ordine tutti gli esercizi indicati su fogli a quadretti con buchi. Gli esercizi andranno consegnati all insegnante al rientro dalle vacanze e saranno
DettagliAlgoritmi di ordinamento: Array e ricorsione
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ 1 Algoritmi di ordinamento: Array e ricorsione 2 1 Indice Algoritmi di ordinamento: Insertion
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
DettagliInformatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1
Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1 1) Dato un diagramma di flusso quali sono le condizioni necessarie perché si possa costruire un programma corrispondente?
DettagliLezione 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,
DettagliPROGETTAZIONE TOP-DOWN E BOTTOM-UP
PROGETTAZIONE TOP-DOWN E BOTTOM-UP Top-down e bottom-up sono strategie di elaborazione dell'informazione e di gestione delle conoscenze, riguardanti principalmente il software e, per estensione, altre
DettagliPOINTERS. Una variabile pointer è una variabile che ha come valore un indirizzo di memoria.
POINTERS Una variabile pointer è una variabile che ha come valore un indirizzo di memoria. Es. Sia y una variabile intera di valore e sia yptr una variabile pointer avente come valore l indirizzo di y.
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliKangourou della Matematica 2012 Coppa a squadre Kangourou Semifinale turno A Cervia, 5 maggio Quesiti
Kangourou della Matematica 0 Coppa a squadre Kangourou Semifinale turno A Cervia, 5 maggio 0 Quesiti. umeri di quest anno Quanti numeri interi positivi n sono tali che entrambi i numeri n 0 e n + 0 siano
DettagliFoglio Elettronico Lezione 1
- Introduzione - Celle e riferimenti - Formule - Approfondimenti - Funzioni logiche Sommario Introduzione - Foglio elettronico o foglio di calcolo - Cos'è? Strumento per raccogliere dati organizzati in
DettagliFondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012
Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario Operatore? Tipo di dato: struct La ricorsione Funzioni ricorsive Esercizi proposti 26/04/2012 2 Operatore? L'operatore? può essere
Dettagli#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliL organizzazione dei programmi
L organizzazione dei programmi Lo sviluppo top-down L.S. Touschek - A.S. 2015/2016 - I fondamenti del Linguaggio C F. Cardarelli Lo sviluppo top-down I problemi complessi Blocco 1 Istruzione 1 Istruzione
Dettagli5. Quinta esercitazione autoguidata: liste semplici
22 5. Quinta esercitazione autoguidata: liste semplici 5.1. Liste rappresentate mediante strutture e puntatori (LISTE1.C, LISTE2.C) Scrivere un programma che - costruisce una lista di k interi (con k letto
DettagliHOMEWORKS. in modo che il programma stampi N ripetizioni della stringa HelloWorld (su righe diverse), con N inserito dall utente.
HOMEWORKS Questi esercizi saranno proposti di tanto in tanto e forniti sempre SENZA soluzioni. Come materiale complementare ai libri di testo e alle lezioni frontali e di esercitazione, si consiglia di
DettagliGli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento
Linguaggio C Gli Operatori Gli Operatori Gli operatori sono simboli (sia singoli caratteri che loro combinazioni) specificano come devono essere manipolati gli operandi dell espressione Operatori aritmetici
DettagliESERCIZIO 1 (5 punti) Convertire in binario il valore, espresso in decimale, Si usi la rappresentazione in virgola fissa.
PROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 23/9/2008 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (5 punti) Convertire
DettagliPolitecnico di Milano Facoltà di Ingegneria Milano Leonardo A.A. 2007/08
Politecnico di Milano Facoltà di Ingegneria Milano Leonardo A.A. 2007/08 Informatica A E. Quintarelli Allievi Gestionali Recupero del 20 Febbraio 2008 Cognome e nome Firma Matricola Domanda 1 2 3 4 5 6
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 1 Obiettivi di questa esercitazione 1. Array e funzioni 2. Array e funzioni ricorsive 3. Array e confronto di array 2 Esercizio 1 Creare un programma che legga da
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 1 Obiettivi di questa esercitazione 1. Passaggio dei parametri per valore/riferimento 2. Trattamento degli errori: funzioni che restituiscono anche codici di errore
DettagliVittoria de Nitto Personè. Esercizi proposti per il corso Fondamenti di informatica
Vittoria de Nitto Personè Esercizi proposti per il corso Fondamenti di informatica Facoltà di Ingegneria - Università degli studi di Roma Tor Vergata Esercizi a. tipi predefiniti, assegnamento Esercizio
Dettagli