Shampoo cycle loop
Question:
I am having trouble figuring out how to stop the loop in my code:
def shampoo_instructions(num_cycles):
for num_cycles in range(1,num_cycles+1):
if num_cycles < 1:
print 'Too few.'
elif num_cycles > 4:
print 'Too many.'
else:
print num_cycles, ': Lather and rinse.'
else:
print 'Done.'
shampoo_instructions(2)
My output would be:
1 : Lather and rinse.
2 : Lather and rinse.
Done.
How can i make it so when shampoo_instructions(6)
it just prints “Too many.”
?
Answers:
Move your range check to be outside your actual looping, eg:
def shampoo_instructions(num_cycles):
if num_cycles < 1:
print 'Too few.'
elif num_cyles > 4:
print 'Too many.'
else:
for num_cycles in range(1,num_cycles+1):
print num_cycles, 'lather and rinse.'
print 'Done'
found some help from reddit.
def shampoo_instructions(num_cycles):
if num_cycles <= 0:
print("Too few.")
elif num_cycles >= 5:
print("Too many.")
else:
for num_cycles in range (1, num_cycles + 1):
print(num_cycles,":", "Lather and rinse.")
print("Done.")
''' Your solution goes here '''
def print_shampoo_instructions(num_cycles):
if num_cycles < 1:
print('Too few.')
elif num_cycles > 4:
print('Too many.')
else:
i = 1
while i <= num_cycles:
print(f'{i} : Lather and rinse.')
i += 1
print('Done.')
user_cycles = int(input())
print_shampoo_instructions(user_cycles)
I am having trouble figuring out how to stop the loop in my code:
def shampoo_instructions(num_cycles):
for num_cycles in range(1,num_cycles+1):
if num_cycles < 1:
print 'Too few.'
elif num_cycles > 4:
print 'Too many.'
else:
print num_cycles, ': Lather and rinse.'
else:
print 'Done.'
shampoo_instructions(2)
My output would be:
1 : Lather and rinse.
2 : Lather and rinse.
Done.
How can i make it so when shampoo_instructions(6)
it just prints “Too many.”
?
Move your range check to be outside your actual looping, eg:
def shampoo_instructions(num_cycles):
if num_cycles < 1:
print 'Too few.'
elif num_cyles > 4:
print 'Too many.'
else:
for num_cycles in range(1,num_cycles+1):
print num_cycles, 'lather and rinse.'
print 'Done'
found some help from reddit.
def shampoo_instructions(num_cycles):
if num_cycles <= 0:
print("Too few.")
elif num_cycles >= 5:
print("Too many.")
else:
for num_cycles in range (1, num_cycles + 1):
print(num_cycles,":", "Lather and rinse.")
print("Done.")
''' Your solution goes here '''
def print_shampoo_instructions(num_cycles):
if num_cycles < 1:
print('Too few.')
elif num_cycles > 4:
print('Too many.')
else:
i = 1
while i <= num_cycles:
print(f'{i} : Lather and rinse.')
i += 1
print('Done.')
user_cycles = int(input())
print_shampoo_instructions(user_cycles)