Полный набор заданий можно скачать здесь

Задания 1-10

Задание 14

При обработки данных в электронных таблицах применяются встроенные функции – заранее определенные формулы. При выполнении табличных расчетов в заданиях С19 достаточно часто используются функции:

❗Все ячейки для функции выделяются зажатой кнопкой мыши, либо прописываются вручную, на английской языке.

Список функций:

название применение дополнительно
МИН(число1;число2;…) выбор минимальго числа из диапазона  
МАКС(число1;число2;…)  выбор максимального числа из диапазона  
СРЗНАЧ(число1;число2;…) среднее значение/среднее арифметическое чисел из выбранного диапазона  
СУММ(число1;число2;…)  сумма выбранных ячеек/чисел  
По условию
СЧЁТЕСЛИ(диапазон;критерий)  подсчет КОЛИЧЕСТВА элементов по какому-либо условию
  • диапазон - указываете где ищете 
  • критерий - условие отбора/поиска
СУММЕСЛИ(диапазон;критерий;диапазон_суммирования) сумма данные по выбранному условию
  • диапазон — ячейки среди которых выбирается условие, а не те, что суммируются!
  • Критерий — условия для выбора, среди диапазона
  • Диапазон_суммирования — ячейки для суммирования;не совпадает и "Диапазон"
СРЗНАЧЕСЛИ(диапазон;критерий;диапазон_суммирования) среднее значение по условию
  • диапазон — ячейки среди которых выбирается условие, а не те, что усредняются!
  • Критерий — условия для выбора, среди диапазона
  • Диапазон_суммирования — ячейки для суммирования;не совпадает и "Диапазон"
Более одного условия:
СЧЁТЕСЛИМН(диапазон1;критерий1;диапазон2;критерий2;..) подсчет КОЛИЧЕСТВА элементов по двум и более условиям  
СУММЕСЛИМН(диапазон;критерий;диапазон_суммирования) суммирование по двум и более условиям

используется если необходимо, например, подсчитать сумму баллов по географии, среди тех, кто сдал информатику (1 диапазон), больше чем на 75 баллов (1 условие) и тех, кто получил по физике (2 диапазон) не менее 60 баллов (2 условие). Диапазон_суммирования будет столбец географии

СРЗНАЧЕСЛИ(диапазон;критерий;диапазон_суммирования) среднее значение по двум и более аналогично суммеслимн

Редко используемые функции:

И(логическое_значение1;логическое_значение2;…) - возвращает значение ИСТИНА, если все аргументы имеют значение ИСТИНА; возвращает значение ЛОЖЬ, если хотя бы один аргумент имеет значение ЛОЖЬ.

Аргументы функции - логические выражения, принимающие значения либо истина, либо ложь.

Примеры: =И(2+2=4;2+3=5) – истина(1), =И(1<A2;A2<100), =И(ИСТИНА; ЛОЖЬ) – ложь(0)

ИЛИ(логическое_значение1;логическое_значение2;…) - возвращает значение ИСТИНА, если хотя бы один из аргументов имеет значение ИСТИНА; возвращает ЛОЖЬ, если все аргументы имеют значение ЛОЖЬ.

Аргументы функции - логические выражения, принимающие значения либо истина, либо ложь.

Примеры: =ИЛИ(1+1=1;2+2=5) – ложь(0), =ИЛИ(A2>12;B2<100)

НЕ(логическое_значение) - меняет на противоположное логическое значение своего аргумента. Функция НЕ используется в тех случаях, когда необходимо быть уверенным в том, что значение не равно некоторой конкретной величине.

Аргумент функции - логическое выражение, принимающие значения либо истина, либо ложь.

Примеры: =НЕ(1+1=2) – ложь(0), =НЕ(10<8) – истина(1), =НЕ(С1=5)

ЕСЛИ(логическое_выражение;значение1;значение2) - используется при проверке условий для значений и формул.

Здесь логическое_выражение – любое выражение, построенное с помощью операций отношения и логических операций, принимающее значения ИСТИНА или ЛОЖЬ.

Если логическое_выражение истинно, то ячейка, в которую записана условная функция, принимает значение1, если ложно - значение2.

Примеры: =ЕСЛИ(D3>270;«принят»;«не принят») – решение о зачислении в университет (в текстовом формате) при сумме баллов выше 270

=ЕСЛИ(И(В2>90;С2>85);1;0) - решение о зачислении на медицинский факультет (в числовом формате) при оценке по химии (столбец В) выше 90 и оценке по биологии (столбец С) выше 85

Задание 15

Задание 20 состоит из двух частей - 15.1 и 15.2 решить нужно только одну из них!

Задание 15.1 - составление алгоритма для исполнителя "Робот"

        Ис­пол­ни­тель Робот умеет пе­ре­ме­щать­ся по ла­би­рин­ту, на­чер­чен­но­му на плос­ко­сти, раз­би­той на клет­ки. Между со­сед­ни­ми (по сто­ро­нам) клет­ка­ми может сто­ять стена, через ко­то­рую Робот прой­ти не может. У Ро­бо­та есть де­вять ко­манд. Че­ты­ре ко­ман­ды — это ко­ман­ды-при­ка­зы:вверх вниз влево впра­во

       При вы­пол­не­нии любой из этих ко­манд Робот пе­ре­ме­ща­ет­ся на одну клет­ку со­от­вет­ствен­но: вверх ↑ вниз ↓, влево ← , впра­во →. Если Робот по­лу­чит ко­ман­ду пе­ре­дви­же­ния сквозь стену, то он раз­ру­шит­ся. Также у Ро­бо­та есть ко­ман­даза­кра­сить, при ко­то­рой за­кра­ши­ва­ет­ся клет­ка, в ко­то­рой Робот на­хо­дит­ся в на­сто­я­щий мо­мент.

Ещё че­ты­ре ко­ман­ды — это ко­ман­ды про­вер­ки усло­вий. Эти ко­ман­ды про­ве­ря­ют, сво­бо­ден ли путь для Ро­бо­та в каж­дом из четырёх воз­мож­ных на­прав­ле­ний:

свер­ху сво­бод­но  снизу сво­бод­но  слева сво­бод­но  спра­ва сво­бод­но

Эти ко­ман­ды можно ис­поль­зо­вать вме­сте с усло­ви­ем «если», име­ю­щим сле­ду­ю­щий вид:

если усло­вие то

по­сле­до­ва­тель­ность ко­манд

все

Здесь усло­вие — одна из ко­манд про­вер­ки усло­вия. По­сле­до­ва­тель­ность ко­манд — это одна или не­сколь­ко любых ко­манд-при­ка­зов. На­при­мер, для пе­ре­дви­же­ния на одну клет­ку впра­во, если спра­ва нет стен­ки, и за­кра­ши­ва­ния клет­ки можно ис­поль­зо­вать такой ал­го­ритм:

если спра­ва сво­бод­но то

впра­во

за­кра­сить

все

В одном усло­вии можно ис­поль­зо­вать не­сколь­ко ко­манд про­вер­ки усло­вий, при­ме­няя ло­ги­че­ские связ­ки и, или, не,на­при­мер:

если (спра­ва сво­бод­но) и (не снизу сво­бод­но) то

впра­во

все

Для по­вто­ре­ния по­сле­до­ва­тель­но­сти ко­манд можно ис­поль­зо­вать цикл «пока», име­ю­щий сле­ду­ю­щий вид:

нц пока усло­вие

по­сле­до­ва­тель­ность ко­манд

кц

На­при­мер, для дви­же­ния впра­во, пока это воз­мож­но, можно ис­поль­зо­вать сле­ду­ю­щий ал­го­ритм:

нц пока спра­ва сво­бод­но

впра­во

кц

Задание 15.2 - короткий алгоритм на языке программирования

Алгоритм использует базовые, простейшие конструкции языка Pascal - циклы, редко ветвления. Массивы для решения этих задач не нужны!

Задачи можно разделить на два типа: с использованием цикла for, с циклом while.

Подробнее с циклами можно познакомиться здесь

Цикл for

В этих задачах нам вводится сначала количество чисел.

Затем вводятся сами числа и мы их анализируем - удовлетворяют ли они условию из задачи.

Давайте вспомним базовые проверки:

  1. Проверка делимости. Мы говорим что одно число делится на другое, тогда когда остаток от деления равен 0.Чтобы проверить делимость числа k, например, на 5  мы должны спросить if k%5==0:  Подробнее о конструкции if можно посмотреть здесь
  2. Проверка на что оканчивается число. В этом случае нам нужна последняя цифра в числе, то есть нам нужен остаток от деления на 10. Например, 34%10=4. Таким образом, чтобы проверить оканчивается ли число на 1 напишем: if k%10==1:
  3. Трехзначонсть/двухзначность и так далее. Чтобы определить является ли число двузначным, достаточно, чтобы оно было больше 9 и меньше 100, то есть на языке Python: if k>9 and k<100: Аналогично трехзначное число:if k>99 and k<1000:
  4. Проверка цифры на которое число начинается. Здесь надо вспомнить, как связаны разряды числа  - единицы, десятки, сотни... и 10,100 и т.д. Ведь чтобы проверить начинается ли двузначное число на 4, надо поделить его на 10 и спросить равна ли целая часть 4: if k//10==4: и не забудем проверить его двузначность, то есть: if k>9 and k<100 and k//10==4:

​​​​​​​

Цикл while

Цикл while является циклом с предусловием. В заголовке цикла находится логическое выражение. Если оно возвращает true, то тело цикла выполняется, если false – то нет.

Когда тело цикла было выполнено, то ход программы снова возвращается в заголовок цикла. Условие выполнения тела снова проверяется (находится значение логического выражения). Тело цикла выполнится столько раз, сколько раз логическое выражение вернет true. Поэтому очень важно в теле цикла предусмотреть изменение переменной, фигурирующей в заголовке цикла, таким образом, чтобы когда-нибудь обязательно наступала ситуация false. Иначе произойдет так называемое зацикливание, одна из самых неприятных ошибок в программировании.

var

    i, n: integer;

begin

    write ('Количество знаков: ');

    readln (n);

    i := 1;

    while i <= n do begin

        write ('(*) ');

        i := i + 1

    end;

readln

end.