На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 4
ссылка на сообщение  Отправлено: 23.03.21 18:37. Заголовок: ЕГЭ 22 № 174


Здравствуйте! Во-первых, в задании написано
 цитата:
Получив на вход натуральное число x, этот алгоритм печатает два числа.

, а в коде программы вводятся 2 числа x и y. Во-вторых, у меня не сходится с ответом. Вот программа:
 
for x in range (1,1000):
for y in range (1,1000):
x_temp = x
y_temp = y
a = 0
b = 0
while x_temp > 0 or y_temp>0:
if x_temp > 0:
a = a + 1
if y_temp > 0:
b = b + 1
x_temp = x_temp // 2
y_temp = y_temp // 10
if a == 6 and y == 7:
print(x, y, x*y)

Наименьшие x и y выводит 32 и 7, их произведение 224. В ответе 32000000

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 4 [только новые]







Сообщение: 406
ссылка на сообщение  Отправлено: 23.03.21 20:21. Заголовок: Ответ


Здравствуйте, Шишунов И.В.!


32 000 000 - правильный ответ.

Вы пишете:
 цитата:
Наименьшие x и y выводит 32 и 7


Если эти значения ввести в приведенную в условии задачи программу, то она выдаст 6 и 1, а не 6 и 7.

Эту задачу проще решить устно, а не формально с использовнием перебора:

a - количество разрядов в двоичном представлении числа x (равно 6);
b - количество разрядов в десятичном представлении числа y (равно 7).

Наименьшие натуральные значения:

x = 32
y = 1 000 000

По-моему, очень хорошая задача, так как требует понимания смысла алгоритма, а не выполнения его формального переборного варианта.

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 5
ссылка на сообщение  Отправлено: 24.03.21 14:57. Заголовок: Спасибо!..


Спасибо!
if a == 6 and y == 7:
Здесь опечатка была, надо не y==7, а b == 7. Перебором да, не получается.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 26.04.21 19:58. Заголовок: Добрый день. А как б..


Добрый день. А как быть с тем, что переменная типа integer не может принимать такие большие значения?

Спасибо: 0 
Цитата Ответить
Администратор




Сообщение: 2751
ссылка на сообщение  Отправлено: 26.04.21 20:09. Заголовок: Anastasja пишет: А ..


Anastasja пишет:
 цитата:
А как быть с тем, что переменная типа integer не может принимать такие большие значения?

Четырёхбайтный integer в PascalABC.NET может вместить 231-1 = 2147483647. Если этого мало, есть BigInteger.

___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 69
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет