Sofia Borges Posted September 27, 2020 at 11:15 PM Report Share #619420 Posted September 27, 2020 at 11:15 PM (edited) Olá Pessoal! Em primeiro peço desculpa se estou a infringir alguma regra. Caso este tópico não esteja de acordo agradeço que eliminem. Acontece que estou bastante 'aflita' PRECISO DE AJUDA! Tenho um exercício, básico (o nr 15 de 65), que encalhei. Já não pratico qualquer tipo de programação há 15 anos. Estou a realizar uns exercícios para tentar uma vaga num curso que será de extrema importância para mim. O exercício é o seguinte: Initialize a variable called counter with the value 10 and print it to the console. Using unary operators, decrement the value in the variable until you reach the number 7. Print the final value. Eu faço o seguinte código: var value = 10; console.log (value); var decrementValue = value; var decrementI = value--; var decrementII = value--; var decrementIII = value--; var decrementIV = value--; console.log (decrementIV); Eu faço isso e dá sempre o erro: "Make sure you are declaring a variable with the right name" Obrigada Edited September 27, 2020 at 11:46 PM by Sofia Borges correcção no código Link to comment Share on other sites More sharing options...
tiago.f Posted September 28, 2020 at 06:37 AM Report Share #619421 Posted September 28, 2020 at 06:37 AM Olá. A variável deve chamar-se “counter” e tu estás a usar “value” (e decrementedValue e outras) mas nenhuma com o nome que o enunciado indica. já agora, não precisas das atribuicoes decrementedValue = value— Já que o operador unário “—“ modifica o valor da variável onde é aplicado. value— é equivalente a value = value - 1 Link to comment Share on other sites More sharing options...
antseq Posted September 28, 2020 at 07:44 AM Report Share #619422 Posted September 28, 2020 at 07:44 AM 8 horas atrás, Sofia Borges disse: Eu faço isso e dá sempre o erro: "Make sure you are declaring a variable with the right name" Obrigada Viva, Testei o seu código e está a "funcionar" sem mostrar qualquer mensagem de erro. Inclusive faz o output de "10" seguido de "7". Já lhe comentaram (acima) que não precisava daquelas variáveis e que nem está a usar a variável "counter" pedida no problema. Outra coisa, tenha cuidado ao atribuir o valor de uma variávelX++ ou variávelX-- a uma outra variávelY, nestes casos a variávelY fica com o valor da variávelX antes da operação (++ ou --). var value = 10; var decrementI = value--; => decrementI = 10 => só depois value=9 var decrementII = value--; => decrementII = 9 => só depois value=8 var decrementIII = value--; => decrementIII = 8 => só depois value=7 var decrementIV = value--; => decrementIV = 7 => só depois value=6 Se quiser atribuir o valor final (após a operação ++ ou --) o sinal ++/-- deveria vir antes da variável: var value = 10; var decrementI = --value; => value=9 => só depois decrementI = 9 var decrementII = --value; => value=8 => só depois decrementII = 8 var decrementIII = --value; => value=7 => só depois decrementIII = 7 var decrementIV = --value; => value=6 => só depois decrementIV = 6 * não precisa destas varáveis para nada... foi só um exemplo para ter cuidado com os ++/-- atribuídos a outra variável. Link to comment Share on other sites More sharing options...
Sofia Borges Posted September 28, 2020 at 01:46 PM Author Report Share #619425 Posted September 28, 2020 at 01:46 PM OBRIGADA! 1º lugar, que estupidez o nome da variavel... li tantas vezes o exercicio que às tantas bloqueei. 2º lugar, ainda não consegui resolver... (que estupido). var counter = 10; console.log (counter); console.log (counter--); console.log (counter--); console.log (counter--); console.log (counter--); o "erro" agora é: >>>>Code is incorrect Don't forget to print the variable to the console before and after the decrementations Link to comment Share on other sites More sharing options...
tiago.f Posted September 28, 2020 at 02:09 PM Report Share #619426 Posted September 28, 2020 at 02:09 PM Sofia, lê o comentário do antseq acerca da diferença entre counter— e —counter Link to comment Share on other sites More sharing options...
Sofia Borges Posted September 28, 2020 at 02:14 PM Author Report Share #619427 Posted September 28, 2020 at 02:14 PM 3 minutos atrás, tiago.f disse: Sofia, lê o comentário do antseq acerca da diferença entre counter— e —counter Desculpa, tens razão. var counter = 10; console.log (counter); console.log (--counter); console.log (--counter); console.log (--counter); console.log (counter); Erro: >>>>Code is incorrect: Your program is producing the wrong output Link to comment Share on other sites More sharing options...
tiago.f Posted September 28, 2020 at 03:18 PM Report Share #619428 Posted September 28, 2020 at 03:18 PM Podes colocar aqui o output esperado e o output do teu programa? Link to comment Share on other sites More sharing options...
Sofia Borges Posted September 28, 2020 at 09:47 PM Author Report Share #619434 Posted September 28, 2020 at 09:47 PM (edited) 6 horas atrás, tiago.f disse: Podes colocar aqui o output esperado e o output do teu programa? Já consegui! O que queriam era: var counter = 10; console.log (counter); var counterOne = --counter; var counterTwo = --counter; var counterTree = --counter; console.log (counter); Obrigada pela ajuda! 🙂 Irei precisar, de certeza, de mais! 😉 Edited September 28, 2020 at 09:53 PM by Sofia Borges resolvido Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now