Lez. 12 (10/11) - PBElementi di Programmazione1 Lezione 12 Esercizi.

Slides:



Advertisements
Presentazioni simili
Eventi di salvataggio VBA
Advertisements

Lez. 6 (10/11) - PBElementi di Programmazione1 Lezione 6 Parametri Facoltativi Matrici Matrici di parametri.
Lez. 8 (10/11) - PBElementi di Programmazione1 Lezione 8 Date Valutazione di espressioni File di testo sequenziali.
Lez. 8 (11/12) - PBElementi di Programmazione1 Lezione 8 Date Valutazione di espressioni File di testo sequenziali.
Lez. 11 (11/12) - PBElementi di Programmazione1 Lezione 11 Esercizi.
Lez. 7 (10/11) - PBElementi di Programmazione1 Lezione 7 Matrici di Celle Tipi String e Date.
Lez 4 (11/12)Elementi di Programmazione1 Istruzioni per il controllo del Flusso 2.
Lez. 10 (10/11) - PBElementi di Programmazione1 Lezione 10 Funzioni e Moduli Macro Analisi del flusso Esercizi.
Lez 4 (10/11)Elementi di Programmazione1 Istruzioni per il controllo del Flusso 2.
Elementi di Programmazione
EP 11/12 - PBLezione 21 Elementi di Programmazione Interazione con lutente Tipi di Dati, Variabili, Espressioni.
Elementi di Programmazione
EP 10/11 - PBLezione 2-21 Elementi di Programmazione Tipi di Dati Conversioni Istruzioni di controllo del flusso.
Oggetti Form e Controlli Registratore di Macro
EP 11/12 - PBLezione 31 Elementi di Programmazione Tipi di Dati e Conversioni Istruzioni di controllo del flusso.
Lez. 5 (10/11 - PB)Elementi di Programmazione1 Lezione 5 Procedure Funzioni Passaggio di parametri.
Lez. 5 (11/12- PB)Elementi di Programmazione1 Lezione 5 Procedure Funzioni Passaggio di parametri.
EP 12/13 - PBLezione 21 Elementi di Programmazione Interazione con lutente Tipi di Dati.
Lez. 9 (10/11) - PBElementi di Programmazione1 Lezione 9 Oggetti Moduli e Controlli Registratore di Macro.
Lez. 11 (10/11) - PBElementi di Programmazione1 Lezione 11 Esercizi.
Lez. 6 (11/12) - PBElementi di Programmazione1 Lezione 6 Matrici Matrici di parametri.
Lez. 7 (11/12) - PBElementi di Programmazione1 Lezione 7 Tipi String e Date.
Elementi di Programmazione
Lez 4 (10/11)Elementi di Programmazione1 Istruzioni per il controllo del Recupero lez.4.
MATLAB.
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
Dipartimento di Matematica
EP 13/14Lezione 21 Elementi di Programmazione Interazione con lutente Tipi di Dati, Variabili, Espressioni.
Moduli 1 In Access è possibile automatizzare diverse operazioni mediante l’utilizzo del linguaggio VBA (Visual Basic for Applications). Le istruzioni.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab m-file m-file script script Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali.
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Indipendenza lineare,
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Esercizi vari Esercizi.
Primo esercizio Scrivere un programma che legge da input
Cosè un programma? LALA PROGRAMMAZIONE PROGRAMMAZIONELALA PROGRAMMAZIONE PROGRAMMAZIONE UN ELENCO DI ISTRUZIONI, APPARTENENTI A UN BEN DEFINITO LINGUAGGIO,
Il linguaggio Fortran 90: 4. Array: Vettori e Matrici
Introduzione alla programmazione lll
APPUNTI SUL LINGUAGGIO C
Somma = A + B start Stampa Somma Leggi A,B stop Sub SOMMA( ) Dim A, B as Integer A = InputBox("Immetti un numero") B = InputBox(Immetti un secondo numero)
Lezione 2 Programmare in ASP
Laboratorio di Linguaggi di Programmazione 2007/2008 Marco Antoniotti Giuseppe Vizzari.
INTRODUZIONE A MATLAB.
PROBLEMA ALGORITMO PROGRAMMA LINGUAGGI di PROGRAMMAZIONE
Programmare in Visual Basic
EXCEL E FTP.
Riepilogo Foglio elettronico Excel - Base
Esercizi su File.
Esercizi Liste.
Tail recursion: esempio
Algoritmo Ordinamento di 3 Numeri
ND-partizione (A) n   A  somma  0 M  1/2 (  a i ) for i  1 to n do S[i]  choice ({true, false}) if S[i] then somma  somma + a i if somma > M then.
1/11/2015E. Giovannetti -- OI09.1 Olimpiadi di Informatica 2010 Giornate preparatorie Dipartimento di Informatica Università di Torino marzo –
Lez. 10 (13/14)Elementi di Programmazione1 Lezione 10 Oggetti Moduli e Controlli.
Lz. 3 (13/14)Elementi di Programmazione1 Istruzioni (strutture) di controllo 1.
Lez. 5 (13/14)Elementi di Programmazione1 Lezione 5 Procedure.
Fondamenti di informatica Oggetti e Java Luca Cabibbo Luca Cabibbo – Fondamenti di informatica: Oggetti e Java Copyright © 2004 – The McGraw-Hill Companies.
Lez. 8 (13/14)Elementi di Programmazione1 Lezione 8 Tipi String e Date.
Il ciclo while.  Permette di ripetere un blocco di istruzioni fino a quando non si verifica un determinato evento  Il ciclo while può essere realizzato.
Lez. 9 (13/14)Elementi di Programmazione1 Lezione 9 Valutazione di espressioni File di testo sequenziali.
Lez 4 (13/14)Elementi di Programmazione1 Strutture di controllo 2.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
Lez. 12 (13/14)Elementi di Programmazione1 Lezione 12 Esercizi.
Lez. 11 (13/14)Elementi di Programmazione1 Lezione 11 Esercizi.
Lez.6 (13/14)Elementi di Programmazione1 Lezione 6 Funzioni Passaggio di parametri.
Laboratorio Informatico
Soluzione e discussione equazione 2°grado con foglio elettronico di polaris office su padlet Asus Eee Le formule da inserire si possono trovare nelle tabelle.
Ordinamento. Introduzione Una delle operazioni che si possono eseguire sui vettori, è quella di ordinare gli elementi del vettore in ordine crescente.
Luca Chichisola1 Dal problema al programma LUCA CHICHISOLA.
Università dell'Insubria - C.d.L. in Banca & Finanza - A.A Modelli Finanziari nel Tempo Continuo 1 Elementi di Programmazione in Visual Basic.
Transcript della presentazione:

Lez. 12 (10/11) - PBElementi di Programmazione1 Lezione 12 Esercizi

Lez. 12 (10/11) - PBElementi di Programmazione2 INFORMAZIONI Esami –Orale non previsto (eventuali domande a facoltà del professore) –Uso libero di excel –Il compito è tutto nel file xls –2 ore di tempo

Lez. 12 (10/11) - PBElementi di Programmazione3 Domanda 8 (ex lex.11) Indicare il contenuto delle celle B1 ed B2 dopo lesecuzione del seguente codice VBA: Option Explicit Sub ex() Dim x As Double, y As Double x = 4 y = 8 y = y ^ 2 + x / 3 x = y + 10 Range("B1").Value = Application.WorksheetFunction.Floor(x, 1) Range("B2").Value = y End Sub

Lez. 12 (10/11) - PBElementi di Programmazione4 Domanda 8 (ex lex.11) Indicare il contenuto delle celle B1 ed B2 dopo lesecuzione del seguente codice VBA: Option Explicit Sub ex() Dim x As Double, y As Double x = 4 y = 8 y = y ^ 2 + x / 3 x = y + 10 Range("B1").Value = _ Application.WorksheetFunction.Floor(x, 1) Range("B2").Value = y End Sub x y

Lez. 12 (10/11) - PBElementi di Programmazione5 Domanda 8 (ex lex.11) Indicare il contenuto delle celle B1 ed B2 dopo lesecuzione del seguente codice VBA: Option Explicit Sub ex() Dim x As Double, y As Double x = 4 y = 8 y = y ^ 2 + x / 3 x = y + 10 Range("B1").Value = _ Application.WorksheetFunction.Floor(x, 1) Range("B2").Value = y End Sub x y B1 = 75 B2 =

Lez. 12 (10/11) - PBElementi di Programmazione6 Esercizio 1 Scrivere la sub VBA che legge dei numeri decimali dal file di testo dati.txt dove sono scritti uno per riga e quindi riempie consecutivamente la colonna A del foglio di lavoro con i valori positivi, la colonna B con quelli negativi.

Lez. 12 (10/11) - PBElementi di Programmazione7 Esercizio 1 Option Explicit Sub carica() Dim v As Variant Dim pos As Integer, neg As Integer Open ThisWorkbook.Path & "\dati.txt" For Input As 1 pos = 1 neg = 1 While Not EOF(1) Input #1, v If (IsNumeric(v)) Then If (v > 0) Then Cells(pos, 1) = v pos = pos + 1 Else Cells(neg, 2) = v neg = neg + 1 End If Wend Close #1 End Sub

Lez. 12 (10/11) - PBElementi di Programmazione8 Esercizio 2 Scrivere una UserForm che viene richiamata nel foglio elettronico con un bottone che permette di acquisire due valori X ed Y e che scrive nella cella B3 del foglio "Esercizio2 il maggiore dei due.

Lez. 12 (10/11) - PBElementi di Programmazione9 Esercizio 2 Scrivere –una UserForm (moduloAcquisizione) –che viene richiamata nel foglio elettronico con un bottone ( parti ) –che permette di acquisire due valori X (primoVal) Y (secondoVal) –e che (cliccando un bottone calcolo) scrive nella cella B3 del foglio Esercizio2 il maggiore dei due

Lez. 12 (10/11) - PBElementi di Programmazione10 Esercizio 2 Private Sub calcolo_Click() Dim x As Double, y As Double x = CDbl(moduloAcquisizione.primoVal.Value) y = CDbl(moduloAcquisizione.secondoVal.Value) If (x > y) Then Sheets("Esercizio2").Range("B3").Value = x Else Sheets("Esercizio2").Range("B3").Value = y End If moduloAcquisizione.Hide End Sub La UserForm1 si chiama moduloAcquisizione (ed il bottone del form per eseguire il calcolo si chiama calcolo)

Lez. 12 (10/11) - PBElementi di Programmazione11 Esercizio 2 Private Sub parti_Click() ModuloAcquisizione.Show End Sub nel Foglio dove vi è il bottone di nome parti

Lez. 12 (10/11) - PBElementi di Programmazione12 Esercizio 3 Scrivere una sub VBA che legge i valori contenuti nelle celle da A1 a D5 e quindi –carica il vettore X con i primi 8 valori positivi contenuti nellintervallo. Se vi sono meno di 8 valori ridimensiona il vettore al numero di elementi effettivamente presenti –Attraverso la funzione max restituisce lelemento di valore massimo del vettore che viene scritto in F1

Lez. 12 (10/11) - PBElementi di Programmazione13 Esercizio 3 – Note sugli array X(5) con option base 0 o senza X(5) con option base

Lez. 12 (10/11) - PBElementi di Programmazione14 Esercizio 3 Scrivere una sub VBA (lettura) che legge i valori contenuti nelle celle da A1 a D5 e quindi –carica il vettore X con i primi 8 valori positivi contenuti nellintervallo. Se vi sono meno di 8 valori ridimensiona il vettore al numero di elementi effettivamente presenti –Attraverso la funzione max restituisce lelemento di valore massimo del vettore che viene scritto in F1 Funzione max : –Riceve un vettore vt –Restituisce il valore massimo contenuto

Lez. 12 (10/11) - PBElementi di Programmazione15 Esercizio 3 Option Base 1 Option Explicit Function max(vt() As _ Double) As Double Dim i As Integer max = vt(LBound(vt)) For i = LBound(vt) + 1 _ To UBound(vt) If max < vt(i) Then max = vt(i) End If Next End Function La soluzione del problema non può far caricare prima il vettore per poi ridimensionarlo perché –Senza lopzione Preserve di ReDim si perde il contenuto del vettore –Con lopzione non è possibile ridimensionarlo ad una lunhezza inferiore

Lez. 12 (10/11) - PBElementi di Programmazione16 Esercizio 3 Sub lettura() Dim y() As Double, X() As Double Dim i As Integer, j As Integer, v i = 1 ReDim y(8) For Each v In Range("A1:D3") If IsNumeric(v) Then If (v > 0) Then y(i) = v i = i + 1 End If If i > 8 Then Exit For End If Next ReDim X(i - 1) For j = LBound(y) To i - 1 X(j) = y(j) Next Range("F1").Value = max(X) End Sub

Lez. 12 (10/11) - PBElementi di Programmazione17 Esercizio 4 Aggiungere al foglio elettronico la funzione opera che dato un intervallo di valori anche disgiunto restituisce la somma dei valori interi contenuti nellintervallo –Definire ed usare la funzione eIntero per verificare se un valore è un numero intero

Lez. 12 (10/11) - PBElementi di Programmazione18 Esercizio 4 Aggiungere al foglio elettronico (modulo) –la funzione opera –che dato un intervallo di valori anche disgiunto –restituisce la somma dei valori interi contenuti nellintervallo –Definire ed usare la funzione eIntero () –per verificare se un valore è un numero intero

Lez. 12 (10/11) - PBElementi di Programmazione19 Esercizio 4 Option Explicit Function eIntero(el As _ Variant) As Boolean eIntero = False If (IsNumeric(el)) Then If (CInt(el) = el) Then eIntero = True End If End Function Function Opera( _ ParamArray interv() As _ Variant) As Integer Dim i As Integer, v For i = LBound(interv) To _ UBound(interv) For Each v In interv(i) If eIntero(v) Then Opera = Opera + v End If Next End Function