В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
морпехРФ
морпехРФ
12.12.2022 13:26 •  Информатика

Требовалось написать программу, которая для введённого натурального числа 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. найдите в программе все ошибки (их может быть одна или несколько). для каждой ошибки выпишите строку, в которой она допущена, и эту же строку в исправленном виде.

Ответ:
Иришка9Класс
Иришка9Класс
07.10.2020 23:30
1)   При вводе n = 10 будет выведено 2, хотя на самом деле должно быть 4 (1, 2, 5, 10).
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).
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?