1. Напишите, что выведет эта программа при вводе числа 6.
2. Приведите пример такого числа x, что, несмотря на ошибки, программа печатает правильный ответ.
3. Найдите все ошибки в этой программе (их может быть одна или несколько). Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк. Для каждой ошибки:
1) выпишите строку, в которой сделана ошибка;
Достаточно указать ошибки и способ их исправления для одного языка программирования. Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.
Решение использует запись программы на Паскале. Допускается использование программы на четырех других языках.
1. Программа выведет число 1.
2. Замечание для проверяющего: Программа напечатает правильный ответ при x, равном натуральной степени двойки. Т. е. при x= 2; 4; 8; 16; 32; 64; 128; 512. Любое из этих значений является правильным ответом на п.2.
Как Понизить VAR в CS:GO | 15 САМЫХ ЭФФЕКТИВНЫХ СПОСОБОВ ПОНИЗИТЬ ВАР В КС ГО 2022
3. Первая ошибка. Неверный подсчет количества цифр. Программа считает все значащие цифры, а не только единицы.
Строка с ошибкой:
Возможный вариант исправления:
cnt:=cnt + x mod 2;
4. Вторая ошибка. Неверная обработка числа x в цикле. Строка с ошибкой:
Возможный вариант исправления:
Обратите внимание! В задаче требовалось выполнить четыре действия:
1) указать, что выведет программа при конкретных входных данных (числе x);
2) указать пример входных данных, при которых программа работает правильно;
Каждое из действий 3 и 4 считается выполненным, если:
а) правильно указана строка с ошибкой;
б) указан такой новый вариант строки, что при исправлении второй ошибки получается правильная программа
а) выполнены три из четырёх необходимых действий. Ни одна верная строка не указана в качестве ошибочной;
Для того, чтобы найти ошибку, нужно поставить в соответствие друг другу все части условного оператора if и else.
Помним, что часть else относится к ближайшему if. При этом наличие части else не обязательно.
Кроме того, часто присутствует ошибка при вводе или выводе. Обязательно нужно проверить, та ли информация выводится на экран.
Особого внимания требует инициализация переменных.
Формат книги не позволяет рассмотреть все основные типы задач 2 части, рассмотрим лишь те, которые встречались на проверочных и экзаменационных работах последних двух лет.
На обработку поступает положительное целое число, не превышающее 10 9 . Нужно написать программу, которая выводит на экран сумму цифр этого числа, меньших 7. Если в числе нет цифр, меньших 7, требуется на экран вывести 0. Программист написал программу неправильно. Ниже эта программа для Вашего удобства приведена на пяти языках программирования.
Тестирование Программного обеспечения с Михаилом Портновым — Первый урок
Источник: dr-web.ru
Найдите ошибки в записи программы. Перепишите программу в исправленном виде.
Строчка «program Умножение;» спорная т.к. некоторые компиляторы поддерживают кириллицу, например PascalABC, но лучше использовать английские буквы.»var A, B, C: boolean;» boolean — это логический тип переменных True False, либо 0 1, для других чисел не подходит. Я остановился на типе «real», чтобы можно было вводить не только целые числа, но и дробные, например 2,5После каждого оператора необходимо ставить «;», кроме того, что перед «end» там ставить не обязательно.В паскале «=» используется как оператор сравнения, а оператор присваивания выглядит так: «:=», поэтому исправим тут ошибку «C = A * B»Текст в «writeln()» пишется в одинарных кавычках, исправляем ошибку «writeln (Произведение введенных Вами чисел равно , C)»И так вот готовая исправленная программаProgram multi;Var A,B,C:real;Begin Read(A,B); C:=A*B; Writeln(‘Произведение введенных Вами чисел равно ‘,C)End.
Добавить свой ответ Ответить на вопрос
Последние вопросы
Источник: znanija.site
Найдите ошибки в записи программы. Перепишите программу в исправленном виде. prograM Умножение; var A, B, C: boolean; begin read (A, B) C = A * B writeln (Произведение введенных Вами чисел равно , C) end.
M Умножение; var A, B, C: boolean; begin read (A, B) C = A * B writeln (Произведение введенных Вами чисел равно , C) end.
Также наши пользователи интересуются:

⭐⭐⭐⭐⭐ Лучший ответ на вопрос «Найдите ошибки в записи программы. Перепишите программу в исправленном виде. progra» от пользователя Всеволод Павлов в разделе Информатика. Задавайте вопросы и делитесь своими знаниями.
Открой этот вопрос на телефоне — включи камеру и наведи на QR-код!
Источник: shpora.org