This zyLab activity is the traditional programming assignment, typically requiring a few hours over a week. The previous section provides warm up exercises intended to help a student prepare for this programming assignment.
This program outputs a downwards facing arrow composed of a rectangle and a right triangle. The arrow dimensions are defined by user specified arrow base height, arrow base width, and arrow head width.
(1) Modify the given program to use a loop to output an arrow base of height arrow_base_height. (1 pt)
(2) Modify the given program to use a loop to output an arrow base of width arrow_base_width. (1 pt)
(3) Modify the given program to use a loop to output an arrow head of width arrow_head_width. (2 pts)
(4) Modify the given program to only accept an arrow head width that is larger than the arrow base width. Use a loop to continue prompting the user for an arrow head width until the value is larger than the arrow base width. (1 pt)
while arrow_head_width <= arrow_base_width:
print ('Enter arrow head width: ')
arrow_head_width = int(input())
Example output for arrow_base_height = 5, arrow_base_width = 2, and arrow_head_width = 4:
Enter arrow base height: 5
Enter arrow base width: 2
Enter arrow head width: 4
**
**
**
**
**
****
***
**
*
my code that doesn't seem to work
Code:
print ('Enter arrow base height: ')
arrow_base_height = int(input())
print ('Enter arrow base width: ')
arrow_base_width = int(input())
print ('Enter arrow head width: ')
arrow_head_width = int(input())
# Draw arrow base (height = 3, width = 2)
print ('**')
print ('**')
print ('**')
# Draw arrow head (width = 4)
print ('****')
print ('***')
print ('**')
print ('*')
arrow_base_height = int(input('Enter arrow base height:\n'))
arrow_base_width = int(input('Enter arrow base width:\n'))
arrow_head_width = int(input('Enter arrow head width:\n'))
while arrow_head_width <= arrow_base_width:
arrow_head_width = int(input('Enter arrow head width:\n'))
print('')
for i in range (arrow_base_height):
i = ('*' * arrow_base_width)
print(i)
for j in range(arrow_head_width):
j = '*' * arrow_head_width
print (j)
arrow_head_width -= 1