Sono un Neofita Help!

di il
4 risposte

Sono un Neofita Help!

Ciao Ragazzi

sono un neofita e per tanto sono aperto alle vostre critiche sulla sintassi.
Nel programma che segue vorrei che mi fosse restituito il voto in stringa ma non capisco se commetto un errore di sintassi o cos'altro..Potreste aiutarmi?

Grazie

var voto = 28
var A = 'Eccellente'
var B = 'Ottimo'
var C = 'Distinto'
var D = 'Buono'
var E = 'Sufficente'
var F = 'Insufficente'
var G = 'Capra!!Capra!!Capra!!'

var W1 = (voto >= 0 && voto <= 14)
var W2 = (voto >= 15 && voto <= 18)
var W3 = (voto >= 19 && voto <= 21)
var W4 = (voto >= 22 && voto <= 24)
var W5 = (voto >= 25 && voto <= 26)
var W6 = (voto >= 27 && voto <= 29)
var W7 = (voto === 30 )


console.log(W1)
console.log(W2)
console.log(W3)
console.log(W4)
console.log(W5)
console.log(W6)
console.log(W7)

switch (voto) {
case W1:
console.log(`Il tuo voto è ${G} `)
break
case W2:
console.log(`Il tuo voto è ${F} `)
break
case W3 :
console.log(`Il tuo voto è ${E} `)
break
case W4 :
console.log(`Il tuo voto è ${D} `)
break
case W5:
console.log(`Il tuo voto è ${C} `)
break
case W6:
console.log(`Il tuo voto è ${B} `)
break
case W7:
console.log(`Il tuo voto è ${A} `)
break
default:
console.log('Il voto inserito non è corretto')
break
}

4 Risposte

  • Re: Sono un Neofita Help!

    MatteoAlleXx ha scritto:


    sono un neofita e per tanto sono aperto alle vostre critiche sulla sintassi.
    Quello che è criticabile innanzitutto è il modo che hai usato per approcciare al forum.

    Devi usare un titolo significativo per la discussione, e usare inoltre l'apposito pulsante </> per formattare correttamente il codice in modo che sia leggibile.

    Detto questo, non hai indicato qual è il problema nel tuo codice: che errore ottieni? su quale riga? oppure riscontri un comportamento diverso da quello atteso? se sì, quale?

    La strada per ricevere un aiuto proficuo parte da un uso corretto di questo strumento...
  • Re: Sono un Neofita Help!

    Ciao Alka
    grazie per le mazzate... .Hai ragione dovevo intitolare il mio primo caso diversamente
    Ma, come avrai potuto capire non sono solo nuovo della programmazione Javascript ma anche nuovo nel Forum.chiedo umilmente Venia.
    Detto questo comincio con il chiederti cosa intendi con l'utilizzare l'apposito pulsante </>.mi fai un esempio pratico?
    Sto utilizzando Visual Studio Code.

    nel codice che ho scritto, vorrei che mi fosse restituito uno dei commenti in base al voto inserito

    esempio
    var voto = 27
    vorrei ottenere 'il tuo voto è Ottimo'

    invece mi restituisce sempre 'Il voto inserito non è corretto'.prende sempre e solo il DEFAULT

    switch case funziona perchè in base al Numero inserito nella variabile voto so quale sentenza è TRUE o FALSE pero' non stampa quello che voglio.

    suggerimenti?
  • Re: Sono un Neofita Help!

    MatteoAlleXx ha scritto:


    Detto questo comincio con il chiederti cosa intendi con l'utilizzare l'apposito pulsante </>.mi fai un esempio pratico?
    Così come hai formattato il testo in grassetto, sopra l'area in cui scrivi il messaggio trovi anche il pulsante in questione.

    MatteoAlleXx ha scritto:


    switch case funziona perchè in base al Numero inserito nella variabile voto so quale sentenza è TRUE o FALSE pero' non stampa quello che voglio.
    Lo switch non funziona così come credi: vedi la documentazione in linea.

    Puoi usarlo per definire diversi case in base al valore della variabile voto, ma nel tuo codice i valori di riferimento che usi sono quelli delle variabili W*, che tra l'altro visualizzi anche nella console e quindi dovresti vedere che non corrispondono a un possibile contenuto della variabile voto, ossia un numero, ma contengono un valore booleano true/false in base alle condizioni che hai definito appena sopra.

    Controlla bene il codice.

    Ciao!
  • Re: Sono un Neofita Help!

    Ciao, vedi se va bene cosi:
    
    const valutazione = voto => {
        const voti = {
            'A': 'Eccellente',
            'B': 'Ottimo',
            'C': 'Distinto',
            'D': 'Buono',
            'E': 'Sufficente',
            'F': 'Insufficente',
            'G': 'Capra!!Capra!!Capra!!'
        }
        
        if (voto >= 0 && voto <= 14) {
            return `Il tuo voto è ${voti.G}`
        } else if (voto >= 15 && voto <= 18) {
            return `Il tuo voto è ${voti.F}`
        } else if (voto >= 19 && voto <= 21) {
            return `Il tuo voto è ${voti.E}`
        } else if (voto >= 22 && voto <= 24) {
            return `Il tuo voto è ${voti.D}`
        } else if (voto >= 25 && voto <= 26) {
            return `Il tuo voto è ${voti.C}`
        } else if (voto >= 27 && voto <= 29) {
            return `Il tuo voto è ${voti.B}`
        } else if (voto === 30) {
            return `Il tuo voto è ${voti.A}`
        } else {
            return 'Il tuo voto non è valido.'
        }
    }
    
    console.log(valutazione(22))
    
Devi accedere o registrarti per scrivere nel forum
4 risposte