×

Challenges

Challenge 4.2

# Count dots on 5 black and white cards (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 ('B' for black and 'W' for white which are entered one at a time) 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 a variable called total_number_of_dots and set its value to 0.
• Make another variable called number_of_dots and set its value to 16.
• Add the value of number_of_dots to the value of total_number_of_dots every time the end user enters ‘W’ as the input. Repeat this 5 times dividing the value of number_of_dots by 2 each time and convert the result to an integer using int().
• Display the total_number_of_dots as the output.
• Use a for loop to repeat this five times
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
B
W
W
B
W
13

Not yet run ?
B
B
B
B
B
0

Not yet run ?
W
W
W
W
W
31

Not yet run ?