JAVASCRIPT #2 Esercizi Facili, Intermedi, Difficili e Piccoli Progetti

Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito del linguaggio di programmazione javascript.

Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:


https://www.onlinegdb.com/online_c++_compiler

ESERCIZI JAVASCRIPT (FACILI)

1) Perimetro del Triangolo Crea una pagina HTML con tre input per inserire i lati di un triangolo e un pulsante che attraverso uno script javascript permette di calcolare il perimetro. Impostare il valore del perimetro in un paragrafo.

2) Perimetro del Triangolo (con valore assoluto) Crea una pagina HTML con tre input per inserire i lati di un triangolo e un pulsante che attraverso uno script javascript permette di calcolare il perimetro. Utilizzare il valore assoluto per trasformare possibili valori negativi dei lati in valori positivi. Impostare il valore del perimetro in un paragrafo.

3) Perimetro del Triangolo (con controllo del valore) Crea una pagina HTML con tre input per inserire i lati di un triangolo e un pulsante che attraverso uno script javascript permette di calcolare il perimetro. Prima del calcolo del perimetro è necessario verificare se i numeri inseriti possono formare un triangolo. Nel caso in cui i valori inseriti non siano compatibili con dei valori dei lati di un triangolo riportare in uno specifico paragrafo: “I lati inseriti non possono rappresentare un triangolo” differentemente riportare il valore del perimetro. IMPORTANTE: Per poter rappresentare un triangolo la somma di ogni coppia di lati deve essere maggiore del terzo.

4) Convertitore di Temperatura: Crea una pagina HTML che permetta all’utente di inserire una temperatura in gradi Celsius e convertirla in Fahrenheit o Kelvin.
La pagina deve contenere un input per l’inserimento della temperatura in Celsius, e due pulsanti: “Converti in Fahrenheit” e “Converti in Kelvin”. Il risultato della conversione deve essere visualizzato in un paragrafo. FORMULE DI CONVERSIONE:
– Fahrenheit = (Celsius × 9/5) + 32
– Kelvin = Celsius + 273.15

5) Multiplo o non Multiplo: Crea una pagina HTML con un input per inserire un numero intero e un pulsante che attraverso javascript determini se il numero inserito è un multiplo di 2, 3, 4, o 5.
Per determinare se il numero inserito è un multiplo di un generico numero “N” si utilizzi l’operatore modulo (%N) e si valuti il resto.
Attenzione: se un numero è multiplo di più numeri (ad esempio 2 e 4) si riportino entrambe le diciture (suggerimento: si utilizzi in questi casi la concatenazione).

ESERCIZI JAVASCRIPT CON PIU’ FUNZIONI (FACILI )

6) Perimetro e Area del Rettangolo Crea una pagina HTML con due input per inserire i valori di base e di altezza di un rettangolo. La pagina deve inoltre prevedere due pulsanti che attraverso due differenti funzioni javascript permettono di calcolare perimetro e area del rettangolo. Tali valori sono riportati in due differenti paragrafi.

7) Semplici Operazioni Artimetriche: Crea una pagina HTML con due input per inserire numeri e una serie di pulsanti per eseguire le operazioni matematiche di base: addizione, sottrazione, moltiplicazione e divisione. Il risultato deve essere visualizzato in un paragrafo dedicato subito dopo l’operazione eseguita. IMPORTANTE: L’utente inserisce due numeri e seleziona l’operazione desiderata premendo il corrispondente pulsante.

ESERCIZI JAVASCRIPT (INTERMEDI)

8) Indovina il Numero Crea una pagina HTML con un input in cui l’utente può inserire un numero e un pulsante per verificare se il numero corrisponde a quello segreto scelto casualmente dal computer. Il risultato deve essere riportato in uno specifico paragrafo nella forma affermativa: “Complimenti! Hai indovinato il numero” o negativa con un suggerimento “Troppo alto!” o “Troppo basso!”, a seconda del valore inserito. Il numero segreto è generato casualmente tra 1 e 100 utilizzando il seguente codice:

var numeroSegreto = Math.floor(Math.random() * 100) + 1;

9) Generatore di Giudizio del Voto: Crea una pagina HTML con un input per inserire un voto numerico tra 0 e 10. In base al voto inserito, viene generato un giudizio testuale:
– tra 9.5 e 10: “Ottimo”
– tra 8.5 e 9.5: “Distinto”
– tra 7.5 e 8.5: “Buono”
– tra 6.5 e 7.5: “Discreto”
– tra 5.5 e 6.5: “Sufficiente”
– tra 0 e 5.5 “Insufficiente”
Se il voto non è valido (non compreso tra 0 e 10), viene mostrato un messaggio di errore.

10) Soluzione di una equazione di secondo grado: Crea una pagina HTML con tre differenti input dove inserire i coefficienti di una equazione di secondo grado e ne calcoli, se possibile, le soluzioni. Per il calcolo della radice quadrata si utilizzi la seguente funzione:

var radice = Math.sqrt(4);

ESERCIZI JAVASCRIPT (PROGETTI)

11) Cartolibreria Online: Realizzazione di un sistema di gestione delle vendite per una cartolibreria online. Il portale deve prevedere una lista di oggetti in vendita sotto forma di tabella. La tabella è caratterizzata da 4 differenti colonne: nella prima colonna è riportato il nome dell’oggetto, nella seconda il prezzo unitario, nella terza un input in cui il cliente inserisce il numero di elementi che vuole acquistare, nell’ultima una foto dell’oggetto.
Deve essere inoltre presente un pulsante “acquista” che, se premuto, riporta in uno specifico paragrafo il totale da pagare.

12) Calcolatrice Grafica: Crea una pagina HTML che simuli il comportamento di una calcolatrice.




C++ #3 Esercizi con cicli iterativi e blocchi condizionali

Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito dei linguaggi di programmazione strutturata relativamente all’utilizzo di cicli iterativi e blocchi condizionali.
Gli esercizi,  a complessità crescente, devono essere risolti utilizzando cicli iterativi (definiti e indefiniti) . L’utente può scegliere in modo autonomo se utilizzare i costrutti while, do-while, for e se in caso impiegare blocchi condizionali semplici, nidificati, o se sfruttare la logica booleana.

Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:


https://www.onlinegdb.com/online_c++_compiler

ESERCIZI CON CICLI ITERATIVI E BLOCCHI CONDIZIONALI

1) Realizzare un programma che permetta all’utente di inserire 10 numeri naturali e determini quanti numeri positivi e negativi siano stati inseriti.

2) Realizzare un programma che permetta all’utente di inserire N numeri naturali e determini quanti numeri positivi e negativi siano stati inseriti. Il programma deve terminare quando l’utente inserisce un numero uguale a 0.

3) Realizzare un programma che permetta all’utente di inserire 10 numeri naturali e determini quanti numeri pari e dispari siano stati inseriti. Utilizzare l’operatore modulo per determinare se un numero è pari oppure dispari.

4) Realizzare un programma che permetta all’utente di inserire un numero arbitrario di valutazioni pari ad N e ne calcoli la media.

4bis) Realizzare un programma che permetta all’utente di inserire un numero arbitrario di valutazioni pari ad N e ne calcoli la media. Se la media risulta maggiore o uguale a 6 il programma deve indicare che lo studente è “promosso”, diversamente deve indicare che lo studente è “bocciato”.

4tris) Realizzare un programma che permetta all’utente di inserire un numero arbitrario di valutazioni pari ad N e ne calcoli la media. A partire dal valore della media si riporti il relativo giudizio.

  • Media < 5.5 Insufficiente
  • 5.5 <= Media < 6.5 Sufficiente
  • 6.5 <= Media < 7.5 Discreto
  • 7.5 <= Media < 8.5 Buono
  • 8.5 <= Media < 9.5 Distinto
  • Media >= 9.5 Ottimo

5) Realizzare un programma che permetta all’utente di inserire 5 voti e ne determini la media, il valore massimo ed il valore minimo.

4bis) Realizzare un programma che permetta all’utente di inserire 5 voti e ne determini la media, il valore massimo ed il valore minimo. Inserire inoltre un controllo per fare in modo che nel caso in cui sia inserito un voto non valido (maggiore di 10 o minore di 0) il programma richieda di inserire nuovamente il dato.

5) Realizzare un programma che permetta all’utente di inserire 5 voti e per ogni voto indichi se questo risulta sufficiente oppure insufficiente.

6 NEW) Realizzare un programma che permetta all’utente di inserire una sequenza di numeri interi, terminata dall’inserimento del numero zero. Il programma dovrebbe quindi determinare se la sequenza inserita è crescente oppure no. Il programma dovrebbe quindi stampare un messaggio appropriato che indichi il tipo di sequenza inserita.

6bis) Realizzare un programma che permetta all’utente di inserire una sequenza di numeri interi, terminata dall’inserimento del numero zero. Il programma dovrebbe quindi determinare se la sequenza inserita è decrescente oppure no. Il programma dovrebbe quindi stampare un messaggio appropriato che indichi il tipo di sequenza inserita.

7 NEW) Realizzare un programma che permetta all’utente di calcolare il fattoriale di un numero inserito dall’utente (nel caso di un numero negativo viene stampato un messaggio di errore perché il fattoriale non è definito per numeri negativi.
A seguire sono riportati alcuni esempi relativi al calcolo del fattoriale: Il fattoriale di 5 è parti a 120 e si calcola in questo modo 5*4*3*2*1. Il fattoriale di 3 è parti a 6 e si calcola in questo modo 3*2*1. Il fattoriale di 0 è uguale ad 1

ANALISI DI CODICE:

1) Esercizi di analisi di codice




C++ #2 Esercizi con cicli iterativi

Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito dei linguaggi di programmazione strutturata relativamente all’utilizzo dei blocchi condizionali.
Gli esercizi,  a complessità crescente, possono essere risolti utilizzando cicli iterativi definiti e indefiniti. L’utente può scegliere in modo autonomo se utilizzare i costrutti while, do-while e for.

Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:


https://www.onlinegdb.com/online_c++_compiler

ESERCIZI CON ITERAZIONE DEFINITA

1) Realizzare un programma che permetta di scrivere a monitor i primi 100 numeri naturali.

2) Realizzare un programma che, definito un numero N inserito dall’utente, permetta di scrivere a monitor i numeri naturali compresi tra 1 ed N.

3) Realizzare un programma che permetta di scrivere a monitor tutti i numeri pari compresi tra 0 e 100.

4) Realizzare un programma che permetta di scrivere a monitor i primi 100 numeri naturali in ordine inverso (dal 100 al numero 1)

5) Realizzare un programma che permetta di scrivere a monitor i naturali dispari compresi tra 50 e 100

6) Realizzare un programma che permetta all’utente di inserire 10 differenti numeri e ne calcoli la somma.

7) Realizzare un programma che permetta all’utente di inserire 10 differenti numeri e ne calcoli la media.

8) Realizzare un programma che, definito un numero N inserito dall’utente, permetta di scrivere a monitor i primi 10 multipli del numero inserito (e.g., N, 2N, 3N, …, 10N).

9) Realizzare un programma che permetta di scrivere a monitor i primi N numeri della successione di Fibonacci. Nel dettaglio, i primi due numeri della successione i Fibonacci sono 0 e 1, i successivi sono dati dalla somma dei due numeri precedenti. Ad esempio: 0, 1, 1, 2, 3, 5, 8, 13 …

ESERCIZI CON ITERAZIONE INDEFINITA

10) Realizzare un programma che permetta all’utente di inserire una serie indefinita di numeri interi. Il programma deve fermarsi quando la somma dei numeri inseriti supera 100.

11) Realizzare un programma che permetta all’utente di inserire una serie indefinita di numeri interi e ne calcoli la media Il programma deve fermarsi quando l’utente inserisce uno zero.

12) La popolazione di rane in uno stagno raddoppia ogni giorno. Definita la popolazione iniziale e la popolazione finale da raggiugnere, determinare il numero di giorni necessari per raggiungere la popolazione obiettivo.

12bis) La popolazione di rane in uno stagno raddoppia ogni giorno. Ogni tre giorni a causa di una epidemia generica la popolazione di rane diminuisce di un terzo. Definita la popolazione iniziale e la popolazione finale da raggiugnere, determinare il numero di giorni necessari per raggiungere la popolazione obiettivo.