×

Challenges

  1. Not started

  2. Not started

  3. Not started

  4. Not started

  5. Not started

  6. Not started

  7. Not started

  8. Not started

  9. Not started

  10. Not started

  11. Not started

  12. Not started

  13. Not started

  14. Not started

  15. Not started

  16. Not started

  17. Not started

  18. Not started

  19. Not started

  20. Not started

  21. Not started

Challenge 4.4

Count dots on 5 black and white cards as one input (using a loop)

Challenge Level: Growing experience

Requirement:

Write a program that asks the end user to enter 5 black and white cards representing bits, all as one input ('B' for black and 'W' for white), and displays the total number of dots as the output. Use a loop for this challenge, so it could be changed to work for a different number of cards.

Hints
  • Make variables called:

    • total_number_of_dots and set its value to 0.
    • number_of_dots and set its value to 16.
    • cards and set its value to the string entered as the input. Check each letter of the input string cards (use a for loop to iterate 5 times) starting from the first letter. If it’s ‘W’ add the corresponding number of dots (16 for the first letter, 8 for the second letter and so on) to the total_number_of_dots. Display the total_number_of_dots as the output.
  • You can access a letter at the specified position in a string by using brackets. In your for loop, if you use the variable 'i' to iterate, cards[i] will get the value at index i in cards

  • In this challenge you need to access all the 5 letters in user’s input and check to see if each of them is equal to B (black) or W (white).

Programming Reminders
# Print a string directly
print("Hello World!")

# Print a variable
print(my_var)

Variables

# Set a variable as a string
fruit_name = "Apple"

# Set a variable as an integer 
pieces_of_fruit = 7

# Set a variable from a calculation
cost_of_fruit = pieces_of_fruit * cost_per_item

# Add one to a value
pieces_of_fruit += 1

Conditionals

# Find out the discount on fruit
if pieces_of_fruit > 100:
   print("Bulk discount applies")
elif pieces_of_fruit > 5:
   print("Discount applies")
else:
   print("No discount")

For loops

# Print numbers 0-9 - remember Python starts counting from 0 
for num in range(10):
    print(num)

While loops

# Print numbers 0-9 using a while loop and a variable
num = 0
while num < 10:
    print(num)

    # Increment the variable by one.
    # It will prevent an infinite loop!
    num += 1 

Lists

# Create a list of fruit 
fruit = ["Apple", "Banana", "Orange", "Pear"]

Functions

# Create a function which prints a greeting
def greeting(name):
    print("Hello " + name)

# Call the function
greeting("Spiderman")

Enter your code in the editor below

Your results will be displayed here

Input Expected output Received output Status
BBBBW
1

                
Not yet run ?
BBBBB
0

                
Not yet run ?
WWWWW
31

                
Not yet run ?