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

Требовалось написать программу, которая определяет, имеется ли среди введенных с клавиатуры положительных целых чисел, а и b хотя бы одно четное. Была написана следующая программа:

var a, b: integer;

begin

readln(a, b);

a := a mod 2;

if a > 0 then b := b mod 2;

if b > 0 then

writeln ('четных чисел нет')

else

writeln ('четное число есть');

end.

Известно, что программа написана с ошибками. Последовательно выполните три задания:

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

Показать ответ
Ответ:
Zaminaej
Zaminaej
02.09.2022 10:58
Во-первых - я перепишу программу:const    N = 10;var    A: array[1..N, 1..N] of integer;    B: array[1..N] of integer;    S, i, j: integer;begin    for i := 1 to N do        for j := 1 to N do            A[i, j] := random(100);        for i := 1 to N do        begin            for j := 1 to N do                Write(A[i, j], ' ');            Writeln();        end;        for i := 1 to N do        begin            S := 0;            for j := 1 to N do                S := S + A[i, j];                B[i] := S;        end;        for i := 1 to N do        Write(B[i], ' ');end.

Я ничего в ней не изменял кроме того, что оформил, как подобает. Начнём разбор:

На строках 1-2 мы объявляем неизменную переменную, которая хранит в себе число. За что отвечает число - разберём ниже.

На строках 3-6 мы объявляем массив A с размерностью [1..N, 1..N] (вот, что значит та неизменная переменная. Неизменная, потому что массивы в обычном Pascal имеют неизменное количество элементов) и массив B с размерностью [1..N]. Также объявляем переменную S, i и j. Могу сказать сразу, переменные с именами i и j и типом integer создаются исключительно для работы с итерациями и циклами.

На строках 8-10 мы используем двойной цикл, чтобы заполнить наш двумерный массив псевдослучайными числами от 0 до 100 не включая, то есть от 0 до 99 (так работает функция random).

На строках 12-17 мы выводим данный массив.

На строках 19-25 заключён смысл всей программы. Для начала стоит вспомнить, что такое двумерный массив (матрица). Переменная i в нашем случае обозначает строку, а j, соответственно, столбец. Первый цикл с переменной i останавливается на определённой строке, а второй цикл с переменной j проходит все элементы данной строки. Можем заметить, что во втором цикле фигурирует запись сложения переменной S со значением массива. Эта запись говорит о том, что с цикла в переменную S заносится сумма всех элементов i-той строки. Поясню:

Пусть N (размерность массива) = 3, i - номер итерации, S - сумма элементов i-й строки, а B - массив, хранящий сумму i-й строки.

Первый столбец - номер строки, второй - элементы массива, третий - сумма.

i = 1  | 1 2 3  | S = 1 + 2 + 3 = 6    | B[1] = 6i = 2 | 4 5 6 | S = 4 + 5 + 6 = 15  | B[2] = 15i = 3 | 7 8 9  | S = 7 + 8 + 9 = 24 | B[3] = 24

Значение переменной S помещается в массив B, который как раз-таки хранит сумму элементов каждой из строк.

На строках 27-28 мы выводим массив B.

Если что-то непонятно, то спрашивайте в комментариях.

0,0(0 оценок)
Ответ:
ya20032017
ya20032017
29.01.2021 11:26

МАССИВ —
а) область машинной памяти, в которой могут размещаться совокупности значений одного и того же типа

б) набор переменных, объединенных общим назначением и имеющих одно имя.

Элемент массива— отдельная переменная, входящая в массив.

Размерность массива— количество элементов, которое содержит массив.

Индекс — числовой или буквенный указатель, которым снабжаются математические выражения для того, чтобы отличать их друг от друга.

Индекс элемента массива — номер элемента в массиве.

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

При назначении массиву имени соблюдаются те же требования, какие предъявляются к именам переменных простых типов.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота