Start learning free

LESSON 169 OF 414 · PROJECTS: EVERYDAY PROGRAMS

Password Strength V2 - Has Digit in Scala

Practice

Extend the length check with a second rule: the password must also contain at least one digit.

You start with:

val password = "Secret99"

Build:

Length: 8
Has digit: True
Strong

Rules:

  • Print "Length: " followed by the number of characters.
  • Loop through each character to set a boolean flag hasDigit, which starts as false and becomes true when a digit is seen.
  • Print "Has digit: " followed by the flag. Write it as True or False with a capital letter, exactly as in the example (your language's own boolean prints differently, so choose the text yourself).
  • If the length is at least 8 and hasDigit is true, print Strong; otherwise print Weak.

Try other passwords: with abcdefgh the output is

Length: 8
Has digit: False
Weak

c.isDigit tests a single char. Use (if (hasDigit) "True" else "False") to print a capitalised True/False.

val password = "Secret99"

val length = password.length
println("Length: " + length)
var hasDigit = false
for (c <- password) {
    if (c.isDigit) {
        hasDigit = true
    }
}
println("Has digit: " + (if (hasDigit) "True" else "False"))
if (length >= 8 && hasDigit) {
    println("Strong")
} else {
    println("Weak")
}

STEP 1 OF 8
    Ctrl + Enter to check

    Password Strength V2 in Scala

    Keep going with ScalaAbout 340 step-by-step lessons, from your first line of code to coding interviews. Free to start.
    Start learning free