Preparati per il compito in classe Modulo 5



Documenti analoghi
Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

DAL DIAGRAMMA AL CODICE

Applicazioni grafiche

20. Appunti sulle liste (gestione in linguaggio C#) 16/04/2015 Arraylist

La ricerca dicotomica

IL LINGUAGGIO Visual Basic

Le L z e ione n e d i d V isu s a u l B asi s c Prof.ssa Paola Goi 1

1: /* Nome del programma: gestione_articoli_01.cpp 2: Realizzato da: Gaetano Della Cerra 3: Data: 06/02/ III Informatica Serale I.T.I.S.

ISI s.r.l. Corso di Access 05 CREARE UN ELENCO MAILING ED INVIARE MESSAGGI DI POSTA ELETTRONICA Pag. 1/6

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Algoritmo per l ordinamento di un array

Plus srl :: :: :: Via Morgagni, 4/A Verona :: Tel :: Fax

3. La sintassi di Java

void funzioneprova() { int x=2; cout<<"dentro la funzione x="<<x<<endl; }

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Corso di Visual Basic (Parte 8)

Il blog di Emanuele Mattei in ambito Database

RICERCA DI UN ELEMENTO

Struttura logica di un programma

Esercizi sulla definizione di classi (Fondamenti di Informatica 1 Walter Didimo) Soluzioni

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Secondo Compitino 17 Dicembre 2005

Prova Scritta del 19/07/10

APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL

SARA DHANA. RELAZIONE NEGOZIO A.BASSI a.s.2013/2014

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012

Introduzione al MATLAB c Parte 2

1238 1*8 2 +2*8 1 +3*8 0

M.U.T. Modulo Unico Telematico. Specifiche tecniche interfaccia automatica per i Software Gestionali

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Lab 11 Gestione file di testo"

TOP DOWN. Preparati per il compito in classe Modulo 5

Matematica in laboratorio

10 - Programmare con gli Array

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

Le stringhe. Le stringhe

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore.

Gestione degli archivi e stampe

Vettori Algoritmi elementari di ordinamento

Algoritmi di Ricerca. Esempi di programmi Java

Esercizi di programmazione in C

Liberare la memoria allocata dinamicamente.

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Secondo Compitino 21 Dicembre 2006

MODULO 4: LE STRUTTURE ITERATIVE: FOR, WHILE E DO LOOP UNTIL

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Fondamenti di Informatica 2

Laboratorio di Algoritmi e Strutture Dati

Unità B3 Strutture di controllo

Visual Basic FROM C TO DEDICATO AGLI UTENTI CON BASI DI C CHE SI AFFACCIANO AL MONDO DEL VISUAL BASIC. Contiene solo basi di linguaggio

STRUTTURE (O COSTRUTTI) DI CONTROLLO

Laboratorio di Informatica Lezione 2

Arduino: Programmazione

Codifica: dal diagramma a blocchi al linguaggio C++

ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia)

Lab 04 Istruzioni, cicli e array"

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Esercizio 2. Client e server comunicano attraverso socket TCP

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

L utility Unix awk [Aho-Weinberger-Kernighan]

Operazioni di input e output in Fortran 90

Programmazione in Excel con il linguaggio Visual Basic

Esercizio 1. Esercizi 5. Esercizio 3. Esercizio 2 CICLI

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

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

[MANUALE VISUAL BASIC SCUOLA24ORE PROF.SSA PATRIZIA TARANTINO] 14 dicembre 2008

AREA RETTANGOLO LIRE IN EURO

Laboratorio di Algoritmi e Strutture Dati

Esercitazioni di Progettazione del Software. Esercitazione (Prova al calcolatore del 17 settembre 2010)

File di testo e file binari Directory

Istruzioni condizionali. Istruzioni condizionali IF-THEN- ELSE IF-THEN-ELSE. Statistica computazionale Carla Rampichini a.a.

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

4.1 Modelli di calcolo analisi asintotica e ricorrenze

Le variabili di Visual Basic consentono di memorizzare temporaneamente valori durante

La selezione binaria

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2011

Esempio: Array di struct

Esame di Informatica Generale 9 CFU 21 Giugno 2011 Professori: Carulli, Fiorino, Mazzei

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

Esercizio 1. Esercizio 2

Definizione. File di dati. Insieme di record omogenei memorizzati in memoria di massa. Record. Bianchi. Anna Roma Verdi. Luca Milano 1960.

Relazione del sito della palestra

Compito di Fondamenti di Informatica

1) Dati in ingresso 2 numeri, l algoritmo calcola e stampa a video la loro somma

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza.

LABORATORIO DI PROGRAMMAZIONE EDIZIONE 1, TURNO B

Chat. Si ha un server in ascolto sulla porta Quando un client richiede la connessione, il server risponde con: Connessione accettata.

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE

Cesare Rota. Programmare con C++ EDITORE ULRICO HOEPLI MILANO

Ricerca sequenziale di un elemento in un vettore

ITIS E. BARSANTI POMIGLIANO D ARCO CORSO DI SISTEMI ELETTRONICI AUTOMATICI Prof. Paolo Bisconti

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Transcript:

Preparati per il compito in classe Modulo 5 Hai i dati relativi a una serie di N (con N < 20) cinema, per ogni cinema si conoscono il nome e l incasso. Scrivi un programma che, presi in input tali dati, stampi i nomi dei cinema il cui incasso è superiore a una data cifra fornita in input. 2 Dati N numeri (con N < 50) stampa la media dei numeri maggiori di una data cifra fornita in input e quanti sono i numeri negativi. 3 Per ciascuno dei concorrenti di una squadra sono forniti il nome e i tempi registrati in 0 gare; stampa il nome e la media dei tempi di ciascun concorrente e il totale dei tempi di tutta la squadra (i tempi sono espressi in secondi). Esercizio Analisi. Dopo aver preso in input il numero dei cinematografi (n) controllan che non siano maggiori di 20 e la soglia dell incasso (soglia) che determina i cinematografi da visualizzare, facciamo un ciclo che va fino a n, all interno del ciclo leggiamo il nome del cinema (nome) e il suo incasso (inc), se tale incasso è maggiore della soglia salviamo il nome del cinema in una stinga (listacinema); quindi incrementiamo il contatore (i) del ciclo. Ad ogni ciclo, se l incasso è maggiore della soglia, viene appeso alla lista il nome del nuovo cinema selezionato. All uscita del ciclo visualizziamo la stringa che contiene i nomi dei cinema con incasso maggiore della soglia. variabili n tipo utilizzo descrizione n intero input numero cinematografi soglia intero input soglia di incasso per selezionare i cinema nome stringa input nome cinema inc intero input incasso cinema i intero lavoro contatore del ciclo sui cinema listacinema stringa output nomi cinema con incasso > soglia Algoritmo INIZIO N Soglia I = 0 Nome Incasso Incasso > soglia ListaCinema = ListaCinema + Nome I = I + I = N ListaCinema INE

Codifica in C++ #include <iostream> #include <string> using namespace std; int main () string nome; string listacinema; int n; int inc; int soglia; int i; i= 00; cout<< Inserire il numero dei cinematografi\t ; cin>>n; while (n > 20); i = 0; cout<< Inserire la soglia di incasso\t ; cin>>soglia; cout<< inserire il nome del cinematografo\t ; cin>>nome; cout<< inserire l incasso del cinematografo\t ; cin>>inc; if (inc > soglia) listacinema = listacinema + nome +, ; i++; while(i < n); cout<< Cinema con incasso maggiore della soglia <<listacinema<<endl; system ( pause ); Codifica in B.NET Interfaccia TxtNome TxtIncasso TxtRis btnins Public Class frmcinema Dim n As Integer Dim nome As String Dim inc As Integer Dim soglia As Integer Dim i As Integer Numero di cinema Nome Cinema Incasso cinema Soglia incasso Contatore del ciclo Private Sub orm_load(byal sender As System.Object, Byal e As System.EventArgs) Handles MyBase.Load n = 0 Do Until n <= 20 And n > 0

n = InputBox( Inserire il numero dei cinematografi ) Loop soglia = InputBox( Inserire la soglia di incasso ) i = 0 TxtNome.ocus() Private Sub BtnIns_Click(Byal sender As System.Object, Byal e As System.EventArgs) Handles BtnIns.Click nome = TxtNome.Text inc = TxtIncasso.Text If inc > soglia Then TxtRis.AppendText(nome & Chr(3) & Chr(0)) i = i + TxtNome.Clear() TxtIncasso.Clear() TxtNome.ocus() If (i >= n) Then BtnIns.Enabled = alse TxtNome.Enabled = alse TxtIncasso.Enabled = alse TxtRis.isible = True End Class Esercizio 2 Analisi. Innanzitutto si legge in input il numero dei valori da considerare (num) controllan che non siano maggiori di 50 e si legge in input il valore che determina il calcolo della media (media). Si esegue un ciclo che va fino a num, all interno del ciclo leggiamo il valore (valore), se è negativo si incrementa un contatore di numeri negativi (contneg). Se il valore letto è maggiore della cifra che determina il calcolo della media, allora si somma il valore a un accumulatore (media) e si incrementa un contatore con cui, al termine del ciclo, calcolare la media (contmed); quindi incrementiamo il contatore (i) del ciclo. All uscita del ciclo calcoliamo la media e visualizziamo i numeri negativi letti e il valore calcolato della media. variabili N tipo utilizzo descrizione num intero input numero cifre cifra intero input numero che determina i valori da considerare per il calcolo della media valore intero input valore contneg intero output contatore numeri negativi contmed intero lavoro contatore numeri per calcolare la media i intero lavoro contatore del ciclo media reale output valore finale della media calcolata

Algoritmo INIZIO Num Cifra I = 0; contneg = 0, ContMed = 0, media = 0 Num Num < 0 contneg ++ Num > cifra contmed ++ media = media + num I = I + I = N media = media/contmed media, contneg INE Codifica in C++ #include <iostream> using namespace std; int main () string nome; string listacinema; int num; int contneg; int contmed; int valore; int cifra; float media; int i; i= 00;

cout<< Inserire il numero di valori da considerare\t ; cin>>num; while (num > 50); i = 0; contneg = 0; contmed = 0; media=0; cout<< Inserire il valore al di sopra del quale calcolare la media\t ; cin>>cifra; cout<< inserire il valore\t ; cin>>valore; if (valore <0) contneg ++; if (valore >cifra) media = media + valore; contmed++; i++; while(i < num); media = media/contmed; cout<< alore finale media: <<media<<endl; cout<< Totale numeri negativi: <<contneg<<endl; system ( pause ); Codifica in B.NET Interfaccia txtal txtmedia txtnegativi btnmedia Public Class frmmedia Dim num As Integer Dim valore As Integer Dim media As Single Dim numneg As Integer Dim cifra As Integer Dim contneg As Integer Dim contmed As Integer Dim i As Integer Numero di valori input alore di ogni numero input Media Totale numeri nagativi Cifra input che determina il calcolo della media Contatore numeri negativi Contatore numeri oltre il valore per calcolare la media Contatore del ciclo Private Sub frmmedia_load(byal sender As System.Object, Byal e As System.EventArgs) Handles MyBase.Load num = 0 Do Until num <= 50 And num > 0 num = InputBox( Inserire il numero di valori da considerare ) Loop

cifra = InputBox( Inserire il valore al disopra del quale calcolare la media ) i = 0 contneg = 0 contmed = 0 txtal.ocus() Private Sub btnmedia_click(byal sender As System.Object, Byal e As System.EventArgs) Handles btnmedia.click valore = al(txtal.text) If valore < 0 Then contneg = contneg + i = i + If valore > cifra Then media = media + valore contmed = contmed + txtal.clear() txtal.ocus() If (i = num) Then btnmedia.enabled = alse txtal.enabled = alse media = media / contmed txtmedia.text = media txtnegativi.text = contneg Label2.isible = True Label3.isible = True txtmedia.isible = True txtnegativi.isible = True End Class Esercizio 3 Analisi. Leggo in input il numero di concorrenti della squadra (num). accio un primo ciclo esterno sul numero dei concorrenti, a ogni ciclo inserisco il nome del concorrente (nome) e uno più interno per inserire i tempi (tempo) delle 0 gare. Dopo ogni tempo inserito accumulo la media (media) dei tempi di ogni gara e il totale squadra (totsquadra). Al termine dell inserimento dei tempi delle gare calcolo la media del concorrente (media/0) e visualizzo il nome del concorrente e la media calcolata. Al termine del ciclo più esterno, sul numero dei concorrenti, visualizzo il tempo totale della squadra. variabili N tipo utilizzo descrizione num intero input numero concorrenti nome stringa input nome del concorrente tempo intero input tempo in secondi di ogni gara media reale output media tempi gara di ogni concorrente totsquadra intero output totale tempi squadra i intero lavoro contatore del ciclo sui 0 tempi gara conc intero lavoro contatore del ciclo sul numero concorrenti

Algoritmo INIZIO Num Nome media = 0 Tempo media = media + tempo totsquadra = totsquadra + tempo I = I + I > = 0 media = media/0 nome, media conc = conc+ conc > = num totsquadra INE Codifica in C++ #include <iostream> using namespace std; int main () string nome; int num; int conc; int tempo; int TotSquadra; float media; int i; cout<< Inserire il numero di concorrenti\t ; cin>>num; conc = 0; TotSquadra = 0; i = 0; cout<< inserire il nome del concorrente\t ;

cin>>nome; media = 0; cout<< inserire il tempo( <<i+<< )\t ; cin>>tempo; media = media + tempo; TotSquadra= TotSquadra + tempo; i++; while(i < 0); media = media/0; conc++; cout<< Concorrente: <<nome<<endl; cout<< Media tempi: <<media<<endl; while(conc < num); cout<< Totale tempi squadra: <<TotSquadra<<endl; system ( pause ); Codifica in B.NET Interfaccia txtnome txttempi txtnomic txtmediac btncalcola txtsquadra Public Class orm Dim Media As Single Dim Nome As String Dim i As Integer Dim num As Integer Dim conc As Integer Dim TotSquadra As Integer Private Sub orm_load(byal sender As System.Object, Byal e As System.EventArgs) Handles MyBase.Load i = 0 conc = 0 TotSquadra = 0 num = InputBox( Inserire il numero di concorrenti ) txtnome.ocus() Private Sub btncalcola_click(byal sender As System.Object, Byal e As System.EventArgs) Handles btncalcola.click Media = 0 or i = 0 To 9 Media = Media + al((txttempi.lines(i))) TotSquadra = TotSquadra + al((txttempi.lines(i))) Next Media = Media / 0 txtnomic.appendtext(txtnome.text & Chr(3) & Chr(0)) txtmediac.appendtext(media & Chr(3) & Chr(0)) conc = conc +

txtnome.clear() txttempi.clear() If conc = num Then btncalcola.enabled = alse txtnome.enabled = alse txttempi.enabled = alse txtsquadra.text = TotSquadra End Class