Jump to content

Extrair password de um array corrompido


Go to solution Solved by antseq,

Recommended Posts

Posted

Olá  precisava de ajuda please!! tenho aqui um exercício para resolver, mas não estou a conseguir.

A resolução do mesmo é uma das etapas para entrar num Bootcamp. 

Já pesquisei, já refiz mas não estou a chegar lá , neste exercício não posso usar métodos regex porque ainda não foram dados aqui na plataforma.

Deixo aqui o ex e a minha tentativa de solução. Se me puderem ajudar fico grata. obrigada 🙂

 

Create a function named extractPassword which takes an array of characters (which includes some trash characters) and returns a string with only valid characters (a - z, A - Z, 0 - 9).

Here's an example:

extractPassword(['a', '-', '~', '1', 'a', '/']); // should return the string 'a1a' extractPassword(['~', 'A', '7', '/', 'C']); // should return the string 'A7C'

o meu código:

var extractPassword = (['a', '-', '~', '1', 'a', '/', '~', 'A', '7', '/', 'C']);{
var newPass = [];

    for (var i = 0; i < extractpassword.length; i++);{
        var j = password[i];
        if ( ('a'<=j && j <= 'z') || ('A'<=j && j<='Z') || ('0'<= j && j<='9')){
            newPass.push(j);
        }
               
    }
    return newPass.join[''];
}

ahh o  meu output é illegal return statement:(

Posted

O enunciado diz para devolver uma string,

por isso, o melhor é usar uma variavel string.

Exemplo:

resultado = ""

resultado = resultado + password[i]

ou seja, resultado = resultado + j

  • Solution
Posted
Em 03/10/2023 às 01:08, lara disse:

Olá  precisava de ajuda please!! tenho aqui um exercício para resolver, mas não estou a conseguir.

A resolução do mesmo é uma das etapas para entrar num Bootcamp. 

Já pesquisei, já refiz mas não estou a chegar lá , neste exercício não posso usar métodos regex porque ainda não foram dados aqui na plataforma.

Deixo aqui o ex e a minha tentativa de solução. Se me puderem ajudar fico grata. obrigada 🙂

ahh o  meu output é illegal return statement:(

Viva,

Há ali uma "mistura" entre a tentativa de criar uma função... vários parêntesis fora do sítio... ";"s também... nomes de variáveis... "case-sensitive"...

  • se "extractPassword" é uma variável.. o "for" está correcto "<extractpassword.length".. mas a variável "var j = password[i];" não
  • a variável acima do "for" é "extractPassword"
  • o seu "for" tem um ";" logo de seguida "for (.....);{.......}", portanto não vai repetir a secção seguinte {......} i vezes
  • o "join" final será "join("")" e não "join[""]"
  • como não chega propriamente a definir uma função... está a fazer um "return" sem sentido
  • de resto até funciona!

Em modo de output para a consola o seu código ficaria assim (99% do código é o seu):

var extractPassword = (['a', '-', '~', '1', 'a', '/', '~', 'A', '7', '/', 'C']);
var newPass = [];

for (var i = 0; i < extractPassword.length; i++) {
  var j = extractPassword[i];
  if (('a' <= j && j <= 'z') || ('A' <= j && j <= 'Z') || ('0' <= j && j <= '9')) {
    newPass.push(j);
  }
}
console.log(newPass.join(""));

Fica o desafio para criares a tal função!

  • Vote 1

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.