Главная страница

МЕТОДИЧЕСКАЯ РАЗРАБОТКА ЗАДАНИЕ КИМ 17 КЕГЭ. Методическая разработка


Скачать 110.54 Kb.
НазваниеМетодическая разработка
Дата15.02.2023
Размер110.54 Kb.
Формат файлаdocx
Имя файлаМЕТОДИЧЕСКАЯ РАЗРАБОТКА ЗАДАНИЕ КИМ 17 КЕГЭ.docx
ТипМетодическая разработка
#939274
страница5 из 7
1   2   3   4   5   6   7

4. Задачи, в которых полезно применять пользовательские функции


4.1. Количество цифр в числе





ФУНКЦИЯ, КОТОРАЯ ОПРЕДЕЛЯЕТ, СКОЛЬКО РАЗ В ЧИСЛЕ ВСТРЕЧАЕТСЯ ЦИФРА 6

function K_6(n: integer): integer;


Заголовок функции.

K_6 – имя функции, n– формальный параметр.

vark: integer;


Раздел описаний.

k – локальная переменная – видна только в теле процедуры

begin





Тело функции

k := 0;

Вычисление значения функции

while n>0 do

begin

if n mod 10 = 6 then k:=k+1;

n:= n div 10

end;

K_6:=k;


Конструкцияимя функции := значение;

ОБЯЗАТЕЛЬНЫЙ ЭЛЕМЕНТ ОПИСАНИЯ ФУНКЦИИ

end;





В теле основной программы функция может вызываться:

  1. Для присваивания значения целочисленной (в данном случае) переменной:

m := K_6(t);или m := K_6(458626);. Здесь t (целочисленная (в данном случае) глобальная переменная, значение которой известно на момент вызова функции) и числовая константа 458626 – являются фактическими параметрами, без которых вызов функции невозможен.

  1. Для использования в операторе ветвления для проверки условия: ifK_6(i)>3 then

  2. В качестве аргумента при использовании стандартных функций вывода:

writeln(K_6(i));

Замечание. Когда вы пишете программу, в которой предполагаете использовать функцию, напишите сначала тестовую программку, в теле которой будет единственный оператор: вывод на экран значения функции для некоторой константы. Меняя константу, протестируйте правильность работы функции. Например, так:

programtest;

functionK_6(n: integer): integer;

vark: integer;

begin

k := 0;

whilen>0 do

begin

ifn mod 10 = 6 then k:=k+1;

n:= n div 10

end;

K_6:=k;

end;
begin

writeln(K_6(1245663));

end.
№ 4176. (Е. Джобс) Рассматривается множество целых чисел, принадлежащих числовому отрезку [3399; 225599], которые одновременно удовлетворяют следующим условиям:

– в пятеричной записи числа младший разряд равен 3,

– в семеричной записи числа нет нулей.

Найдите наибольшее из таких чисел и их количество. В ответе укажите два числа – сначала количество найденных чисел, затем наибольшее найденное число.

Решение.


programN_17_3727;

Заголовок программы



vari, max, count: integer;
functionK_0(n: integer): integer;

vark: integer;

begin

k:=0;

whilen>0 do

begin

ifn mod 7 = 0 then k:= k+1;

n := n div 7

end;

K_0 := k;

end;




Раздел описаний



begin

count:= 0; max:= 0;

fori:=3399 to 225599 do

if(i mod 5 = 3) and (K_0(i) = 0)

then

begin

count:=count+1;

ifi>max then max:=i;

end;

writeln(count, ' ', max)

end.



Тело программы



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

Ответ:19086 225593
№ 3845. (П. Волгин) Рассматривается множество целых чисел, принадлежащих числовому отрезку [255; 4095], которые удовлетворяют следующим условиям:

а) Число в троичной записи содержит одну цифру «1» или две цифры «0»;

б) Число делится на 2 и 5, но не делится на 20.

Найдите количество таких чисел и их сумму. В ответе запишите сначала количество, а затем сумму.

Ответ:60 133320
№ 2742. (Е. Джобс) Рассматривается множество целых чисел, принадлежащих числовому отрезку [333666; 666999], которые удовлетворяют следующим условиям: а) в числе есть не менее двух цифр 7; б) число кратно 17. Найдите наибольшее из таких чисел и их количество.

Ответ:666774 1538
Упражнение 2. Напишите и протестируйте функции, которые а) подсчитывает общее количество цифр в десятичной записи числа; б) подсчитывает общее количество цифр в двоичной записи числа.
№ 2341. (В.Н. Шубинкин) Рассматривается множество целых чисел, принадлежащих числовому отрезку [1000, 70000], которые имеют 5 знаков в восьмеричной и 6 знаков в пятеричной записи, а их запись в шестнадцатеричной системе счисления заканчивается на 'FA'. Найдите количество таких чисел и максимальное из них. В ответе запишите два целых числа: сначала количество, затем максимальное число.

Ответ:45 15610
№ 2321. (А. Куканова) Рассматривается множество целых чисел, принадлежащих числовому отрезку [1000; 9999], запись которых в шестеричной системе имеет не более 5 цифр и закачивается на 13 или 14. Найдите количество таких чисел и максимальное из них.

Ответ:376 7750

1   2   3   4   5   6   7


написать администратору сайта