# day3 - branch and loop operations - 2021 / 9 / 16

Keywords: Python

### 1. Basic questions

1. Print pass or fail according to the range of grades entered
```score = int(input('Enter grade:'))
if score >= 60:
print('pass')
else:
print('fail,')
```
1. Print adults or minors according to the entered age range. If the age is not within the normal range (0 ~ 150), it is not a person!.
```age = int(input('Enter age:'))
if 0 <= age <= 150:
if age >= 18:
else:
print('under age')
else:
print('This is not a person!')
```
1. Enter two integers a and b. if the result of a-b is odd, the result will be output. Otherwise, the result of output prompt information a-b is not odd.
```a = int(input('input a: '))
b = int(input('input b: '))
if (a-b) % 2 == 0:
print('a-b The result is not odd')
else:
print(a-b)
```
1. Enter the year. If the entered year is a leap year, print 'leap year', otherwise print 'normal year'
```year = int(input('Enter year:'))
result_1 = (year % 4 == 0 and year % 10 != 0) or year % 400 == 0
if result_1:
print('leap year')
else:
print('Ordinary year')
```
1. Use the for loop to output multiples of all 3 in 0 ~ 100.
```for i in range(0, 101, 3):
print(i)
```
1. Use the for loop to output the number of single digits or tens within 100 ~ 200 that can be divided by 3.
```for i in range(100, 200):
num = i // 10 % 10
num_1 = i % 10
if num % 3 == 0 or num_1 % 3 == 0:
print(i)
```
1. Count the number of tens in 100 ~ 200 that are 5
```for i in range(100, 200):
num = i % 10
if num % 10 == 5:
print(i)
```
1. Print all numbers in 50 ~ 150 that can be divided by 3 but cannot be divided by 5
```for i in range(50, 150):
if i % 3 == 0 and i % 5 != 0:
print(i)
```
1. Calculate the sum of all numbers in 50 ~ 150 that can be divided by 3 but cannot be divided by 5
```sum_1 = 0
for i in range(50, 150):
if i % 3 == 0 and i % 5 != 0:
sum_1 += i
print(sum_1)
```

1. Use the cycle to calculate the result of 1 * 2 * 3 * 4 *... * 10.
```sum_1 = 1
for i in range(1, 11):
sum_1 *= i
print(sum_1)
```
1. Count the number of digits within 100 that are 2 and can be divided by 3.
```count = 0
for i in range(1, 101):
if i % 3 == 0 and i % 10 == 2:
count += 1
print(count)
```
1. Enter any positive integer and find how many digits it is?

Note: you can't use strings here. You can only use loops

```num = int(input('Enter a positive integer:'))
count = 0
while num // 10 != 0:
count += 1
num = num // 10
else:
count += 1
print(count)
```
1. Print out all the numbers of daffodils. The so-called daffodils number refers to a three digit number, and the square sum of each digit is equal to the number itself. For example: 153 yes

The number of fairy flowers is 1 ³ + five ³ + three ³ Equals 153.

```for i in range(100, 1000):
x = i % 10
y = i % 100 // 10
z = i % 1000 // 100
if x**3 + y**3 + z**3 == i:
print(i)
```

### 3. Challenges

1. Judge whether the specified number is a prime number (a prime number is a prime number, that is, a number that cannot be divided by other numbers except 1 and itself)
```num = int(input('Please enter a number:'))
if num % 2 != 0 and num % 3 != 0:
print('It's a prime')
else:
print('Not prime')
```
1. Find the value of the nth number in the Fibonacci sequence: 1, 1, 2, 3, 5, 8, 13, 21, 34... (here n can be any positive integer, which can be determined by input)
```n = int(input('Enter number n: '))
if n <= 2:
print(1)
else:
num_1 = 1
num_2 = 1
for i in range(n - 2):
num = num_1 + num_2
num_2 = num_1
num_1 = num
print(num)
```
1. Output 9 * 9 formula. Procedure analysis: Considering branches and columns, there are 9 rows and 9 columns in total, i control row and j control column.
```for i in range(1, 10):
for j in range(1, 10):
print(i, '*', j, '=', i*j, end=' ', sep='')
print('')
```
1. This is the classic question of "100 horses and 100 loads". There are 100 horses, carrying 100 loads of goods, 3 loads of horses, 2 loads of medium horses and 1 load of two ponies. How many are the big, medium and small horses? (exhaustive method can be used directly)
```for a in range(34):
for b in range(100 - a):
if a * 3 + b * 2 + (100 - a - b) / 2 == 100:
print('Malaysia has', a, 'Horse', 'Zhongma you', b, 'Horse', 'Pony has', 100-a-b, 'Horse', sep='')
```

Posted by ambrennan on Thu, 16 Sep 2021 14:11:58 -0700