М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
ІнкСанс
ІнкСанс
29.04.2021 11:48 •  Информатика

Вам нужно умножить некоторое большое число x на 27. у вас есть калькулятор, но на калькуляторе сломались все кнопки операций, кроме сложения. поэтому вы можете только складывать разные числа (например, можно сложить число x и число x, тогда получится 2x, затем можно сложить число 2x и 2x и получится 4x, а можно сложить 2x и x и получится 3x, то есть можно складывать любые ранее полученные числа между собой). определите, при какого минимального числа сложений можно получить число 27x. последовательность операций, при которых можно получить число 27x за указанное число сложений.

👇
Ответ:
niknameoyy
niknameoyy
29.04.2021
Программа на питоне, перебирающая варианты и возвращающая все ответы минимальной длины:
def number_of_adds(n):
  def next_seq(seq):
    new_elems = set()
    for i in range(len(seq)):
      for j in range(i, len(seq)):
        new_elem = seq[i] + seq[j]
        if new_elem > seq[-1] and new_elem not in new_elems:
          new_elems.add(new_elem)
          yield seq + [new_elem]
  
  current_stage = None
  next_stage = [[1]]
  answer = []
  while len(answer) == 0:
    current_stage = next_stage
    next_stage = []
    for chain in current_stage:
      next_stage.extend(next_seq(chain))
    answer = [seq[1:] for seq in next_stage if seq[-1] == n]
  return answer
    
def print_solution(n):
  answer = number_of_adds(n)
  print("Для {} есть {} решений(-я, -е):".format(n, len(answer)))
  for i in range(len(answer)):
    print("{}. {}".format(i + 1, " ".join(map(str, answer[i]
  print()

print_solution(27)

Запустив, находим, что необходимо 6 сложений. За 6 сложений можно получить 27X, например, так:
X + X = 2X
2X + X = 3X
3X + 3X = 6X
6X + 6X = 12X
12X + 12X = 24X
24X + 3X = 27X
4,7(32 оценок)
Открыть все ответы
Ответ:
муслима18
муслима18
29.04.2021

1 задача:

#include <bits/stdc++.h>

using namespace std;

int main() {

   long long a;

   cin >> a;

   if (a < 7) cout << "Yes";

   else if (a > 10) cout << "No";

   else cout << "Error";

   return 0;

}

2 задача:

#include <bits/stdc++.h>

using namespace std;

int main() {

   long long a, b;

   cin >> a >> b;

   if (a > b) cout << "yes";

   else {

       long long c = a;

       a = b;

       b = c;

       cout << a << ' ' << b << endl;

   }

   return 0;

}

3 задача:

#include <bits/stdc++.h>

using namespace std;

int main() {

   long long a, b;

   cin >> a >> b;

   if (a * b >= 0) cout << "YES";

   else cout << "NO";

   return 0;

}

4,6(92 оценок)
Ответ:
madina319
madina319
29.04.2021
1)
Var
n,m,max,min:integer;
Begin
write('Введите число: ');
readln(n);
min:=9;   
max:=0;
while n>0 do 
begin 
m:=n mod 10; 
if m<min then min:=m; 
if m>max then max:=m; 
n:=n div 10; end;   
writeln('Максимальное число: ',max);   
writeln('Минимальное число: ',min);
End.
2)
var
i,count: integer;
n,s:string;
begin
writeln('Введите число: ');
readln(s);
writeln('Введите цифру: ');
readln(n);
for i:=1 to length(s) do
if(s[i]=n)then
count:=count+1;
writeln('Количество раз, когда встречается цифра = ',count);
end.
4,6(27 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ