
Паскаль! Помогите пожалуйста! Дан целочисленный массив из 40 элементов. Элементы массива могут
принимать целые значения от 1 до 10000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество элементов массива, восьмеричная запись которого содержит ровно две цифры, причем первая (старшая) цифра меньше второй (младшей). сonst N=40; var a: array [1..N] of integer; i, j, k: longint; begin for i:=1 to N do readln(a[i]); … end.

Ответы на вопрос

Для наивной реализации, можно проверить что число лежит в диапазоне [0o10; 0o77] или в десятичной [8; 63]
Потом проверить что a[i] mod 8 > a[i] div 8
Если число соответствует всем условиям, увеличиваем счётчик
Потом выводим значение count



Для нахождения количества элементов массива, восьмеричная запись которых содержит ровно две цифры, причем первая цифра меньше второй, можно следовать следующему алгоритму:
Создать переменную для подсчета количества элементов, удовлетворяющих условию (назовем ее, например, count) и инициализировать ее значением 0.
Для каждого элемента массива выполнить следующие шаги: a. Перевести текущий элемент в восьмеричную систему счисления. b. Проверить, что восьмеричная запись содержит ровно две цифры. c. Проверить, что первая цифра меньше второй. d. Если оба условия выполняются, увеличить значение переменной count на 1.
Вывести значение переменной count, которое и будет искомым количеством элементов.
Приведу пример реализации алгоритма на языке Pascal:
pascalconst N = 40; var a: array [1..N] of integer; i, count: integer; octStr: string; begin count := 0; writeln('Введите ', N, ' целых чисел от 1 до 10000:'); for i := 1 to N do readln(a[i]); for i := 1 to N do begin // Переводим текущий элемент в восьмеричную систему счисления octStr := OctStr(a[i]); // Проверяем, что восьмеричная запись содержит ровно две цифры if Length(octStr) = 2 then begin // Проверяем, что первая цифра меньше второй if StrToInt(octStr[1]) < StrToInt(octStr[2]) then Inc(count); end; end; writeln('Количество элементов массива с нужными свойствами: ', count); end.
Пожалуйста, обратите внимание, что в данном примере используется встроенная функция OctStr
, которая преобразует целое число в его восьмеричное представление в виде строки. Это позволяет удобно работать с восьмеричной записью чисел и проверять условия, описанные в алгоритме.


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