Esercizi (semplici algoritmi)
|
|
|
- Agnella Venturini
- 9 anni fa
- Просмотров:
Транскрипт
1 Esercizi (semplici algoritmi) CORDA Informatica A. Ferrari
2 Problema delle 12 monete Abbiamo 12 monete che sembrano identiche ma non lo sono. Una di esse ha un peso diverso dalle altre ma non sappiamo qual è e neppure se è più pesante o più leggera delle altre. Dobbiamo scoprire qual è la moneta di peso diverso, con 3 pesate comparative utilizzando una bilancia a due piatti.
3 Algoritmo delle 12 monete
4 Esercizio 1 Scrivere un programma che implementa l algoritmo presentato per risolvere il problema delle 12 monete Scrivere una seconda versione dell algoritmo in cui si pesano solamente 2 monete per volta
5 Esercizio 2 Scrivere un programma in linguaggio C che stampi tutte le permutazioni ottenibili combinando le 4 lettere A, B, C, D. Segue un possibile output atteso del programma. ABCD BACD CABD DABC ABDC BADC CADB DACB ACBD BCAD CBAD DBAC ACDB BCDA CBDA DBCA ADBC BDAC CDAB DCAB ADCB BDCA CDBA DCBA
6 Esercizio da Olimpiadi Informatica (Lo struzzo Simone) Lo struzzo Simone si sposta solo nelle direzioni dei quattro assi cardinali (Nord, Sud, Est, Ovest). Ogni suo passo misura 1 metro. Dovete scrivere un programma che, data una sequenza di spostamenti di Simone, misuri quant'è la distanza fra il punto di partenza e il punto di arrivo Dati di input Il file input.txt contiene la sequenza degli spostamenti. Tale file è costituito da un'unica riga di testo, contenente una sequenza di S, N, E, O (che indicano gli spostamenti nelle direzioni Sud, Nord, Est, Ovest rispettivamente). La sequenza è terminata da un *. Ad esempio, il file di input NNESO* dice che Simone si sposta di due metri a Nord, poi di un metro verso Est, poi di un metro verso Sud, e quindi di un metro a Ovest. Dati di output Il file output.txt deve contenere un'unica riga. Su questa riga dovrà comparire il numero intero corrispondente al quadrato della distanza.
7 Lo struzzo Simone (2) File input.txt File output.txt NNSEEESNOENNS* 13 NNESOS* 0 OSOS* 4 Assunzioni Il numero complessivo di spostamenti contenuti nel file di input è minore o uguale a L'esecuzione del programma deve terminare entro 5 secondi.
8 Input output #include <stdio.h> int main() { FILE *fin = fopen("input.txt", "r"); FILE *fout = fopen("output.txt", "w"); char input[100000]; fscanf(fin, "%s", input); while (input[i]!= '*') { } } fprintf(fout, "%d",.); fclose(fin); fclose(fout); return 0;
9 Lo struzzo Simone (3) #include <stdio.h> int main() { FILE *fin = fopen("input.txt", "r"); FILE *fout = fopen("output.txt", "w"); char input[100000]; int i = 0, ns = 0, eo = 0; fscanf(fin, "%s", input); while (input[i]!= '*') { switch (input[i]) { case 'N': ns++; break; case 'S': ns--; break; case 'E': eo++; break; case 'O': eo--; break; } i++; } fprintf(fout, "%d", ns*ns + eo*eo); fclose(fin); fclose(fout); return 0; }
10 Esercizio da Olimpiadi Informatica (La biblioteca degli smemorati ) Descrizione del problema La vostra biblioteca rionale ha qualche problema nello stabilire da quanto tempo gli utenti tengono i libri. Dovete aiutarli scrivendo un programma che, prese in input due date del 2015, stabilisca quanti giorni intercorrono tra le due date. Dati di input Il file input.txt è formato da una riga che contiene la data iniziale e la data finale del prestito. Più precisamente, la riga contiene quattro interi: la prima coppia specifica la data iniziale, la seconda la data finale. Ogni data è formata da due numeri, e cioè il giorno del mese e il numero del mese. Dati di output Il file output.txt deve contenere un'unica riga. Su questa riga dovrà comparire il numero intero corrispondente ai giorni che intercorrono tra le due date in input.
11 La biblioteca degli smemorati (2) Assunzioni La seconda data non precede mai la prima. Il numero di giorni considerato non comprende quello iniziale: quindi, ad esempio, tra il 2 gennaio e il 2 gennaio intercorrono 0 giorni, tra il 30 gennaio e il 2 febbraio intercorrono tre giorni, e così via. L'esecuzione del programma deve terminare entro 5 secondi. File input.txt File output.txt
Scuola Secondaria di I Gr. Ugo Foscolo Torino
Scuola Secondaria di I Gr. Ugo Foscolo Torino Classe 2 L - Referente Prof.ssa Daniela Favale 1 - Piergiorgio Balestrieri - I numeri di Gauss Il matematico Carl Gauss, all età di 9 anni, riuscì a risolvere
CALCOLO COMBINATORIO. Psicometria 1 - Lezione 5 Lucidi presentati a lezione AA 2000/2001 dott. Corrado Caudek
CALCOLO COMBINATORIO Psicometria 1 - Lezione 5 Lucidi presentati a lezione AA 2000/2001 dott. Corrado Caudek 1 Il problema del calcolo combinatorio è stabilire in quanti modi diversi una sequenza di eventi
Autore dell esperienza CONTEROSITO Salvatore LICEO ARTISTICO STATALE "FELICE CASORATI" DI NOVARA
GOLD 2004 OGGETTO Esperienza n 034 Titolo dell esperienza IL DISEGNO E LA PITTURA COME PROGETTAZIONE E SISTEMA Autore dell esperienza CONTEROSITO Salvatore LICEO ARTISTICO STATALE "FELICE CASORATI" DI
La probabilità. Calcolo combinatorio ed elementi di probabilità
La probabilità Calcolo combinatorio ed elementi di probabilità Origini e definizioni Il calcolo delle probabilità è nato intorno ai giochi di azzardo. Oggi è una disciplina a sé stante che può essere di
Kangourou Italia Gara del 17 marzo 2016 Categoria Ecolier Per studenti di quarta o quinta della scuola primaria
Kangourou Italia Gara del 17 marzo 2016 Categoria Ecolier Per studenti di quarta o quinta della scuola primaria I quesiti dal N. 1 al N. 8 valgono 3 punti ciascuno 1. Un cangurino compie oggi 6 settimane
Alcuni esercizi. 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli
Alcuni esercizi 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Stampa di voti Esempio 1 (switch) Realizzare un programma che legge da input un voto (carattere tra A ed E ) e ne
2 Operatori matematici e costrutto if
Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione delle operazioni tra numeri e del costrutto condizionale if. Si introducono anche le due funzioni
I files in C. A cura del prof. Ghezzi
I files in C A cura del prof. Ghezzi 1 Perchè i files? Realizzano la persistenza dei dati dati che sopravvivono all esecuzione del programma Sono delle strutture di dati sequenziali 2 Files e S.O. I files
Laboratorio di informatica Ingegneria meccanica
Laboratorio di informatica Ingegneria meccanica Esercitazione 6 7 novembre 2007 Correzione di un programma Un programma può contenere errori sintattici e/o errori logici. Gli errori sintattici vengono
Un 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
RELAZIONE DELLA PROVA DI LABORATORIO DI INFORMATICA
RELAZIONE DELLA PROVA DI LABORATORIO DI INFORMATICA Anno scolastico Lab informatica AULA n 35 Data inizio svolgimento Progr. relazione primo trimestre secondo pentamestre Cognome e Nome DATI DELLO STUDENTE
Lezione 6 Selection/Insertion Sort su interi e stringhe
Lezione 6 Selection/Insertion Sort su interi e stringhe Rossano Venturini [email protected] Pagina web del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start Tutoraggio Venerdì 14
Il teorema di ricorrenza di Poincare, il modello di Ehrenfest ed il principio di Indeterminazione di Heisenberg.
Il teorema di ricorrenza di Poincare, il modello di Ehrenfest ed il principio di Indeterminazione di Heisenberg. dr.ing. Alberto Sacchi Sviluppo Progetti Avanzati srl- R&D Dept. [email protected] 1)SINTESI
Qualsiasi programma in C++ segue lo schema:
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
Preparazione allo Scritto di Programmazione
Preparazione allo Scritto di Programmazione Informatica / Comunicazione Digitale A.A. 2013/2014 1. Una riga di testo è detta numerica se e solo se contiene più cifre che caratteri di altro genere. Ad esempio,
Algoritmi 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
Fondamenti 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
Lab 04 Istruzioni, cicli e array"
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2009/2010 Lab 04 Istruzioni, cicli e array" Lab04 1 Esercizio 1" Si scriva un
Fondamenti 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
Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly
Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly Scrivere il codice ARM che implementi le specifiche richieste e quindi verificarne il comportamento usando il simulatore
Programmazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 4 - Puntatori, vettori e stringhe Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti
Politecnico 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: [email protected] sito: users.iol.it/genna18 Risoluzione di un problema Dato
Fondamenti di Informatica
Vettori e matrici #1 Le variabili definite come coppie sono dette variabili scalari Fondamenti di Informatica 5. Algoritmi e pseudocodifica Una coppia è una variabile
Lezione 8: Stringhe ed array multidimensionali
Lezione 8: Stringhe ed array multidimensionali Vittorio Scarano Corso di Laurea in Informatica Università degli Studi di Salerno Struttura della lezione AVVISO: la lezione di laboratorio di 28/5 non si
IL 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
Esercitazione 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
ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
Ogni parte non cancellata a penna sarà considerata parte integrante della soluzione.
Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Appello del 18 luglio 2012 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene 3 esercizi
Verificare se un albero binario è bilanciato
Verificare se un albero binario è bilanciato Definizione: Un albero è bilanciato nel Numero dei Nodi, brevemente n- bilanciato, quando, per ogni sottoalbero t radicato in un suo nodo, il numero dei nodi
Informatica (A-K) 5. Algoritmi e pseudocodifica
Vettori e matrici #1 Informatica (A-K) 5. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile & Ambientale A.A. 2011-2012 2 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
Olimpiadi Italiane di Informatica. Selezione Territoriale 14 Aprile Testi e soluzioni ufficiali dei problemi
Olimpiadi Italiane di Informatica Selezione Territoriale 14 Aprile 2016 Testi e soluzioni ufficiali dei problemi Testi dei problemi William Di Luigi, Gabriele Farina, Luigi Laura, Gemma Martini, Luca Versari
Funzioni con numero variabile di parametri: Funzioni Variadiche in C. Massimo Benerecetti Laboratorio di Algoritmi e Strutture Dati
Funzioni con numero variabile di parametri: Funzioni Variadiche in C Massimo Benerecetti Laboratorio di Algoritmi e Strutture Dati Funzioni «variadiche» Le funzioni che ricevono un numero variabile di
Terzo allenamento. Olimpiadi Italiane di Informatica - Selezione territoriale
Terzo allenamento Olimpiadi Italiane di Informatica - Selezione territoriale Luca Chiodini [email protected] - [email protected] 22 marzo 2016 Programma 1. Lettura di un problema tratto dalle
PROGRAMMA = ALGORITMO
Corso di Laurea Scienze Prof. San. Tec., Area Tecnico-Assistenziale SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Anno Accademico 2005-2006 Prof. Fausto Passariello Corso Integrato Metodologia della Ricerca
Quarto allenamento. Olimpiadi Italiane di Informatica - Selezione territoriale
Quarto allenamento Olimpiadi Italiane di Informatica - Selezione territoriale Luca Chiodini [email protected] - [email protected] 30 marzo 2017 Programma 1. Lettura e analisi di un problema 2.
Fondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
INFORMATICA. Strutture iterative
INFORMATICA Strutture iterative Strutture iterative Si dice ciclo (loop) una sequenza di istruzioni che deve essere ripetuta più volte consecutivamente. Si consideri ad esempio il calcolo del fattoriale
Primo programma in C
Primo programma in C Struttura minima di un file C Applicazioni C in modo console Struttura del programma Commenti Direttive #include Definizione di variabili Corpo del main 2 Struttura minima di un file
Gestione dei files. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Via Leopardi 132
Gestione dei files Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Via Leopardi 132 Struttura del disco fisso Un disco fisso è composto da una serie di piatti sovrapposti Ogni piatto è
