Вопрос по информатике:
Требовалось написать программу, которая для введённого натурального числа n выводит общее количество его различных делителей, включая 1 и n. К сожалению, ученик написал программу с ошибками:
Pascal
var n, j, k : integer;
begin
read(n);
j := 2;
k := 0;
while j * j < n do begin
if n mod j = 0 then
k := k + 2;
j := j + 1
end;
if j * j = n then
k := k + 3;
write(k)
end.
Последовательно выполните следующее.
1. Напишите, что выведет эта программа при вводе числа 10.
2. Укажите два наименьших значения входной переменной n, при вводе которого программа выведет правильный ответ. Укажите это ответ в каждом случае.
3. Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.
Трудности с пониманием предмета? Готовишься к экзаменам, ОГЭ или ЕГЭ?
Воспользуйся формой подбора репетитора и занимайся онлайн. Пробный урок - бесплатно!
- 06.04.2016 06:18
- Информатика
- remove_red_eye 4222
- thumb_up 43
Ответы и объяснения 1
2) При n = 4 или n = 9 будет выведен правильный ответ при n = 4, k = 3,
при n = 9, к = 3
3) Ошибка в строке k := 0; должно быть k:=2; - для делителей 1 и n
Ошибка в строке k := k + 3; должно быть k:=k+1, если число n - полный квадрат, то добавляется делитель кор.квадр(n).
- 07.04.2016 05:32
- thumb_up 15
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.