Small Basic Challenge – Week 9: Easy
Write a Text Window program that asks the user for a width and height.
The program will then draw a rectangle with these dimensions using asterisks.
Example:
What is the width? 10
What is the height? 5
Here is your rectangle:
**********
**********
**********
**********
**********
1
Comincia visualizzando una riga di asterischi di lunghezza n
for i in range(n):
print("*", end="")
print()
2
Un rettangolo di asterischi con height righe di width caratteri
width = int(input("What is the width? "))
height = int(input("What is the height? "))
print("Here is your rectangle:")
for r in range(height):
for c in range(width):
print("*"', end="")
print()
3
La parte del codice che disegna diventa una funzione
def rectangle(w, h):
print("Here is your rectangle:")
for r in range(h):
for c in range(w):
print("*", end="")
print()
width = int(input("What is the width? "))
height = int(input("What is the height? "))
rectangle(width, height)
4
Più difficile: disegna solo il contorno del rettangolo (una cornice).
Osserva
- La prima e l’ultima riga sono piene: il codice è lo stesso…
- Le righe intermedie sono vuote
def rectangle2(w, h):
print("Here is your rectangle:")
for c in range(w):
print("*", end="")
print()
for r in range(h-2):
print("*", end="")
for c in range(w-2):
print(" ", end="")
print("*")
for c in range(w):
print("*", end="")
print()
width = int(input("What is the width? "))
height = int(input("What is the height? "))
rectangle2(width, height)
5
Disegna
- una riga piena
- height-2 volte una riga vuota
- una riga piena
def full(n):
for i in range(n):
print("*", end="")
print()
def empty(n):
print("*",end="")
for i in range(n-2):
print(" ", end="")
print("*")
def rectangle3(w, h):
print("Here is your rectangle:")
full(w)
for i in range(h-2):
empty(w)
full(w)
width = int(input("What is the width? "))
height = int(input("What is the height? "))
rectangle3(width, height)