Вопрос по информатике:
В случае с усложнённым заданием теперь программа не только будет ПРОСИТЬ пользователя ВВЕСТИ ЧИСЛО ДЛЯ ВОЗВЕДЕНИЯ В СТЕПЕНЬ и саму степень... Программа будет должна осуществлять дополнительную проверку на то больше результат по модулю, чем число 2147483647 или нет, если да, то предупреждать об этом пользователя («Опасность! Результат больше чем … »)Комментарий по ходу выполнения программы давать вразумительный и обязательный.
Пример работы программы такой:
На экране появляется фраза типа
«Введите целое число»
Введите его степень»
Юзер вводит два целых числа (пускай 5 и 30)
Программа сообщает:
«Внимание! Результат 5^30 выходит за пределы типа INTEGER, 2147483647!!! Тем не менее, Ваш результат равен ….»
Или если всё в порядке, то программа сообщит пользователю: «Всё ОК. Результат: …»
- 05.09.2016 13:24
- Информатика
- remove_red_eye 14107
- thumb_up 19
Ответы и объяснения 2
//Версия 3.3, сборка 1634 (14.02.2018)
begin
var (n,i):=ReadInteger2('Введите целое число и его степень->');
If n**i>Integer.MaxValue
then WritelnFormat('Внимание! Результат {0}^{1} выходит за пределы типа INTEGER, 2147483647!!! Тем не менее, Ваш результат равен {2}',n,i,biginteger(n**i))
else Println('Всё ОК. Результат:',n**i);
end.
- 06.09.2016 05:23
- thumb_up 19
Внимание! Если программа не работает, обновите версию!
begin
var (a,b):=ReadInteger2('Введите целые основание и показатель степени:');
var bigA:=BigInteger(a);
var r:=bigA**b;
if r>integer.MaxValue then begin
Write($'Внимание! Результат {a}^{b} выходит за пределы типа INTEGER, ');
Writeln(integer.MaxValue, '!!!');
Writeln('Тем не менее, Ваш результат равен ',r)
end
else
Writeln($'Все ОК. Результат {a}^{b}={r}')
end.
Примеры
Введите целые основание и показатель степени: 12 6
Все ОК. Результат 12^6=2985984
Введите целые основание и показатель степени: 5 30
Внимание! Результат 5^30 выходит за пределы типа INTEGER, 2147483647!!!
Тем не менее, Ваш результат равен 931322574615478515625
- 07.09.2016 20:51
- thumb_up 46
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.