User Tools

Site Tools


pub:labprog:2020-10-22

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pub:labprog:2020-10-22 [2020/10/24 13:58] (current)
atrent created
Line 1: Line 1:
 +====== Note lezione (22/10/2020) ======
 +
 +
 +(ATTENZIONE che è un copia e incolla dalla sessione collaborativa con l'editor, minimamente riformattato, va preso "cum grano salis")
 +
 +🌈
 +
 +
 +
 +🔋
 +
 +
 +
 +**Attenzione a non sovrascrivere il testo esistente**
 +
 +per Gobby:
 +    atrent.it:11778
 +
 +===== MEMO =====
 +
 +* scrivete tanto codice e fate saltar fuori gli errori
 +* usate molto il prompt
 +* non abbiate paura di fare domande (o scrivere commenti)
 +
 +===== TODO =====
 +
 +* (POSTPONED) dobbiamo decidere un editor collaborativo
 +* PATH
 +
 +===== Barzelletta sul testing =====
 +
 +
 +“A QA engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers. Orders a sfdeljknesv.”
 +
 +===== Esercizi proposti =====
 +
 +
 +==== ESERCIZIO 0 ====
 +
 +
 +Scrivere un programma Go condizioni.go che testa, una a una, le seguenti condizioni. 
 +Implementarne una alla volta, testarla su almeno due input (uno che la verifica 
 +e uno che la falsifica), e solo poi procedere alla successiva. 
 +Il programma legge un valore (del tipo indicato) da tastiera e stampa "true" o "false" a seconda che la condozione sia verificata o no.
 +
 +1. a int uguale a 10
 +1. b int diverso da 10
 +1. c int diverso da 10 e da 20
 +1. d int diverso da 10 o da 20
 +1. e int maggiore o uguale a 10
 +1. f int compreso tra 10 e 20, nell'intervallo [10,20] 
 +1. g int compreso tra 10 e 20, nell'intervallo (10,20]
 +1. h int compreso tra 10 e 20, nell'intervallo [10,20)
 +1. i int esterno all'intervallo[10,20]
 +1. j int tra 10 e 20 (nell'intervallo [10,20]) o tra 30 e 40 ([30,40])
 +1. k int multiplo di 4 ma non di 100
 +1. l int dispari e compreso tra 0 e 100 ([0,100])
 +1. x float64 "vicino" a 10 (entro 10^-6)
 +
 +=== soluzioni proposte ===
 +
 +
 +Soluzione "mono-variabile":
 +```go 
 +package main 
 +import "fmt"
 +
 +func main() {
 +    var sempreLaStessa int
 +    fmt.Print("Inserisci input: ")
 +    fmt.Scan(&sempreLaStessa)
 +    if sempreLaStessa == 10 {
 +        fmt.Println("La variabile è uguale a 10!"  
 +    }
 +}
 +```
 +
 +```go 
 +func main() {
 + var n int
 + var x float64
 + fmt.Print("Inserisci un numero intero: ")
 + fmt.Scan(&n)
 + fmt.Print("Inserisci un numero con la virgola: ")
 + fmt.Scan(&x)
 +
 + if n == 10 {
 + fmt.Println("a: true")
 + } else {
 + fmt.Println("a: false")
 + }
 +
 + if n != 10 {
 + fmt.Println("b: true")
 + } else {
 + fmt.Println("b: false")
 + }
 +
 + if n != 10 && n != 20 {
 + fmt.Println("c: true")
 + } else {
 + fmt.Println("c: false")
 + }
 +
 + if n != 10 || n != 20 {
 + fmt.Println("d: true")
 + } else {
 + fmt.Println("d: false")
 + }
 +
 + if n >= 10 {
 + fmt.Println("e: true")
 + } else {
 + fmt.Println("e: false")
 + }
 +
 + if n >= 10 && n <= 20 {
 + fmt.Println("f: true")
 + } else {
 + fmt.Println("f: false")
 + }
 +
 + if n > 10 && n <= 20 {
 + fmt.Println("g: true")
 + } else {
 + fmt.Println("g: false")
 + }
 +
 + if n >= 10 && n < 20 {
 + fmt.Println("h: true")
 + } else {
 + fmt.Println("h: false")
 + }
 +
 + if n < 10 || n > 20 {
 + fmt.Println("i: true")
 + } else {
 + fmt.Println("i: false")
 + }
 +
 + if n > 10 && n < 20 || n > 30 && n < 40 {
 + fmt.Println("j: true")
 + } else {
 + fmt.Println("j: false")
 + }
 +
 + if n%4 == 0 && !(n%100 == 0) {
 + fmt.Println("k: true")
 + } else {
 + fmt.Println("k: false")
 + }
 +
 + if n%2 != 0 && n >= 0 && n <= 100 {
 + fmt.Println("l: true")
 + } else {
 + fmt.Println("l: false")
 + }
 +
 + if math.Abs(x-10) < 1e-6 {
 + fmt.Println("x: true")
 + } else {
 + fmt.Println("x: false")
 + }
 +
 +}
 +
 +```
 +
 +
 +Soluzioni "multi-variabile":
 +10
 +```go 
 +package main 
 +import "fmt"
 +
 +func main() {
 +    var a, b, c, d, e int
 +    fmt.Print("Inserisci a: ")
 +    fmt.Scan(&a)
 +    if a == 10 {
 +        fmt.Println("a è uguale a 10!"  
 +    }
 +    fmt.Print("Inserisci b: ")
 +    fmt.Scan(&b)
 +    if b != 10 {
 +        fmt.Println("b è diverso da 10¿")
 +    }
 +    fmt.Print("Inserisci c: ")
 +    fmt.Scan(&c)
 +    if c != 10 && c != 20 {
 +        fmt.Println("c è diverso da 10 e da 20")
 +    }
 +
 +
 +```
 +``` go
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +    var a, b, c int 
 +    
 +    fmt.Print("Inserire a--> ")
 +    fmt.Scan(&a)
 +        
 +    if a == 10 {
 +        fmt.Print("True")
 +    } else {
 +        fmt.Print("false")
 +    }
 +    
 +    fmt.Print("Inserire b--> ")
 +    fmt.Scan(&b)
 +    
 +    if b != 10 {
 +        fmt.Print("True")
 +    } else {
 +        fmt.Print("False")
 +    }
 +    
 +    fmt.Print("Inserire c--> ")
 +    fmt.Scan(&c)
 +    
 +    if c!=10 && c!=20 {
 +        fmt.Print("True")
 +    } else {
 +        fmt.Print("False")
 +    }
 +}
 +```
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +``` go
 +package main
 +
 +import "fmt"
 +import "math.abs"
 +func main(){
 +    var x float64
 +    math.abs(x-)
 +}
 +
 +
 +
 +
 +```
 +
 +``` go
 +
 +//non li ho testati
 +
 +package main
 +
 +import "fmt"
 +import "math"
 +
 +func main() {
 +  var a int
 +  var x float64
 +
 +  fmt.Print("A: ")
 +  fmt.Scan(&a)
 +  if a==10{
 +    fmt.Println("A verificata")
 +  } else {
 +    fmt.Println("A non verificata")
 +  }
 +
 +  fmt.Print("B: ")
 +  fmt.Scan(&a)
 +  if a!=10{
 +    fmt.Println("B verificata")
 +  } else {
 +    fmt.Println("B non verificata")
 +  }
 +
 +  fmt.Print("C: ")
 +  fmt.Scan(&a)
 +  if a!=10 && a!=20{
 +    fmt.Println("C verificata")
 +  } else {
 +    fmt.Println("C non verificata")
 +  }
 +
 +  fmt.Print("D: ")
 +  fmt.Scan(&a)
 +  fmt.Println("D verificata")
 +
 +  fmt.Print("E: ")
 +  fmt.Scan(&a)
 +  if a>=10{
 +    fmt.Println("E verificata")
 +  } else {
 +    fmt.Println("E non verificata")
 +  }
 +
 +  fmt.Print("F: ")
 +  fmt.Scan(&a)
 +  if a>=10 && a<=20{
 +    fmt.Println("F verificata")
 +  } else {
 +    fmt.Println("F non verificata")
 +  }
 +
 +  fmt.Print("G: ")
 +  fmt.Scan(&a)
 +  if a>10 && a<=20{
 +    fmt.Println("G verificata")
 +  } else {
 +    fmt.Println("G non verificata")
 +  }
 +
 +  fmt.Print("H: ")
 +  fmt.Scan(&a)
 +  if a>=10 && a<20{
 +    fmt.Println("H verificata")
 +  } else {
 +    fmt.Println("H non verificata")
 +  }
 +
 +  fmt.Print("I: ")
 +  fmt.Scan(&a)
 +  if a<10 || a>20{
 +    fmt.Println("I verificata")
 +  } else {
 +    fmt.Println("I non verificata")
 +  }
 +
 +  fmt.Print("J: ")
 +  fmt.Scan(&a)
 +  if (a>=10 && a<=20) || (a>=30 && a<=40){
 +    fmt.Println("J verificata")
 +  } else {
 +    fmt.Println("J non verificata")
 +  }
 +
 +  fmt.Print("K: ")
 +  fmt.Scan(&a)
 +  if a%4==0 && a%100!=0{
 +    fmt.Println("K verificata")
 +  } else {
 +    fmt.Println("K non verificata")
 +  }
 +
 +  fmt.Print("L: ")
 +  fmt.Scan(&a)
 +  if (a+1)%2 == 0 && (a>=0 && a<=100){
 +    fmt.Println("L verificata")
 +  } else {
 +    fmt.Println("L non verificata")
 +  }
 +
 +  fmt.Print("X: ")
 +  fmt.Scan(&x)
 +
 +    //  if math.Abs(a-float64(10)) < 10E-6 { // era un errore di copiaeincolla
 +  if math.Abs(x-float64(10)) < 1E-6 {
 +    
 +    fmt.Println("X verificata")
 +  } else {
 +    fmt.Println("X non verificata")
 +  }
 +  
 +}
 +
 +
 +
 +```
 +
 +``` go
 +
 +package main
 +
 +import ( "fmt"
 +"math")
 +
 +func main() {
 +  var x float64
 +  fmt.Scan(&x)
 +
 + if math.Abs(x) < 10 + (1E-6) && math.Abs(f) > 10 -(1E-6){ 
 +   fmt.Println("true")
 + }else{
 +   fmt.Println("false")
 + }
 +}
 +
 +
 +////
 +//ho evitato di fare tutti gli if per concentrarmi sulle condizioni
 +package main
 +
 +import "fmt"
 +
 +func main()  {
 + var a int
 + var b float64
 + fmt.Scan(&a)
 + fmt.Println("a)", a == 10)
 + fmt.Println("b)", a != 10)
 + fmt.Println("c)", (a != 10) && (a !=20))
 + fmt.Println("d)", (a != 10) || (a !=20))
 + fmt.Println("e)", a >= 10)
 + fmt.Println("f)", (a >= 10) && (a <= 20))
 + fmt.Println("g)", (a > 10) && (a <= 20))
 + fmt.Println("h)", (a >= 10) && (a < 20))
 + fmt.Println("i)", (a < 10) && (a > 20))
 + fmt.Println("j)", (a >= 10 && a <= 20) || (a >= 30 && a <= 40))
 + fmt.Println("k)", (a%4 == 0) && (a%100 != 0))
 + fmt.Println("l)", (a%2 == 0) && (a >= 0 && a 
 +                                     <= 100))
 + fmt.Scan(&b)
 +    fmt.Println("x)", (b >= 10 - 10E-6) && (b <= 10 + 10E-6)) //:)
 +}
 +
 +///
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +
 + var num int
 +
 + // 1
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è uguale a 10: ")
 + if num == 10 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 2
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è diverso da 10: ")
 + if num != 10 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 3
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è diverso da 10 e da 20: ")
 + if num != 10 && num != 20{
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 4
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è diverso da 10 o da 20: ")
 + if num != 10 || num != 20 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 5
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è maggiore o uguale a 10: ")
 + if num >= 10 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 6
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è compreso tra 10 e 20 ( estremi inclusi ): ")
 + if num >= 10 && num <= 20 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 7
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è compreso tra 10 e 20 (10 escluso): ")
 + if num > 10 && num <= 20 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 8
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è compreso tra 10 e 20 (20 escluso): ")
 + if num >= 10 && num < 20 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 9
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è esterno all'intervallo [10,20]: ")
 + if num < 10 && num > 20 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 10
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero compreso tra 10 e 20 oppure tra 30 e 40 (estremi inclusi): ")
 + if ( num >= 10 && num <= 20 ) || ( num >= 30 && num <= 40 ){
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 11
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è multiplo di 4 ma non di 100: ")
 + if num % 4 == 0 && num % 100 != 0 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 12
 +
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&num)
 +
 + fmt.Print("Il numero è dispari e compreso tra 0 e 100 (estremi inclusi): ")
 + if num % 2 != 0 && num >= 0 && num <= 100 {
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +
 + // 13
 +
 + var x float64
 + const RAGGIO = 1E-6
 + fmt.Print("Inserire un numero: ")
 + fmt.Scan(&x)
 +
 + fmt.Print("Il numero è vicino a 10: ")
 + if x >= (10 - RAGGIO ) && x <= ( 10 + RAGGIO ) { 
 + fmt.Println("true")
 + }else{
 + fmt.Println("false")
 + }
 +}
 + 
 +///
 +
 +
 +```
 +
 +
 +
 +
 +
 +==== ESERCIZIO 1a ====
 +
 +
 +Scrivere un programma Go 'voto_valido.go' che legge un numero intero.
 +Se il numero non è compreso tra 0 e 30, stampa “voto non valido”, altrimenti non stampa niente.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +``` go
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +  var a int
 +  fmt.Print("Scrivere il numero ")
 +  fmt.Scan(&a)
 +  if (a >= 0) && (a <= 30) {
 +    fmt.Println("Il voto è valido")
 +  } else {
 +    fmt.Println("Il voto non è valido deve essere compreso tra 0 e 30")
 +  }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +package main 
 +import (
 +    ."fmt"
 +)
 +
 +func main() {
 + var x int 
 + Println("Inserisci il voto")
 + Scan(&x)
 + if !(x >=0 && x<=30) {
 + Println("Voto non valido ")
 + }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +var voto int
 +fmt.Print("Inserire un voto: ")
 +fmt.Scan(&voto)
 +if(voto > 0) && (voto < 30){
 + fmt.Println("Il voto:",voto,"è valido")
 + }else{
 + fmt.Println("Il voto:",voto,"non è valido.")
 + }
 +}
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +  var n int
 +  fmt.Print("Inserire un numero: ")
 +  fmt.Scan(&n)
 +  if n > 30 {
 +    fmt.Println("Voto non valido")
 +  } else {
 +    fmt.Println()
 +  }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +func main() {
 + var voto int
 + fmt.Print("Inserisci voto: ")
 + fmt.Scan(&voto)
 + if voto < 0 || voto > 30 {
 + fmt.Println("Voto non valido.")
 + }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== ESERCIZIO 1b (MAGGIORE) ====
 + 
 +
 +Scrivere un programma Go maggiore.go che legge due interi e stampa il maggiore fra i due.
 +
 +
 +
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +     var x,y int
 +     fmt.Println("inserisci due numeri")
 +     fmt.Scan(&x, &y)
 +     if x>y {
 +        fmt.Println(" il primo è maggiore del secondo")
 +     } else {
 +        fmt.Println("il secondo è maggiore del primo")
 +     }
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +func main() {
 + var n1, n2 int
 + fmt.Print("Inserisci n_1: ")
 + fmt.Scan(&n1)
 + fmt.Print("Inserisci n_2: ")
 + fmt.Scan(&n2)
 + if n1 > n2 {
 + fmt.Println(n1)
 + } else {
 + fmt.Println(n2)
 + }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +package main
 +import "fmt"
 +
 +func main(){
 +var x, y int 
 +fmt.Println("inserire il primo numero")
 +fmt.Scan(&x)
 +fmt.Println("inserire il secondo numero")
 +fmt.Scan(&y)
 +if x > y{
 + fmt.Println(x,"è più grande di",y)
 +}else if y > x{
 + fmt.Println(y,"è più grande di",x)
 +}else{
 + fmt.Println("I numeri sono identici:",x,"e",y)
 + }
 +}
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +
 +  var num1, num2 float64
 +
 +  fmt.Scan(&num1)
 +  fmt.Scan(&num2)
 +
 +  if num1 > num2{
 +    fmt.Println("Il primo numero è maggiore del secondo")
 +      fmt.Println(num1)
 +  }else{
 +    fmt.Println("Il secondo numero è maggiore del primo:")
 +      fmt.Println(num2)
 +  }
 +}
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +  var a, b int
 +  fmt.Print("Inserisci due numeri: ")
 +  fmt.Scan(&a, &b)
 +  if a > b {
 +    fmt.Println("Il maggiore dei due è", a)
 +    } else if b > a {
 +      fmt.Println("Il maggiore dei due è", b)
 +    } else {
 +  }
 +}
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +  var num1,num2 int
 +  fmt.Println("inserire primo numero")
 +  fmt.Scan(&num1)
 +  fmt.Println("inserire secondo numero")
 +  fmt.Scan(&num2)
 +  if num1>num2{
 +    fmt.Println(num1)
 +  }else if num2>num1{
 +    fmt.Println(num2)
 +  }else{
 +    fmt.Println("i numeri inseriti sono uguali")
 +  }
 +}
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 + var num1, num2 int
 +
 + fmt.Print("Inserire due numeri: ")
 + fmt.Scan(&num1, &num2)
 +
 + if num1 == num2 {
 + fmt.Println("I numeri sono uguali")
 + }else if num1 > num2 {
 + fmt.Println("Il numero maggiore è", num1)
 + }else {
 + fmt.Println("Il numero maggiore è", num2)
 + }
 +}
 +
 +
 +package main
 +import "fmt"
 +var a,b int
 +func main() {
 +fmt.Println("questo programma una volta inseriti 2 valori, identifica in maggiore", "inserisca il primo valore")
 +fmt.Scan(&a)
 +fmt.Println("inserisca il secondo valore")
 +fmt.Scan(&b)
 +if a==b{
 +fmt.Println("i due valori sono uguali"
 +}else if a>b{
 +fmt.Println(a)
 +}else {
 +fmt.Println(b)
 +}
 +}
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +  var n1, n2 int
 +  fmt.Println("Inserisci un numero: ")
 +  fmt.Scan(&n1)
 +  fmt.Println("inserisci un altro numero: ")
 +  fmt.Scan(&n2)
 +
 +  fmt.Print("Il maggiore è: ")
 +
 +  if n1 > n2 {
 +    fmt.Println(n1)
 +  } else if n1 == n2 {
 +    fmt.Println("Nessuno dei due, sono uguali!")
 +  } else {
 +    fmt.Println(n2)
 +  }
 +}
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +  var a, b int
 +
 +  fmt.Print("inserisci a: ")
 +  fmt.Scan(&a)
 +  fmt.Print("inserisci b: ")
 +  fmt.Scan(&b)
 +
 +  if a>b {
 +    fmt.Println(a)
 +  } else if b>a {
 +    fmt.Println(b)
 +  } else {
 +    fmt.Println("i due numeri sono uguali!")
 +  }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== ESERCIZIO 2a (PARI-DISPARI) ====
 +
 +Scrivere un programma pari_dispari.go che legge un intero n e, a seconda del valore di n, stampa uno dei messaggi "n è pari" oppure "n è dispari".
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 + var n int 
 +
 + fmt.Print("Inserire un numero\n--> ")
 + fmt.Scan(&n)
 +
 + if n%2==0 {
 + fmt.Println("Il numero", n, "è pari")
 + } else {
 + fmt.Println("Il numero", n, "è dispari")
 + }
 +
 +}
 +
 +
 +package main
 +
 +import (
 + "fmt"
 + )
 +
 +func main() {
 + var n int
 + fmt.Print("inserire un numero: ")
 + fmt.Scan(&n)
 + fmt.Print("il numero è ")
 + if n % 2 != 0 {
 + fmt.Println("dis")
 +
 + fmt.Print("pari")
 +}
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +  var num int
 +  fmt.Println("inserire numero")
 +  fmt.Scan(&n)
 +  if num%2==0{
 +    fmt.Println("il valore inserito è pari")
 +  }else{
 +    fmt.Println("il valore inserito è dispari")
 +  }
 +}
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +
 +  var n int
 +  fmt.Scan(&n)
 +
 +  if n%2==0{
 +    fmt.Println("Il numero è pari")
 +  }else {
 +    fmt.Println("Il numero è dispari")
 +  }
 +}
 +
 +
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 +  var n int
 +  fmt.Print("Iserire un numero: ")
 +  fmt.Scan(&n)
 +  if n%2==0 {
 +    fmt.Println(n,"è pari")
 +    } else {
 +      fmt.Println(n, "è dispari")
 +    }
 +}
 +
 +
 +
 +==== ESERCIZIO 2b (FRAZIONI) ====
 +
 +
 +Scrivere un programma frazioni.go che verifica se due frazioni num1/den1 e num2/den2 sono equivalenti e stampa "equivalenti" o "non equivalenti", a seconda del caso. Usare il tipo int per i dati in input. Pensate a una soluzione che non faccia uso di float64.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +package main
 +
 +import (
 + "fmt"
 + )
 +
 +func main() {
 + var num1, num2, den1, den2 int
 + fmt.Println("inserire la prima frazione")
 + fmt.Scan(&num1)
 + fmt.Scan(&den1)
 + fmt.Println("inserire la seconda frazione")
 + fmt.Scan(&num2)
 + fmt.Scan(&den2)
 + if num1 * den2 == num2 * den1 {
 + fmt.Println("le due frazioni", num1, "/", den1, "e", num2, "/", den2, "sono equivalenti")
 + } else {
 + fmt.Println("le due frazioni", num1, "/", den1, "e", num2, "/", den2, "non sono equivalenti")
 + }
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 + var num1, num2, num3, num4 int
 + fmt.Print("frazione 1:")
 + fmt.Scan(&num1, &num2)
 + fmt.Print("frazione 2:")
 + fmt.Scan(&num3, &num4)
 + if num1*num4==num2*num3{
 + fmt.Println("equivalenti")
 + }else {
 + fmt.Println("non equivalenti")
 + }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== ESERCIZIO 2b (FRAZIONI) ====
 +
 +Scrivere un programma frazioni.go che verifica se due frazioni num1/den1 e num2/den2 sono equivalenti e stampa "equivalenti" o "non equivalenti", a seconda del caso. Usare il tipo int per i dati in input. Pensate a una soluzione che non faccia uso di float64.*/
 +
 +package main
 +import "fmt"
 +
 +func main(){
 +var num1, num2, den1, den2 int
 +fmt.Print("Inserire la prima frazione (numeratore/denominatore): ")
 +fmt.Scan(&num1)
 +fmt.Scan(&den1)
 +fmt.Print("Inserire la seconda frazione (numeratore/denominatore): ")
 +fmt.Scan(&num2)
 +fmt.Scan(&den2)
 +if(num1/den1 == num2/den2){
 + fmt.Println("Le equazioni sono equivalenti")
 + }else{
 + fmt.Println("Le equazioni sono diverse")
 + }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== ESERCIZIO 2b (FRAZIONI) ====
 +
 +Scrivere un programma frazioni.go che verifica se due frazioni num1/den1 e num2/den2 sono equivalenti e stampa "equivalenti" o "non equivalenti", a seconda del caso. Usare il tipo int per i dati in input. Pensate a una soluzione che non faccia uso di float64.*/
 +
 +package main
 +import "fmt"
 +
 +func main(){
 +var num1, num2, den1, den2 int
 +fmt.Print("Inserire la prima frazione (numeratore/denominatore): ")
 +fmt.Scan(&num1)
 +fmt.Scan(&den1)
 +fmt.Print("Inserire la seconda frazione (numeratore/denominatore): ")
 +fmt.Scan(&num2)
 +fmt.Scan(&den2)
 +if(num1/den1 == num2/den2){
 + fmt.Println("Le equazioni sono equivalenti")
 + }else{
 + fmt.Println("Le equazioni sono diverse")
 + }
 +}
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +  var num1, num2, den1, den2 int
 +
 +  fmt.Print("inserisci la prima frazione: ")
 +  fmt.Scan(&num1)
 +  fmt.Scan(&den1)
 +
 +  fmt.Print("inserisci la seconda frazione: ")
 +  fmt.Scan(&num2)
 +  fmt.Scan(&den2)
 +
 +  if (num1/den1 == num2/den2){
 +    fmt.Println("equivalenti")
 +  } else {
 +        fmt.Println("non equivalenti")
 +  }
 +}
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +//Cestone - 2b
 +package main
 +
 +import "fmt"
 +
 +func main()  {
 + var num1,num2,den1,den2 int
 + fmt.Print("inserire la prima frazione(tipo 1/2): ")
 + fmt.Scan(&num1)
 + fmt.Scan(&den1)
 + fmt.Print("inserire la seconda frazione(tipo 1/2): ")
 + fmt.Scan(&num2)
 + fmt.Scan(&den2)
 + if num1*den2 == den1*num2 {
 + fmt.Println("equivalenti")
 + } else {
 + fmt.Println("non equivalenti")
 + }
 +}
 +
 +
 +==== ESERCIZIO 3a (INDOVINA 10) ====
 +
 +Scrivere un programma indovina_10.go che fissa un numero intero tra 1 e 10 da indovinare, legge un intero da standard input e
 +- se il numero in input è fuori dall’intervallo 1-10, stampa “Valore non valido”;
 +- se il numero è quello fissato, stampa “Hai indovinato!”; 
 +
 +
 +
 +- altrimenti stampa “Non hai indovinato”.
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main(){
 +  var tentativo, n int
 +
 +  n = 5
 +  fmt.Print("inserisci il tuo tentativo (1->10): ")
 +  fmt.Scan(&tentativo)
 +
 +  if tentativo == n {
 +    fmt.Println("Hai indovinato!")
 +  } else if tentativo<1 || tentativo>10 {
 +    fmt.Println("Valore non valido!")
 +  } else {
 +    fmt.Println("Non hai indovinato!")
 +  }
 +}
 +
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 + var n int
 + fmt.Println("a che numero ha pensato il computer secondo te?")
 + for {
 +    fmt.Scan(&n)
 + if n == 6 {
 +
 + fmt.Println("hai indovinato!! avevo pensato proprio a 6")
 + break
 + } else {
 + fmt.Println("non hai indovinato!! riprova:")
 + }
 + }
 +}
 +
 +
 +
 +
 +
 +package main 
 +
 +import (
 +    ."fmt"
 +)
 +
 +func main() {
 + y:=5
 + var x int 
 + for {
 + Println("Inserisci un numero")
 + Scan(&x)
 + if x<1 || x>10 {
 + Println("Input non valido")
 + continue
 + } else if x==y {
 + Println("Hai indovinato")
 + break
 + } else {
 + Println("Non hai indovinato ")
 + }
 + }
 +}
 +
 +==== ESERCIZIO 3c (TARIFFE SCONTATE) ====
 +
 +
 +Scrivere un programma tariffe.go che chiede età (int) e se studente (bool) e stampa il costo del biglietto di ingresso secondo la seguente tabella:[0 - 9) anni: gratis[9 - 18) anni: 5[18 - 26) anni: 7.5[26 - 65) anni: 10>= 65 anni: 7.5studenti >= 18: 5*/
 +
 +//Bertalero: tariffe.go
 +
 +package main 
 +
 +import "fmt"
 +
 +func main() {
 + var eta int
 + var studente bool
 + fmt.Print("inserire età:")
 + fmt.Scan(&eta)
 + fmt.Print("la persona è uno studente ('1' oppure 'true' se studente, '0'  oppure 'false' altrimenti)?")
 + fmt.Scan(&studente)
 + if studente==false {
 + if eta>=0&&eta<9{
 + fmt.Println("gratis")
 + } else if eta>=9&&eta<18{
 + fmt.Println("5")
 + }else if (eta>=18&&eta<26) || (eta>=65){
 + fmt.Println("7.5")
 + }else if eta>=26&&eta<65{
 + fmt.Println("10")
 + }else{
 + fmt.Println("Età non valida")
 + }
 + }else {
 + if eta>=18{
 + fmt.Println("5")
 + }else if eta>=0&&eta<18{
 + fmt.Println("gratis")
 + }else{
 + fmt.Println("Età non valida")
 + }
 + }
 +}
 +
 +
 +//cestone - esercizio3c
 +package main
 +
 +import "fmt"
 +
 +func main()  {
 + var eta int
 + var studente bool
 + fmt.Print("inserisci età: ")
 + fmt.Scan(&eta)
 + fmt.Print("(1=si,0=no)Sei uno studente?")
 + fmt.Scan(&studente)
 + if studente && eta>=18{
 + fmt.Print("prezzo 5 euro")
 + } else {
 + if eta < 9 {
 + fmt.Println("gratis")
 + } else if eta < 18 {
 + fmt.Println("prezzo 5 euro")
 + } else if eta < 26 {
 + fmt.Println("prezzo 7.5 euro")
 + } else if eta < 65 {
 + fmt.Println("prezzo 10 euro")
 + } else {
 + fmt.Println("prezzo 7.5 euro")
 + }
 + }
 +}
 +
 +
 +package main
 +
 +import "fmt"
 +
 +func main() {
 + var eta int 
 + var studente bool
 +
 + fmt.Print("Inserire l'età: ")
 + fmt.Scan(&eta)
 + fmt.Print("Sei uno studente? ( sì = true - no = false): ")
 + fmt.Scan(&studente)
 +
 + if eta >= 0 && eta < 9 {
 + fmt.Println("Il biglietto è gratis")
 + }else if studente || eta >= 9 && eta < 18 {
 + fmt.Println("Il biglietto costa 5 euro")
 + }else if eta >= 18 && eta < 26 || eta > 65 {
 + fmt.Println("Il biglietto costa 7,50 euro")
 + }else{
 + fmt.Println("Il biglietto costa 10 euro")
 + }
 +}
  
pub/labprog/2020-10-22.txt · Last modified: 2020/10/24 13:58 by atrent