Паскаль авс. вводится n целых чисел. написать программу подсчета количества чисел, в записи которых содержится цифра 8. при этом требуется написать функцию вида: function yes8(x: integer): boolean.
Эта функция принимает один входной параметр типа integer (целое число) и должна возвращать значение типа boolean (истина или ложь).
2. Теперь напишем код внутри функции yes8, чтобы проверить, содержит ли число x цифру 8:
function yes8(x: integer): boolean;
var
digit: integer;
begin
// Проверяем каждую цифру числа x
while (x <> 0) do
begin
digit := x mod 10; // Получаем последнюю цифру числа x
if (digit = 8) then // Если цифра равна 8, возвращаем истину
begin
yes8 := true;
exit; // Прерываем выполнение функции
end;
x := x div 10; // Удаляем последнюю цифру числа x
end;
yes8 := false; // Если ни одна цифра не равна 8
end;
В этом коде мы используем цикл while для проверки каждой цифры числа x. Если мы найдем цифру 8, то функция возвращает true и прерывает свое выполнение. В противном случае, если ни одна цифра не равна 8, функция возвращает false.
3. Главная часть программы. Для подсчета количества чисел, в которых содержится цифра 8, нам нужно ввести исходные данные с клавиатуры и вызвать функцию yes8.
var
count, n, i, num: integer;
begin
count := 0; // Счетчик чисел, в которых содержится цифра 8
write('Введите количество чисел: ');
readln(n);
for i := 1 to n do
begin
write('Введите число ', i, ': ');
readln(num);
if yes8(num) then // Проверяем, содержит ли число 8
count := count + 1; // Увеличиваем счетчик на 1
end;
writeln('Количество чисел, в которых содержится цифра 8: ', count);
end.
В этой части мы сначала объявляем переменные count, n, i, num. Затем с помощью цикла for запрашиваем n чисел от пользователя и вызываем функцию yes8 для каждого числа. Если функция yes8 возвращает true, увеличиваем счетчик count на 1. В конце выводим значение count на экран.
Это полное решение задачи. Программа будет запрашивать количество чисел и сами числа от пользователя, а затем выведет количество чисел, в которых содержится цифра 8.
1. В начале программы объявим функцию yes8:
function yes8(x: integer): boolean;
begin
end;
Эта функция принимает один входной параметр типа integer (целое число) и должна возвращать значение типа boolean (истина или ложь).
2. Теперь напишем код внутри функции yes8, чтобы проверить, содержит ли число x цифру 8:
function yes8(x: integer): boolean;
var
digit: integer;
begin
// Проверяем каждую цифру числа x
while (x <> 0) do
begin
digit := x mod 10; // Получаем последнюю цифру числа x
if (digit = 8) then // Если цифра равна 8, возвращаем истину
begin
yes8 := true;
exit; // Прерываем выполнение функции
end;
x := x div 10; // Удаляем последнюю цифру числа x
end;
yes8 := false; // Если ни одна цифра не равна 8
end;
В этом коде мы используем цикл while для проверки каждой цифры числа x. Если мы найдем цифру 8, то функция возвращает true и прерывает свое выполнение. В противном случае, если ни одна цифра не равна 8, функция возвращает false.
3. Главная часть программы. Для подсчета количества чисел, в которых содержится цифра 8, нам нужно ввести исходные данные с клавиатуры и вызвать функцию yes8.
var
count, n, i, num: integer;
begin
count := 0; // Счетчик чисел, в которых содержится цифра 8
write('Введите количество чисел: ');
readln(n);
for i := 1 to n do
begin
write('Введите число ', i, ': ');
readln(num);
if yes8(num) then // Проверяем, содержит ли число 8
count := count + 1; // Увеличиваем счетчик на 1
end;
writeln('Количество чисел, в которых содержится цифра 8: ', count);
end.
В этой части мы сначала объявляем переменные count, n, i, num. Затем с помощью цикла for запрашиваем n чисел от пользователя и вызываем функцию yes8 для каждого числа. Если функция yes8 возвращает true, увеличиваем счетчик count на 1. В конце выводим значение count на экран.
Это полное решение задачи. Программа будет запрашивать количество чисел и сами числа от пользователя, а затем выведет количество чисел, в которых содержится цифра 8.