Fortza4 - progettato con elementi della classe Terza
|
|
- Florindo Guglielmi
- 6 anni fa
- Visualizzazioni
Transcript
1 Fortza4 - progettato con elementi della classe Terza Analisi del progetto Scopo del gioco Si intende realizzare un gioco tra due avversari (umani) che dispongono delle pedine colorate (rosso contro verde, nel nostro esempio) al fine di metterne quattro in fila (orizzontale o verticale o diagonale); vince chi raggiunge per primo l obiettivo. Le pedine vengono immesse dall alto, scegliendo la colonna in cui farle cadere e si depositano sulle altre pedine della colonna o sul fondo se la colonna è vuota. Nel nostro esempio la matrice consisterà di 20 colonne e 10 righe, di cui la prima non è utilizzabile e serve esclusivamente per indicare la colonna in cui giocare la pedina. Dati e codici I dati più significativi del progetto sono: una matrice di interi, di dimensione 10x20; nelle celle si userà la seguente codifica: 0 per indicare una cella vuota 1 per indicare una cella occupata dal verde +1 per indicare una cella occupata dal rosso Un controllo datagridview, di dimensione 10x20; nelle celle si userà la seguente codifica: Azzurro per la prima riga, usata per la scelta della colonna di immissione delle pedine Bianco per le celle libere Rosso per le celle occupate da pedine rosse Verde per le celle occupate da pedine verdi Le seguenti variabili globali per le informazioni generali di gioco: int ncolonne = 20; //numero colonne di gioco int nrighe = 10; //numero righe di gioco int npixel = 25; //dimensione celle di gioco int turno; //a chi tocca? -1=verde, +1=rosso bool vittoria; //indica se qualcuno ha vinto Due pannelli, che sono contenitori di controlli per disegnare una grafica flessibile e introdurre in seguito pulsanti e etichette di informazione Panel 1 - per ospitare pulsanti e altri controlli di gestione utente Panel 2 - per ospitare la griglia datagridview Soluzione del progetto Composizione del Form1 1) Inserire nel form1 un panel1 e impostare le sue proprietà come segue: Dock Top Height 35 BackColor LightSteelBlue 2) Impostare anche le proprietà del form1 come segue: Text Allinea4 3) Doppio clic sul form1 e scrivere il seguente gestore di evento: private void Form1_Load(object sender, EventArgs e) Inizio(); 4) Ignorare l errore che si solleva e proseguire
2 5) Inserire nel form1 un panel2 e impostare le sue proprietà come segue: Dock Fill BackColor Honeydew 6) Inserire nel panel2 un datagridview1 e impostare le sue proprietà come segue: Abilita Aggiunta NO Abilita Modifica NO Abilita Eliminazione NO Abilita Riordina NO Dock Left 7) Inserire nel panel2 una etichetta con la scritta : «deve giocare il colore:» 8) Inserire nel panel2 una etichetta senza scritta ma colorata di : BackColor LightSteelBlue Autosize false 9) Visualizzare il codice e inserire un commento (obbligatorio) simile al seguente: using System.Windows.Forms; /* ***************************************************************** * Programma Allinea4 data della consegna 14/02/2014 * SCUOLA: ITI G.M. ANGIOY SASSARI * CLASSE: III A INFORMATICA A.S. 2013/14 * Studente realizzatore: Guido Piano * Docenti della materia: Prof. Andrea Zoccheddu e Prof. Remo Stanco **************************************************************** */ 10) Visualizzare il codice e inserire le seguenti dichiarazioni globali (prima del metodo Form1() ): public partial class Form1 : Form //variabili globali static int ncolonne = 20; //numero colonne di gioco static int nrighe = 10; //numero righe di gioco static int npixel = 25; //dimensione celle di gioco static int turno; //a chi tocca? -1=verde, +1=rosso static bool vittoria; //indica se qualcuno ha vinto static int colonna = -1; //indica la colonna su cui si gioca int[,] griglia = new int[nrighe, ncolonne]; //0 libera, 1 rossa, -1 verde *** // public Form1() InitializeComponent();
3 OSSERVAZIONE: static è una parola chiave del linguaggio che serve per consentire l accesso alla variabile da qualsiasi punto del programma. Non è necessario in questa fase di approfondire il termine. 11) Sotto la dichiarazione del metodo standard Form1 Inserire il seguente frammento di codice: public Form1() InitializeComponent(); // metodi utente public void Preparazione() // turno = -1; //gioca il verde per primo PreparaMatrice(); PreparaDataGrid(); public void PreparaMatrice() // griglia = new int[nrighe, ncolonne]; for (int r = 0; r < nrighe; r++) for (int c = 0; c < ncolonne; c++) griglia[r, c] = 0; //cella libera OSSERVAZIONE: un metodo è un frammento di codice con un nome. Nella scrittura qui sopra si sono dichiarati due metodi denominati rispettivamente Preparazione() e PreparaMatrice(). Questa tecnica consente di scrivere pezzi di programma e di richiamarli semplicemente scrivendo il loro nome. Per esempio scrivendo PreparaMatrice() si esegue tutto il codice contenuto in esso (quello subito sotto). 12) Proseguendo, sotto i due metodi, scrivere il seguente: public void PreparaDataGrid() // datagridview1.columncount = ncolonne; datagridview1.rowcount = nrighe; datagridview1.readonly = true; datagridview1.multiselect = false; datagridview1.allowusertoaddrows = false; datagridview1.allowusertodeleterows = false; datagridview1.allowusertoordercolumns = false; datagridview1.allowusertoresizecolumns = false; datagridview1.allowusertoresizerows = false; datagridview1.enableheadersvisualstyles = false; datagridview1.columnheadersheightsizemode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing; datagridview1.rowheaderswidthsizemode = DataGridViewRowHeadersWidthSizeMode.DisableResizing; datagridview1.selectionmode = DataGridViewSelectionMode.RowHeaderSelect; datagridview1.autosizecolumnsmode = DataGridViewAutoSizeColumnsMode.AllCells; datagridview1.autosizerowsmode = DataGridViewAutoSizeRowsMode.None; datagridview1.dock = DockStyle.Fill; datagridview1.dock = DockStyle.Left; datagridview1.columnheadersheight = npixel; datagridview1.rowheaderswidth = npixel; datagridview1.scrollbars = ScrollBars.None; datagridview1.columnheadersvisible = false; datagridview1.rowheadersvisible = false; datagridview1.width = (ncolonne * npixel) - 75; datagridview1.backgroundcolor = Color.Green; Deselezione(); Color coloreturno = new Color(); if (turno == -1) coloreturno = Color.Green; coloreturno = Color.Red; label2.backcolor = coloreturno; datagridview1.backgroundcolor = coloreturno; DisegnaGriglia(); datagridview1.enabled = true; 13)
4 1) OSSERVAZIONE: il metodo PreparaDataGrid() precedente serve per impostare le proprietà del controllo datagridview1 in modo che le celle abbiano una corretta dimensione e che il suo aspetto sia adeguato alla necessità del gioco. Alcune delle proprietà usate sono decisamente poco importanti, ma servono solo per conferire un aspetto gradevole al campo di gioco. Altre sono interessanti: per es. MultiSelect indica se sia possibile selezionare contemporaneamente più di una cella (e nel nostro caso lo imponiamo a false); le proprietà ColumnCount e RowCount determinano rispettivamente il numero di colonne e righe della griglia. 14) Proseguendo, sotto i due metodi, scrivere il seguente: public void Deselezione() datagridview1.rows[0].cells[0].selected = true; datagridview1.rows[0].cells[0].selected = false; public void MostraColoreTurno() Color coloreturno = new Color(); if (turno == -1) coloreturno = Color.Red; coloreturno = Color.Green; label2.backcolor = coloreturno; datagridview1.backgroundcolor = coloreturno; public void DisegnaGriglia() for (int r = 1; r < nrighe; r++) for (int c = 0; c < ncolonne; c++) switch (griglia[r, c]) case -1: datagridview1.rows[r].cells[c].style.backcolor = Color.Green; break; case +1: datagridview1.rows[r].cells[c].style.backcolor = Color.Red; break; default: datagridview1.rows[r].cells[c].style.backcolor = Color.White; break; for (int c = 0; c < ncolonne; c++) datagridview1.rows[0].cells[c].style.backcolor = Color.PaleTurquoise; Deselezione(); OSSERVAZIONE: il metodo Deselezione() serve per evitare che ci sia una cella selezionata. Dovrebbe esistere un metodo migliore ma non l ho trovato. Il metodo MostraColoreTurno() serve solo per indicare a video quale giocatore debba muovere. Il metodo DisegnaGriglia() serve per colorare le celle del datagridview1. Qui si usa la proprietà Style di ogni singola cella della griglia per impostare il colore di sfondo usando il bianco per le celle libere, il verde e il rosso per quelle occupate e il celeste per la prima riga.
5 2) 3) 1) 15) Proseguendo, scrivere il seguente metodo: public void Mossa() datagridview1.enabled = false; int r = 0; int c = colonna; Deselezione(); while ((r < nrighe) && (griglia[r, c] == 0)) // cella libera r++; if (r == 0) //colonna piena MessageBox.Show("Colonna piena. Cambiala!", "Allinea4"); griglia[r - 1, c] = turno; DisegnaGriglia(); ControlloVittoria(); if (vittoria == false) MostraColoreTurno(); turno = -turno; datagridview1.enabled = true; OSSERVAZIONE: il metodo Mossa() serve per realizzare la mossa del giocatore. La prima fase cerca la prima cella libera della colonna selezionata. Se non riesce a scendere sotto lo zero significa che la colonna è piena, altrimenti inserisce il numero del turno nella matrice di interi e poi invoca il metodo per disegnare la griglia e infine controlla se qualcuno ha vinto. 16) Proseguendo, scrivere il seguente metodo: public void ControlloVittoria() vittoria = false; ControllaRighe(); ControllaColonne(); ControllaDiagonali(); if (vittoria) Vittoria(); OSSERVAZIONE: il metodo ControlloVittoria () serve verificare se qualcuno ha vinto. Si imposta la variabile vittoria a falsa (si suppone che nessuno abbia vinto) e poi si controllano le quadruplette rispettivamente in orizzontale, verticale e diagonale. Se la variabile vittoria è cambiata in vera allora significa che qualcuno ha vinto e si invoca il metodo Vittoria che deve comunicare che la partita è finita. 17) Proseguendo, scrivere il seguente metodo: private void ControllaRighe() for (int r = 1; r < (nrighe); r++) for (int c = 0; c < (ncolonne - 3); c++) && griglia[r, c] == griglia[r, c + 1] && griglia[r, c] == griglia[r, c + 2] && griglia[r, c] == griglia[r, c + 3]) OSSERVAZIONE: il metodo ControllaRighe () serve verificare se qualcuno ha vinto con 4 pedine in orizzontale. Se qualcuno ha vinto allora la variabile vittoria è cambiata in vera.
6 1) 2) 3) 18) Proseguendo, scrivere il seguente metodo: private void ControllaColonne() for (int r = 1; r < (nrighe - 3); r++) for (int c = 0; c < (ncolonne); c++) && griglia[r, c] == griglia[r+1, c] && griglia[r, c] == griglia[r+2, c] && griglia[r, c] == griglia[r+3, c]) OSSERVAZIONE: il metodo ControllaColonne () serve verificare se qualcuno ha vinto con 4 pedine in verticale. Se qualcuno ha vinto allora la variabile vittoria è cambiata in vera. 19) Proseguendo, scrivere il seguente metodo: private void ControllaDiagonali() for (int r = 1; r < (nrighe - 3); r++) for (int c = 0; c < (ncolonne - 3); c++) && griglia[r, c] == griglia[r + 1, c + 1] && griglia[r, c] == griglia[r + 2, c + 2] && griglia[r, c] == griglia[r + 3, c + 3]) for (int r = 1; r < (nrighe - 3); r++) for (int c = 3; c < (ncolonne); c++) && griglia[r, c] == griglia[r + 1, c - 1] && griglia[r, c] == griglia[r + 2, c - 2] && griglia[r, c] == griglia[r + 3, c - 3]) OSSERVAZIONE: il metodo ControllaDiagonali () serve verificare se qualcuno ha vinto con 4 pedine in diagonale. Se qualcuno ha vinto allora la variabile vittoria è cambiata in vera. 20) Proseguendo, scrivere il seguente metodo: public void Vittoria() if (turno == 1) MessageBox.Show( "Ha vinto il rosso!", "Allinea4"); if (turno == -1) MessageBox.Show( "Ha vinto il verde!", "Allinea4"); DialogResult risposta = MessageBox.Show( "Vuoi giocare ancora?\nse scegli No esce dal programma!", "Allinea4", MessageBoxButtons.YesNo); if (risposta == System.Windows.Forms.DialogResult.No) Close(); Preparazione(); OSSERVAZIONE: il metodo Vittoria () è preposto alla comunicazione della vittoria e alla eventuale preparazione di una nuova partita. 21) Adesso la dichiarazione dei metodi è terminata; non ci resta che collegare le invocazioni dei metodi dai gestori di eventi; i gestori di eventi sono quei particolari metodi che il programma crea automaticamente e collega, per esempio, ai pulsanti in risposta al clic. 22) Il metodo Form1_Load è associato al caricamento del Form1 e serve per compiere alcune istruzioni prima di visualizzare la finestra iniziale. Per creare il gestore di evento è consigliabile visualizzare la
7 1) 1) finestra Proprietà, selezionare il Form1, fare clic sul simbolo del fulmine che visualizza gli Eventi e individuare tra i suoi eventi il gestore Load e fare doppio clic sullo spazio a fianco. // gestori di evento private void Form1_Load(object sender, EventArgs e) Width = 600; Height = 300; Text = "Allinea4"; Preparazione(); OSSERVAZIONE: il metodo Form1_Load () si può generare in due modi diversi: il primo modo è di fare un doppio clic sul Form1 in fase di progettazione; il secondo è di individuare tra i suoi eventi (finestra Proprietà) il gestore e fare doppio clic sullo spazio a fianco. Nella figura qui sotto è proposta una illustrazione della finestra Proprietà, col metodo creato. 23) Il metodo datagridview1_cellclick serve per rispondere al clic sul datagridview1 e eseguire le istruzioni corrispondenti. Per creare il gestore di evento è consigliabile visualizzare la finestra Proprietà, selezionare il datagridview1, fare clic sul simbolo del fulmine che visualizza gli Eventi e individuare tra i suoi eventi il gestore CellClick e fare doppio clic sullo spazio a fianco. private void datagridview1_cellclick(object sender, DataGridViewCellEventArgs e) if (e.rowindex > 0) Deselezione(); MessageBox.Show ("devi fare clic sulla prima riga della colonna scelta"); return; colonna = e.columnindex; Mossa(); OSSERVAZIONE: il metodo datagridview1_cellclick () è il cuore del programma poiché si accorge dei clic dei giocatori, verifica per sicurezza che si sia fatto clic sulla prima colonna (altrimenti si deve ripetere la giocata) e, impostando la colonna scelta e invoca il metodo Mossa() che provvede alla mossa del giocatore di turno. 24) Il progetto è pronto per essere avviato ma si lascia allo studente la possibilità di arricchirlo con pulsanti e elementi informativi, le istruzioni del gioco e il salvataggio della partita. Il progetto finale dovrebbe assomigliare alla seguente illustrazione:
Tris elementare. Form1
Tris elementare Form1 Predisporre un Form1 ed inserire una PictureBox al suo interno. Impostare una dimensione quadrata per essa (es. 64 x 64). Per la PictureBox selezionare una immagine (nel mio esempio
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE USO DEL DATAGRIDVIEW PER VISUALIZZARE ARRAY DISPENSA 05.05 05-05_DataGridView[ver_15] Questa dispensa è rilasciata sotto la licenza
Gioco di carte Risorse Form1 Form Carta PictureBox Convert Convert
1 Gioco di carte Risorse Scaricare le immagini delle carte da http://www.jfitz.com/cards/classic-cards.zip Rinominare le carte nel modo seguente: x_y dove x è il valore della carta, numerata da 1 (asso)
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE ISTRUZIONE DI SELEZIONE MULTIPLA DISPENSA 02.03 02-03_Switch_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative Common
Gestione della tastiera _Keyevents Stampa del: lunedì 3 febbraio Andrea Zoccheddu CORSO INFORMATICA ITI ANGIOY SASSARI
Stampa del: lunedì 3 febbraio 2014 04.07 Gestione della tastiera Andrea Zoccheddu CORSO INFORMATICA ITI ANGIOY SASSARI Sintesi In questa dispensa si approfondisce il funzionamento del Form e la gestione
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE CREAZIONE DINAMICA DI CONTROLLI VISUALI DISPENSA 17.01 17-01_Controlli_runtime_[09] Questa dispensa è rilasciata sotto la licenza
csp & backtracking informatica e laboratorio di programmazione Alberto Ferrari Informatica e Laboratorio di Programmazione
csp & backtracking informatica e laboratorio di programmazione Alberto Ferrari Informatica e Laboratorio di Programmazione CSP (Constraint Satisfaction Problem) o CSP = problemi di soddisfacimento di vincoli
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE PROGETTAZIONE DEI METODI DISPENSA 07.02 07-02_Metodi_Progettazione_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE ALTRI TIPI DI DATO INTERESSANTI DISPENSA 01.05 01-05_Tipi_Ulteriori_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative
WORD PROCESSING.
WORD PROCESSING www.diego72.altervista.org CREARE IN SERIE LETTERE ED ETICHETTE La Creazione guidata Stampa unione è presente nella scheda Lettere consente di creare lettere tipo, etichette per indirizzi,
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE INTRODUZIONE ALLE ISTRUZIONI ITERATIVE DISPENSA 03.01 03-01_Iterazioni_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative
Classe Squadra. #include <iostream> using namespace std;
Classe Squadra Si vuole scrivere un programma che gestisce la classifica di un campionato tra squadre di calcio, ognuna identificata dal proprio nome. Il programma deve essere in grado di assegnare un
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE SCOPO E USO DELLE VARIABILI ELEMENTARI DISPENSA 01.04 01-04_Variabili_Base_[ver_15] Questa dispensa è rilasciata sotto la licenza
Attività interattiva Cruciverba di numeri
Tutti gli esercizi interattivi propongono quattro schede per le impostazioni di funzionamento: Attività - Opzioni di esecuzione - Sito web - Scorm. Mentre la scheda Attività è ogni volta diversa ed è oggetto
Quando usare file di dati
Quando usare file di dati Per salvare dati da un esecuzione di un applicazione alla successiva Da usare quando c è soltanto una piccola quantità di dati, tale da non giustificare l uso di un database Da
Informatica 16/06/2016 durata complessiva: 2h
COGNOME: MATRICOLA: DOCENTE: NOME C1 Domanda 1 Si convertano i seguenti numeri da decimale a binario in complemento a 2 su 8 bit: 64 10 = X ca2 23 10 = Y ca2 X = Y= Domanda 2 Una memoria RAM ha dimensione
Corso di Fondamenti di Informatica Prof Aldo Franco Dragoni Prova Scritta 25/07/2011
Corso di Fondamenti di Informatica Prof Aldo Franco Dragoni Prova Scritta 25/07/2011 La figura riporta una "matrice" di 16 x 16 pixels, di soli 4 colori differenti: "B"ianco, "G"rigio, "N"ero e "V"erde.
Fondamenti di Informatica T-1
Fondamenti di Informatica T-1 Array Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2016/2017 Fondamenti di Informatica T-1 Allegra De Filippo 1 / 14 ARRAY (1) Un vettore (array) è un insieme
Attività interattiva Gioco del memory
Tutti gli esercizi interattivi propongono quattro schede per le impostazioni di funzionamento: Attività - Opzioni di esecuzione - Sito web - Scorm. Mentre la scheda Attività è ogni volta diversa ed è oggetto
Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)
Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Selezione di prove di esame al calcolatore Esercizio 1 (esame del 13/01/2006) La classe Matrice definisce oggetti che rappresentano matrici
Le strutture di controllo in C++
Le strutture di controllo in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli
Manuale di KReversi. Clay Pradarits Sviluppatore: Mario Weilguni Reviewer: Lauri Watts Traduzione e revisione della documentazione: Valter Mura
Clay Pradarits Sviluppatore: Mario Weilguni Reviewer: Lauri Watts Traduzione e revisione della documentazione: Valter Mura 2 Indice 1 Introduzione 5 2 Come si gioca 6 3 Regole del gioco, strategie e suggerimenti
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE UTILIZZO DI PIÙ FINESTRE DISPENSA 04.04 04-04_MultiForm_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative Common
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE USO DELLE PROPRIETÀ DISPENSA 01.02 01-02_Proprietà_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative Common CC BY-NC-SA.
Array di array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 03. A. Miola Febbraio 2008
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa Array di array A. Miola Febbraio 8 http://www.dia.uniroma.it/~java/fondinf/ Array di array Contenuti Array bidimensionali creazione
Manuale di Bovo. Aron Bostrom Eugene Trounev Traduzione del documento: Simone Solinas BOVO N 5
Aron Bostrom Eugene Trounev Traduzione del documento: Simone Solinas BOVO N 5 2 Indice 1 Introduzione 5 2 Come giocare 6 3 Regole del gioco, strategie e suggerimenti 8 3.1 Regole del gioco.......................................
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE PILE E CODE DI DATI DISPENSA 11.02 11-02_Pile_Code_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative Common CC BY-NC-SA.
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE ISTRUZIONI DI SELEZIONE NIDIFICATE DISPENSA 02.02 02-02_Annidare_Decisioni_[ver_15] Questa dispensa è rilasciata sotto la licenza
E9 Esercizi sul Capitolo 9 Array
E9 Esercizi sul Capitolo 9 Array Esercizio 1 (esercizio 9.1 del libro di testo). Implementare un metodo statico di nome stringacorta che prende come parametro un array di oggetti String e che restituisce
E17 Esercizi sugli Array in Java
E17 Esercizi sugli Array in Java Esercizio 1 (esercizio 9.1 del libro di testo). Implementare un metodo statico di nome stringacorta che prende come parametro un array di oggetti String e che restituisce
STRUTTURE DI CONTROLLO DEL C++
STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto
Evidenziare i divisori di un numero
Evidenziare i divisori di un numero Vogliamo con questo foglio di excel evidenziare tutti i divisori di un numero. Curiosamente il lavoro non prevede l inserimento di formule e funzioni ma l utilizzo della
Laboratorio di Algoritmi e Strutture Dati. Esercizi
Laboratorio di Algoritmi e Strutture Dati Esercizi Teresa M.A. Basile basile@di.uniba.it Dipartimento di Informatica Università degli Studi di Bari Aldo Moro 1 Operatori Indispensabili Ogni Classe che
Proprietà delle potenze
Proprietà delle potenze Questo passo a passo ti aiuterà a costruire un foglio elettronico sulle proprietà delle potenze. Inserendo in determinate celle valori scelti a caso, relativi a basi ed esponenti,
14Ex-Cap11.qxd :20 Pagina Le macro
14Ex-Cap11.qxd 21-12-2006 11:20 Pagina 203 11 Le macro Creare le macro Registrare una macro Eseguire una macro Riferimenti assoluti e relativi nelle macro Assegnare un pulsante a una macro Modificare una
interfacce grafiche con C# Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
interfacce grafiche con C# Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni 2 Schema funzionale di una tipica applicazione grafica (winform) 3 Controlli (Bottoni, Caselle di testo RadioButton
Le basi del linguaggio Java
Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una
CoderDojo Firenze. Filetto a 5. Il filetto si gioca su una griglia ampia a piacere, e l'obiettivo è mettere in file 5 segni uguali.
CoderDojo Firenze Filetto a 5 Il gioco: Il filetto si gioca su una griglia ampia a piacere, e l'obiettivo è mettere in file 5 segni uguali. Il programma: Fase 1: disegno della griglia. Il risultato della
Laboratorio 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[]
Tabelle. Verdi A. Bianchi B. Rossi C. 12/02 Trasferta a Milano. Corso in sede. Riunione Ispettori a Milano Riunione in sede.
1 Tabelle Una tabella è una griglia composta da righe e colonne: l intersezione fra una riga e una colonna si chiama cella ed è un elemento di testo indipendente che può avere un proprio formato. Spesso,
Esempi di alcuni giochi
Esempi di alcuni giochi GIOCO 4: PARTITA A SEI LANCI Hai bisogno di: un dado, un foglio e almeno 2 giocatori. Devi disegnare una griglia con sei righe numerate. Il numero delle colonne corrisponde al numero
Cultura Tecnologica di Progetto
Cultura Tecnologica di Progetto Politecnico di Milano Facoltà di Disegno Industriale - FOGLI DI CALCOLO - A.A. 2003-2004 2004 Foglio Elettronico Un foglio elettronico è un potente strumento di calcolo,
ECLD più Esercitazioni pratiche di Spreadsheets
ECLD più Esercitazioni pratiche di Spreadsheets Le schede che trovi nelle prossime pagine ti permetteranno di esercitarti sulle funzionalità di Excel che sono spiegate nel volume ECDL più per: passare
Porta seriale Classe 4E Febbraio 2013. Form 1
Porta seriale Classe 4E Febbraio 2013 Form 1 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text;
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE LE MATRICI O ARRAY MULTIDIMENSIONALI DISPENSA 05.04 05-04_Matrici_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative
giochi sulla persistenza
UdA 6 Applicazioni Web in PHP lezione 1 giochi sulla persistenza In questa lezione impareremo... ad applicare i campi nascosti, le sessioni e i cookies per realizzare semplici giochi Primo esempio: il
Esercitazione n 2. Obiettivi
Esercitazione n 2 Obiettivi Progettazione di una applicazione Java Utilizzo di classi come schemi Utilizzo di costruttori Utilizzo di stringhe/array Uguaglianza tra oggetti Utilizzo di classi come componenti
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE CONTROLLI NON VISUALI DISPENSA 04.03 04-03_Controlli_non_visuali_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative
Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER
Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico
Fondamenti di Informatica T-1. Classi e array
Classi e array 2 Classi e metodi statici Una classe è un costrutto linguistico che permette di modellare un'entità di un sistema, definendone le caratteristiche (variabili interne) e le azioni (metodi).
Costrutti iterativi. Utilizzo dei costrutti iterativi
Costrutti iterativi Utilizzo dei costrutti iterativi Costrutti iterativi (1/3) I costrutti iterativi permettono di eseguire ripetutamente del codice Il linguaggio Java mette a disposizione tre costrutti
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE INTRODUZIONE ALLE ISTRUZIONI DI SELEZIONE DISPENSA 02.01 02-01_Istruzioni_Decisionali_[ver_18] Questa dispensa è rilasciata sotto
Capitolo 2. Figura 21. Inserimento dati
Capitolo 2 INSERIMENTO DI DATI In ogni cella del foglio di lavoro è possibile inserire dati che possono essere di tipo testuale o numerico, oppure è possibile inserire formule le quali hanno la caratteristica
PROGRAMMAZIONE A MODULI IN C++ MEDIANTE CODEBLOCKS
PROGRAMMAZIONE A MODULI IN C++ MEDIANTE CODEBLOCKS Ossia come creare un progetto codeblocks contenente più file sorgente e/o di intestazione 1. Creare un nuovo progetto selezionando il menu a tendina File->New->Project
Esercitazione 2. Espressioni booleane Il comando if-else
Esercitazione 2 Espressioni booleane Il comando if- Espressioni booleane L espressione (i==100) è un espressione booleana. La sua valutazione può restituire solo uno dei due valori booleani true = 1 (in
Marco Canu Excel Advanced: Note Operative Tabelle Pivot Excel 2013 Sella & Mosca Agg. 06/05/2017
Indice Premessa... 2 Per generare una Tabella Pivot... 2 Esempio pratico... 5 Modifichiamo l esempio... 6 I Menu della Tabella Pivot... 9 Per realizzare un grafico Pivot... 10 Esposizione Tabella Pivot
Burg appenzell. ( Traduzione a cura di Andrea Turing70 Casarino della Tana dei Goblin )
Burg appenzell ( Traduzione a cura di Andrea Turing70 Casarino della Tana dei Goblin ) Nota importante: al fine di un agevole comprensione di questa traduzione del regolamento è necessario fare riferimento
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
#include<stdio.h> #include<stdlib.h> #include<string.h> typedef char Griglia [3][3];
/*REALIZZARE IL GIOCO DEL TRIS COMPLETAMENTE FUNZIONANTE,CIOE'IL PROGRAMMA DEVE: -PERMETTERE DI GIOCARE A TRIS SU UN CAMPO 3x3 -STAMPARE IL CAMPO DOPO OGNI INSERIMENTO AGGIORNANDO LA POSIZIONE DEI SIMBOLI
INSERIRE I DATI NEL DATABASE
13-Cap10_DWCS3.qxd 18-11-2009 11:43 Pagina 201 CAPITOLO10 INSERIRE I DATI NEL DATABASE In questo capitolo In questo capitolo imparerai a interagire con i contenuti del database gestiti nel sito. In particolare
Manuale di Utilizzo. Palmari Risto Orderman
Manuale di Utilizzo Palmari Risto Orderman Indice generale 1.Avvio...3 2.Password...5 3.Elenco Sale...8 4.Elenco Tavoli...11 5.Schermata di Blocco...16 6.Ordinazioni...19 1Modifica Comanda...22 2Inserimento
Si descriva il comportamento del metodo main della classe ES2: cosa viene stampato sul video? Giustificare la risposta.
Esame scritto di: Fondamenti di Informatica - corsi 4 e 5 Data: 12 dicembre 2001 Traccia: B Tempo disponibile: 3 ore Cognome Nome Matricola Corso CORSO DI LAUREA Esercizio 1. Si consideri la seguente classe:
Corso di Access. Modulo L2 A (Access) 1.4 Le maschere
Corso di Access Modulo L2 A (Access) 1.4 Le maschere 1 Prerequisiti Concetto di database Interfaccia utente Elementi grafici (etichette, caselle di testo, pulsanti) 2 1 Introduzione Ora che sappiamo usare
Percorsi Triennali di IeFP. Trasmissione schede anagrafiche degli allievi da ARS al sistema monitoraggio allievi WEB A39
Percorsi Triennali di IeFP Trasmissione schede anagrafiche degli allievi da ARS al sistema monitoraggio allievi WEB A39 Scadenze 2014 comunicazioni degli esiti (9 luglio) e delle iscrizioni (6 settembre)
Note APRIRE IL PROGRAMMA EXCEL
APRIRE IL PROGRAMMA EXCEL 1. Fai clic sul pulsante Start. 2. Fai scorrere l elenco dei programmi e a seconda della versione del tuo Windows: a. Fai clic su Microsoft Office e/o b. Fai clic su Microsoft
MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ
PATENTE EUROPEA DEL COMPUTER 5.0 MODULO 5 Database (Microsoft Access 2007) Parte 3 A cura di Mimmo Corrado Gennaio 2012 MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ Il Modulo 5, richiede che il candidato
Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013
Programmazione a Oggetti e JAVA Prof. B.Buttarazzi A.A. 2012/2013 Sommario Array Array monodimensionali Array bidimensionali Esercizi 16/01/2013 2 ARRAY Gli array sono oggetti utilizzati in Java per memorizzare
Appendice B - Othello come applet
Appendice B - Othello come applet Il gioco dell'othello, detto anche Reversi, consiste in una scacchiera di 64 caselle, 8 x 8, su cui all'inizio si trovano quattro pedine, due nere e due bianche, vedi
INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere
MICROSOFT OFFICE POWERPOINT Come creare presentazioni interattive di documenti.
MICROSOFT OFFICE POWERPOINT 2007 Come creare presentazioni interattive di documenti. Che cos è Microsoft Office Powerpoint? È un software rilasciato dalla Microsoft, parte del pacchetto di Office, che
9In questa sezione. Ordinare e filtrare i dati. Dopo aver aggiunto dati ai fogli di lavoro, potresti voler
9In questa sezione Ordinare e filtrare i dati Ordinare i dati del foglio di lavoro Creare un elenco personalizzato Filtrare rapidamente i dati con Filtro automatico Creare un filtro avanzato Convalidare
Ma cominciamo a vedere questo programma un pò più da vicino:
Introduzione all uso di excel (Nicola Basile) In un corso di prima informatizzazione, è abbastanza complicato, spiegare che cosa è Excel, si potrebbe dire è un foglio elettronico, o foglio di calcolo (in
Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
nome di un menu per visualizzarlo e poi selezionate facendo clic sul comando che vi interessa.
1 (conoscere le basi di Excel) < I controlli della. Finestra > La finestra di apertura di Excel presenta una cartella di lavoro vuota; la finestra del programma occupa tutto lo spazio dello schermo, mentre
Modulo 4 Esercitazione Nr 2 Office 2007
MODULO 4 : EXCEL ESERCITAZIONE N 2 Dopo aver lanciato in esecuzione il Programma EXCEL eseguire le seguenti istruzioni : 1. Dopo avere rinominato il Foglio 1 col nome GENNAIO, impostare le larghezze delle
Oggetti e dati primitivi 1
I membri delle classi Oggetti e dati primitivi Corso di laurea in Le classi contengono 2 tipi di membri, definiti per l intera classe o per le singole istanze Le variabili o i campi, che rappresentano
Esercitazione n 2. Obiettivi
Esercitazione n 2 Obiettivi Progettazione di una applicazione Java Utilizzo di classi come schemi Utilizzo di costruttori Utilizzo di stringhe Uguaglianza tra oggetti Utilizzo di classi come componenti
Informatica d ufficio
Informatica d ufficio Anno Accademico 2008/2009 Lezione N 3 Microsoft Word - prima parte Microsoft Word E un Word processor,cioè un programma che consente di creare e modificare documenti. Prevede numerose
Corso di PHP. Prerequisiti. 3 - Le strutture di controllo. Istruzioni semplici Controllo del flusso di programma
Corso di PHP 3 - Le strutture di controllo 1 Prerequisiti Istruzioni semplici Controllo del flusso di programma 2 1 Introduzione In molti casi le sole istruzioni viste finora non sono sufficienti a risolvere
GIOCO n.1 IL TRIS. o Mossa G1 o Controlla se vincita. o Visualizza griglia di gioco. o Mossa G2
GIOCO n.1 IL TRIS Si gioca con due giocatori, i cui nomi sono dati in input. Il gioco si svolge su una matrice di interi 3x3, dove il primo giocatore posiziona 1, e il secondo giocatore posiziona 2. 0).
CORSO DI INFORMATICA GENERALE. Università degli Studi di Bergamo
CORSO DI INFORMATICA GENERALE Università degli Studi di Bergamo Microsoft Excel E un software applicativo per la gestione dei fogli di calcolo. E un programma che consente la gestione e l organizzazione
JavaScript Core Language. Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132
JavaScript Core Language Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132 Condizioni L utilizzo di operatori relazionali e logici consente di formulare delle condizioni
ListBox e ComboBox. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
ListBox e ComboBox Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni GESTIRE COLLEZIONI DI DATI Due tipi di controllo, ListBox e ComboBox, consentono di gestire collezioni di dati unidimensionali.
Laboratorio di Informatica I
Struttura della lezione Lezione 3: Istruzioni ed operatori booleani. Vittorio Scarano Corso di Laurea in Informatica Università di Salerno Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo
Fogli Google: nozioni di base sui fogli di lavoro
Fogli Google: nozioni di base sui fogli di lavoro Una volta acquisita familiarità con le procedure di accesso, creazione e modifica dei Documenti Google, leggi queste informazioni per conoscere le nozioni
Prova d Esame Compito A
Prova d Esame 19.07.2005 Compito A Domanda 1 A) Si richiede di analizzare le seguenti sezioni di codice. Il candidato indichi il risultato dell esecuzione del main. public class Father { private int counter;
Informatica e Abilità Informatiche Multimediali Esercitazioni di Foglio elettronico
Informatica e Abilità Informatiche Multimediali Esercitazioni di Foglio elettronico Mauro Mezzini Dipartimento di Scienze della Formazione Università Roma Tre Ottobre, 2015 Esercizio 1 Eseguire i seguenti
CORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE METODI DELEGATI DISPENSA 17.02 17-02_Delegati_[09] Questa dispensa è rilasciata sotto la licenza Creative Common CC BY-NC-SA. Chiunque
4. I moduli in Access 2000/2003
LIBRERIA WEB 4. I moduli in Access 2000/2003 Il modulo è uno degli oggetti del database di Access e rappresenta un insieme di dichiarazioni e routine scritte con il linguaggio Visual Basic, memorizzate
Progettazione multimediale
Progettazione multimediale Le tabelle 1 Obiettivi Perché si usano le tabelle Le proprietà delle tabelle Inserimento e modifica delle proprietà 2 Perché si usano le tabelle Una pagina Web è formata da testo
Associazione semplice
Associazione semplice Apriamo ora la scheda Attività Inseriamo un'attività Scegliamo Associazione semplice Sul lato destro della finestra è presente una descrizione della funzione di quest'attività. Nella
cout << "Inserisci un numero:" << endl; cin >> n; ris = n*2; cout << "Il doppio di " << n << " e " << ris << endl;
Funzioni int n, ris; cout n; ris = n*2; cout
Come lo chiamiamo?..
Come lo chiamiamo?.. normalmente le formule sono criptiche = P.RATA(C10/12;C7*12;B11) = SUM(A10:A15)/B15 = A10*(1+$B$2) è possibile semplificare la comprensione con l uso dei nomi di riferimento a celle
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
Note ed esercizi aggiuntivi
Corso di Programmazione Anno Accademico 2015 2016 Prof. Giovanni Pighizzini Note ed esercizi aggiuntivi Gli esercizi proposti sono utili per rivedere gli esempi riportati, che sono stati sviluppati e discussi
Istruzioni decisionali
Istruzioni decionali 1. if 2. if-else 3. switch 115 switch Struttura di scelta plurima che controlla se una espresone assume un valore all interno di un certo ineme di costanti e comporta di conseguenza
(b) - Creazione del layout delle pagine nella vista Layout
(b) - Creazione del layout delle pagine nella vista Layout La vista Layout di Dreamweaver semplifica l utilizzo delle tabelle per il layout delle pagine. Nella vista Layout, è possibile progettare le pagine
METODI ESERCIZI. 07-xx_Esercizi[01] Versione del: venerdì 3 maggio Andrea Zoccheddu CORSO INFORMATICA ITI ANGIOY SASSARI
Versione del: venerdì 3 maggio 2013 07.XX METODI ESERCIZI Andrea Zoccheddu CORSO INFORMATICA ITI ANGIOY SASSARI Sintesi Esercizi sui metodi in Visual C#. Esercizio 1. scelta della firma Lo studente risponda
Creare una tabella di pivot
Creare una tabella di pivot Importiamo in un foglio di Excel una tabella di dati, di grandi dimensioni, per esempio dal sito www.istat.it/it quella relativa al Consumo di energia per i comuni capoluogo