



Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Esercizi di informatica del primo anno
Tipologia: Appunti
1 / 6
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!




Esercizi SQLite db_esami.R library(RSQLite) setwd('/files/Database')
mydb <- dbConnect(RSQLite::SQLite(), "/files/Database/db_esami.sqlite")
dbSendQuery(conn = mydb, statement = 'CREATE TABLE studenti( matricola INTEGER, cognome TEXT, nome TEXT, PRIMARY KEY(matricola) )' ) dbSendQuery(conn = mydb, statement = 'CREATE TABLE materie( ID_materia INTEGER PRIMARY KEY AUTOINCREMENT, denominazione TEXT )' ) dbSendQuery(conn = mydb, statement = 'CREATE TABLE esami( matricola INTEGER, ID_materia INTEGER, voto INTEGER, FOREIGN KEY(matricola) REFERENCES studenti(matricola), FOREIGN KEY(ID_materia) REFERENCES materie(ID_materia), PRIMARY KEY(ID_materia, matricola) )' )
dbListTables(mydb)
dbListFields(mydb, 'studenti') dbListFields(mydb, 'materie') dbListFields(mydb, 'esami')
dbGetQuery(conn = mydb, 'PRAGMA table_info("studenti")')
dbDisconnect(mydb)
#unlink("/files/Database/db_esami.sqlite") Scrivere il comando SQL per la creazione di una tabella di nome studenti composta dai campi matricola (nr intero), cognome (testo), nome (testo) e impostando l'opportuna chiave primaria library(RSQLite) setwd('/files/Database') mydb <- dbConnect(RSQLite::SQLite(), "/files/Database/db_esami.sqlite") dbSendQuery(conn = mydb, statement = 'CREATE TABLE studenti( matricola INTEGER, cognome TEXT, nome TEXT, PRIMARY KEY(matricola) )' )
Scrivere una funzione con nome SommaSottrazione che dati due valori in input s1, s2 restituisca s1+s2 e s1-s SommaSottrazione <- function(s1 = 2, s2 = 1) { list((s1 + s2), (s1 - s2)) } SommaSottrazione(s1 = 2, s2 = 1) SommaSottrazione <- function(x1, x2){ y <- x1 + x z <- x1 - x return(list(somma = y, differenza = z)) }
Scrivere una funzione di nome randomwalk che generi un vettore in cui, fissato il valore del primo elemento, i successivi (dal secondo in poi) siano calcolati secondo la regola y[i] = y[i−1] + NumeroCasuale Quindi il valore alla posizione “i” del vettore è uguale al valore alla posizione precedente più un numero casuale. I l numero casuale è ottenuto tramite il comando R rnorm(n=1, mean=0, sd=0.1) INPUT FUNZIONE N: lunghezza del vettore da generare start: valore su cui impostare il primo valore del vettore (default=0) graf: se TRUE genera il grafico del vettore (default=FALSE) OUTPUT FUNZIONE: vettore y Si applichi infine la funzione assumendo N=100, start=1, graf=TRUE salvando il vettore nella variabile rw Nota Bene: scrivere nella risposta solo i comandi R senza i risultati PasseggiataCasuale <- function(start, N, graf = FALSE){ y <- array(data = NA, dim = N y[0] <- start for(i in 2:N){ y[i] <- y[i-1] + rnorm(n=1, mean=0, sd=0.1) } if(graf == TRUE){ plot.ts(y) } return(y) } rw <- PasseggiataCasuale(N=100, start=1, graf=TRUE) print(rw)