Write a program that lets you know if you can have a key or not, based on your role at the school.
First ask for the user’s role at the school. They can be a student, administrator, or a teacher. (And remember that capitalization is important! ‘Student’ is not the same as ‘student’.)
Example 1: Administrator or Teacher
For example, if this was the input:
Are you an administrator, teacher, or student?: teacher
This should be the output:
Administrators and teachers get keys!
Example 2: Student
And if this was the input:
Are you an administrator, teacher, or student?: student
This should be the output:
Students do not get keys!
(Note: You should also be able to handle a situation where the user enters a value other than administrator, teacher or student and tell them they must be one of the three choices!)
Example 3: Other
If they input anything else:
Are you an administrator, teacher, or student?: secretary
This should be the output:
You can only be an administrator, teacher, or student!
Ответ:
Задание 1
Способ 1
n = int(input())
a = list(map(int, input().split()))
m = max(a)
a.reverse()
print(m)
print(*a)
Объяснение:
▪︎ Вводим число n — кол-во эл-тов массива (оно конкретно в этом решении не нужно, но скорее всего есть во входных данных к задаче), потом вводим в строку сам массив а.
▪︎ Функция max позволяет найти в списке максимальный эл-т. Записываем результат работы этой ф-ии в переменную m.
▪︎ Метод reverse() разворачивает массив.
▪︎ Выводим сначала максимальный эл-т, потом массив. Чтобы массив выводился аккуратно (условно: 1 2 3 4, а не [1, 2, 3, 4]), ставим символ * перед его именем.
Задание 1
Способ 2
n = int(input())
a = list(map(int, input().split()))
m = 0
for i in range(n):
if a[i] > m:
m = a[i]
print(m)
for i in range(n-1, -1, -1):
print(a[i], end=» «)
Объяснение:
▪︎ Так же считываем кол-во элементов и сам массив.
▪︎ Заводим переменную m.
▪︎ Идем по массиву и каждый раз обновляем m, если встретившийся эл-т больше уже записанного там значения. Под конец в m будет записан максимальный эл-т.
▪︎ Выводим m.
▪︎ Потом идем по массиву с конца и выводим эл-ты (всего n эл-тов, счет с 0, последняч граница не включается в диапазон => идем с n-1 (номер последнего эл-та) до -1 (номер первого 0, последнюю границу не включаем, т.е. до -1) с шагом -1 (назад)).
▪︎ Кстати, в этом способе я не меняю массив а, а просто вывожу его в обратном порядке, тогда как в 1ом способе массив меняется.
Задача 2
Способ 1
a = list(map(float, input().split()))
av = sum(a) / len(a)
for i in range(len(a)):
if a[i] == 0:
a[i] = av
print(a[i], end=» «)
Объяснение:
▪︎ Вводим в строку массив
▪︎ Найдем среднее арифметическое: это сумма всех эл-тов поделить на кол-во эл-тов. Сумму находим с помощью функции sum, а длину массива через len. Записываем результат в переменную av.
▪︎ Идем по массиву и проверяем: если эл-т равен 0, то заменяем его на av. Потом сразу выводим эл-т. end=» » стоит для того, чтобы эл-ты выводились в строку.
Задача 2
Способ 2
a = list(map(float, input().split()))
s = 0
for i in range(len(a)):
s += a[i]
av = s / len(a)
for i in range(len(a)):
if a[i] == 0:
a[i] = av
print(a[i], end=» «)
Объяснение:
Все то же самое, только теперь находим сумму без ф-ции. Для нахождения суммы идем по массиву и прибавляем к переменной s все эл-ты. Потом все абсолютно то же самое.
Удачи, не забудьте про табы.