Olga1233
?>

Четыре ученика 11 класса ваня, гриша, маша и света решили участвовать в игре-конкурсе «инфознайка». четыре других одноклассника из 11 класса дали следующий прогноз: 1) ваня–1, гриша–2, маша–3, света–4 место; 2) гриша–1, ваня–2, маша–3, света–4 место; 3) света – 1, маша – 2, ваня – 3, гриша – 4 место; 4) гриша – 1; маша – 2, ваня – 3, света – 4 место. после оглашения результатов игры было установлено, что все участники решили разное количество ; прогноз одного оправдался полностью, двух других только для двух участников, у оставшегося прогноз оправдался для одного участника. в ответе с букв «м» и «ж» укажите пол учеников, занявших призовые места. например, «ддм» обозначает, что первые два места заняли девочки, а третье – мальчик. 1) мдд; 2) дмд; 3) ммд; 4) мдм

Информатика

Ответы

iraimironova

# Задание 1

sumOfElements = 0

numberOfElements = 0

currentNumber = int(input())

while currentNumber != 0:

   sumOfElements += currentNumber

   numberOfElements += 1

   currentNumber = int(input())

if sumOfElements != 0:

   res = sumOfElements / numberOfElements

   res = round(res, 1)

print(res)

# Задание 2

arr = []  # array for divisors

number = int(input())

for i in range(1, number):

   if number % i == 0:

       arr.append(i)

print(sum(arr))

детский вариант:

# Задание 1

res = 0

summ = 0

n = 0

a = int(input())

while a != 0:

   summ = summ + a

   n = n + 1

   a = int(input())

if summ != 0:

   res = summ / n

   res = round(res, 1)

print(res)

# Задача 2

summ = 0

n = int(input())

for i in range(1, n):

   if n % i == 0:

       summ = summ + i

print(summ)

galiyamart6671

(см. объяснение)

Объяснение:

Решая задачу "в лоб", нам потребовалось бы умножить число само на себя ровно 147 раз. Это много, потому попробуем оптимизировать алгоритм. Заметим, что 147_{10}=10010011_{2}, а x^{147}=x^{128}\times x^{16}\times x^2\times x^1. Изначально имеем число x. Пусть y=147 - степень. Пусть res=1 - наш будущий ответ. На каждой итерации цикла будем умножать x сам на себя, а y целочисленно делить на 2. При этом заметим, что когда y\%20, то нам надо умножить текущий результат r на x. Таким образом, всего за 8 итераций (вместо 147!) мы можем возвести некоторое число в степень 147.

Покажем, как написать это на C++:

#define ll long long

ll bpow(ll x, ll y) {

   ll r = 1;

   while (y > 0) {

       if (y % 2 > 0) {

           r *= x;

       }

       x *= x;

       y /= 2;

   }

   return r;

}

Задание выполнено!

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Четыре ученика 11 класса ваня, гриша, маша и света решили участвовать в игре-конкурсе «инфознайка». четыре других одноклассника из 11 класса дали следующий прогноз: 1) ваня–1, гриша–2, маша–3, света–4 место; 2) гриша–1, ваня–2, маша–3, света–4 место; 3) света – 1, маша – 2, ваня – 3, гриша – 4 место; 4) гриша – 1; маша – 2, ваня – 3, света – 4 место. после оглашения результатов игры было установлено, что все участники решили разное количество ; прогноз одного оправдался полностью, двух других только для двух участников, у оставшегося прогноз оправдался для одного участника. в ответе с букв «м» и «ж» укажите пол учеников, занявших призовые места. например, «ддм» обозначает, что первые два места заняли девочки, а третье – мальчик. 1) мдд; 2) дмд; 3) ммд; 4) мдм
Ваше имя (никнейм)*
Email*
Комментарий*