Esercizi sulle istruzioni condizionali

  1. Scrivere un programma Ruby classificaLettera.rb che prende in input un carattere e lo classifichi secondo la seguente tabella:
        
           Lettere          Categoria
           a,e,i,o,u          vocale
           j                  semivocale
           p,b,m              labiale
           f,v                labio-dentale
           t,d,z,n,s,r,l      dentale
           k                  gutturale
           altri caratteri    carattere non classificabile
    

    Il programma deve stampare a video il carattere di input e la relativa categoria.

  2. Scrivere un programma mypersonaltrainer.rb che
  3. Scrivere il programma Ruby Tennis.rb che prenda in input tre caratteri che rappresentano rispettivamente possibili configurazioni dei parametri Campo, Tempo e Vento e stampi la stringa Si puo' giocare, se le condizioni atmosferiche e il campo permettono di giocare a tennis, altrimenti il programma deve stampare la stringa Non si pu˜ giocare.

    I valori per la variabile Tempo possono essere

     
        'p'  (piovoso)
        's'  (sereno)
        

    I valori per la variabile Vento possono essere

      
        'f'  (vento forte) 
        'a'  (assenza di vento)
        'm' (vento moderato)
       

    I valori per la variabile di tipo carattere Campo possono essere

     
         'i'  (indoor) 
         'o'  (outdoor)
       

    Si pu˜ò giocare a tennis

    1. in ogni condizione di tempo e vento se il campo  indoor
    2. se il campo  outdoor, solo se  sereno e il vento  moderato
    3. oppure assente

  4. Un anno e' bisestile se il suo numero e' divisibile per 4, con l'eccezione degli anni secolari (quelli divisibili per 100) che non sono divisibili per 400. Scrivere un programma Ruby che prenda in input un valore intero N e stampi la stringa "Anno bisestile" se il valore N rappresenta un anno bisestile e la stringa "Anno non bisestile" se N non rappresenta un anno bisestile.
Tutti i programmi devono essere opportunamente commentati.

Esercizi sulle istruzioni iterative while e times

  1. Scrivere il programma Ruby prodotto1n.rb che prende in input un valore intero positivo n e calcola il prodotto 1*2*3*...*n. Si stampi il risultato a video. Il programma deve utilizzare il metodo times.

  2. Scrivere il programma Ruby prodottoPari.rb che prende in input un valore intero positivo n>1 e calcola il prodotto devi valori pari compresi tra 1 e n. Si stampi il risultato a video. Il programma deve utilizzare un ciclo while.

  3. Scrivere il programma Ruby sommaDispari.rb che prende in input un valore intero positivo n e calcola la somma dei valori dispari compresi tra 1 e n. Si stampi il risultato a video.

  4. Acquisire un numero positivo N e calcolarne la radice quadrata intera, ovvero il massimo intero x tale che
     x*x <= N.
  5. Scrivere un programma che acquisisca da tastiera un numero intero assicurandosi che sia positivo e, successivamente, stampi a video i 4 anni bisestili strettamente superiori al numero acquisito.
  6. Scrivere un programma Ruby che acquisisca in input N valori interi e stampi la somma dei soli valori positivi acquisiti.
  7. Scrivere un programma Ruby che presi tre valori naturali K, N e M in input, con K maggiore di zero e N minore di M, stampi K valori interi casuali compresi fra N e M (estremi inclusi).