М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Rogonova
Rogonova
14.07.2020 12:48 •  Информатика

Задача №13(а) стр. 143 (полное решение исходные и выходные данные, связь, алгоритм, программа)


Задача №13(а) стр. 143 (полное решение исходные и выходные данные, связь, алгоритм, программа)

👇
Открыть все ответы
Ответ:
arushikir
arushikir
14.07.2020
1. Обращаем внимание, что в заданной системе счисления 25+22=50.
Ноль - прекрасная подсказка! При поразрядном сложении в младшем разряде 5+2=0. На самом же деле 5+2 были равны 10, ноль записали, а единица пошла в следующий разряд. Но мы знаем, что 5+2 =7 в десятичной системе, следовательно основание системы равно семи, потому что в любой системе счисления ноль с переносом единицы получается тогда, когда число равно основанию этой системы. Именно поэтому ноль - прекрасная подсказка.
Итак, основание системы счисления 7.
Проверим. 25₇+22₇=50₇ - как и следовало ожидать, все верно.

2. Мальчиков в кассе 25₇ = 2·7¹+5·7⁰ = 14+5 = 19₁₀
Девочек в классе 22₇ = 2·7¹+2·7⁰ = 14+2 = 16₁₀
Всего учащихся 50₇ = 5·7¹+0·7⁰ = 35₁₀
Проверка: 19+16=35
4,7(3 оценок)
Ответ:
MrHezbollah
MrHezbollah
14.07.2020

1. Отладка программы

2. Локализация ошибок

Локализация - это нахождение места ошибки в программе.

В процессе поиска ошибки мы обычно выполняем одни и те же действия:

прогоняем программу и получаем результаты;

сверяем результаты с эталонными и анализируем несоответствие;

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

проверяем текст программы, исправляем ошибку, если мы нашли ее правильно.

обнаружения ошибки:

Аналитический - имея достаточное представление о структуре программы, просматриваем ее текст вручную, без прогона.

Экспериментальный - прогоняем программу, используя отладочную печать и средства трассировки, и анализируем результаты ее работы.

Оба по-своему удобны и обычно используются совместно.

3. Принципы отладки

Принципы локализации ошибок:

Большинство ошибок обнаруживается вообще без запуска программы - просто внимательным просматриванием текста.

Если отладка зашла в тупик и обнаружить ошибку не удается, лучше отложить программу. Когда глаз "замылен", эффективность работы упорно стремится к нулю.

Чрезвычайно удобные вс средства - это отладочные механизмы среды разработки: трассировка, промежуточный контроль значений. Можно использовать даже дамп памяти, но такие радикальные действия нужны крайне редко.

Экспериментирования типа "а что будет, если изменить плюс на минус" - нужно избегать всеми силами. Обычно это не дает результатов, а только больше запутывает процесс отладки, да еще и добавляет новые ошибки.

4. Методы отладки

Силовые методы

- Использование дампа (распечатки) памяти.

Это интересно с познавательной точки зрения: можно досконально разобраться в машинных процессах. Иногда такой подход даже необходим - например, когда речь идет о выделении и высвобождении памяти под динамические переменные с использованием недокументированных возможностей языка. Однако, в большинстве случаев мы получаем огромное количество низкоуровневой информации, разбираться с которой - не пожелаешь и врагу, а результативность поиска - исчезающе низка.

- Использование отладочной печати в тексте программы - произвольно и в большом количестве.

Получать информацию о выполнении каждого оператора тоже небезынтересно. Но здесь мы снова сталкиваемся со слишком большими объемами информации. Кроме того, мы здорово захламляем программу добавочными операторами, получая малочитабельный текст, да еще рискуем внести десяток новых ошибок.

- Использование автоматических средств отладки - трассировки с отслеживанием промежуточных значений переменых.

это самый распространенный отладки. Не нужно только забывать, что это только один из и применять всегда и везде только его - часто невыгодно.

Сложности возникают, когда приходится отслеживать слишком большие структуры данных или огромное их число. Еще проблематичнее трассировать проект, где выполнение каждой подпрограммы приводит к вызову пары десятков других. Но для небольших программ трассировки вполне достаточно.

С точки зрения "правильного" программирования силовые методы плохи тем, что не поощряют анализ задачи.

Суммируя свойства силовых методов, получаем практические советы:

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

- использовать отладочную печать в небольших количества и "по делу";

- оставить дамп памяти на самый крайний случай.

Метод дедукции - от общего к частному.

Выдвигаем гипотезу, которая может объяснить ошибку, пусть и не полностью. Затем при тестов эта гипотеза проверяется и доказывается.

Обратное движение по алгоритму.

Отладка начинается там, где впервые встретился неправильный результат. Затем работа программы прослеживается (мысленно или при тестов) в обратном порядке, пока не будет обнаружено место возможной ошибки.

Метод тестирования.

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

var

a, b, c: real;

begin

writeln('Программа находит значение максимального из трех введенных чисел');

write('Введите первое число '); readln(a);

write('Введите второе число '); readln(b);

write('Введите третье число '); readln(c);

if (a>b)and(a>c) then

writeln('Наибольшим оказалось первое число ',a:8:2)

else if (b>a)and(<strong>a</strong>>c) then

writeln('Наибольшим оказалось второе число ',b:8:2)

else

writeln('Наибольшим оказалось третье число ',<strong>b</strong>:8:2);

end.

Обе выделенные ошибки можно обнаружить невооруженным глазом: первая явно допущена по невнимательности, вторая - из-за того, что скопированную строку не исправили.

1) Аварийная печать - вывод сообщений о ненормальном завершении

4,8(45 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ