среда, 28 декабря 2022 г.

Цикл с параметром (Цикл FOR)

Публикую справочную информацию для тех, кто что-то пропустил.

Операторы цикла используются для реализации многократного выполнения одной или нескольких команд. Различают 3 типа циклов:
  • цикл с параметром;
  • цикл с предусловием;
  • цикл с постусловием.
Все 3 типа реализованы операторами языка Pascal.

Цикл с параметром
Цикл с параметром используется тогда, когда заранее известно количество повторений и шаг постоянен. Этот тип цикла реализуется в языке Pascal оператором For, который имеет 2 варианта записи:
1) For параметр цикла:=начальное значение to конечное значение do тело цикла
2) For параметр цикла:=начальное значение downto конечное значение do тело цикла
Параметр цикла – переменная целого типа;
начальное и конечное значения – выражения того же типа;
тело цикла – простой или составной оператор.
- Цикл повторяется, пока значение параметра лежит в интервале между начальным и конечным значениями
- При каждом повторении цикла значение параметра автоматически изменяется: в первом варианте увеличивается, а во втором уменьшается на 1.
- Значение параметра цикла можно использовать, но нельзя изменять внутри цикла.

Примеры:
1. Программа выводит на экран числа от 1 до 7 (в столбик)
Program prog1;
var i:integer;
begin
  for i:=1 to 7 do writeln(i);
end.

2. Программа выводит на экран числа от 7 до 1
Program prog2;
var i:integer;
begin
  for i:=7 downto 1 do writeln(i);
end.

3. Программа вычисляет S=1+2+…+N, где N - введенное целое число
Program sum1;
var i,n,s:integer;
begin
  write('n=');
  readln(n);
  s:=0;
  for i:=1 to n do s:=s+i;
  writeln('s=',s);
end.

А вот еще несколько примеров программ. Для сдающих ОГЭ рекомендую обязательно внимательно изучить решение последней задачи. Для закрепления можно самостоятельно решить задачи с последнего слайда


понедельник, 19 декабря 2022 г.

Готовимся к ОГЭ-2

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

Выполним второй тест, состоящий из аналогичных заданий теста1 + задание на программирование (условный оператор, который мы уже изучили)

Далее читаем внимательно!

Тест можно будет выполнить один раз в строго отведенное время:
23.12.22 (пятница) с 20.30 до 22.00 https://inf-oge.sdamgia.ru/test?id=15808741
24.12.22 (суббота) с 10.00 до 12.00 https://inf-oge.sdamgia.ru/test?id=15788041
На выполнение работы отведено не более 40 минут!
Тем кто захочет написать программу в задаче №15.1 для исполнителя Робот, время на написание программы будет дано дополнительно (не более 45 минут, после окончания теста).

Задачу №15.1. для исполнителя Робот можно решать в среде Кумир (Не забудьте предварительно установить ее на свой ПК!!!). Файл с программой прошу прислать на мою почту не позднее 45 минут после завершния остальных заданий теста.

Задание 6 (обязательное задание для тех, кто выбрал/хочет выбрать информатику!). Решить задания пробного теста. Для этого перейти по ссылке, зарегистрироваться на сайте (можно осуществить вход через аккаунт ВКонтакте, после входа проверьте чтобы в профиле была НАСТОЯЩАЯ фамилия). Срок выполнения теста - до 12.45 24 декабря. Факт прохождения теста прошу подтвердить комментарием в блоге. 

Обязательно сохраните записи решения на листке. Его, при возниконовении вопросов, надо будет сдать мне, или воспользоваться им для поиска ошибок в решении.

P/S. Разрешаю пока пользоваться справочными материалами. Категорически не рекомендую "списывать друг с друга", ведь вы проверяете этой работой СВОИ силы и СВОИ способности! После того как работу выполнят все учащиеся я опубликую результаты. УДАЧИ!))

пятница, 16 декабря 2022 г.

Налево пойдешь - коня потеряешь, направо пойдешь...

В нашем случае не все так трагично и  никто не пострадает :).  Речь же пойдет об условном операторе.

Для осуществления ветвления в программе используется условный оператор.
Он имеет полную и неполную формы:

Полная форма:
If  условие Then оператор1 Else оператор2

Неполная форма: If  условие Then оператор1

Условный оператор выполняется следующим образом:
  1. проверяется условие
  2. если условие выполнено, выполняется оператор1
  3. если условие не выполнено, в полной форме выполняется оператор2, а в неполной форме никаких действий не выполняется
  4. осуществляется переход к следующей команде
Условие может быть простым или сложным.
Простое условие – сравнение значений двух выражений с помощью знаков сравнения:
< – меньше, > – больше, <= – меньше или равно, >=   – больше или равно, =   – равно, <> – неравно

Например:
1) X>=3;       2) A<>B;      3)   sqr(c)=sqr(a)+sqr(b)

Сложное условие – несколько простых условий, соединенных логическими операциями:
Not – не,    And – и,    Or – или,     Xor – исключающее или

Простые условия, входящие в состав сложного, записываются в скобках.
Например:
1) (X>3) and (Y<=17) and (Z<>2) выполнено, если выполнены все простые условия
2) (X<2) or (X=8) or (X>=12) выполнено, если выполнено хоть одно из простых условий
3) (X=7) xor (Y=9) xor (Z=1) выполнено, если выполнено ровно одно из простых условий

Операторы 1 и 2 могут быть простыми и составными. Простой оператор – один оператор.
Составной оператор – несколько операторов, заключенных в операторные скобки (Begin … End).

Примеры:
1. Программа выводит на экран большее из   двух целых чисел
Program max;
Var a,b,m:integer;
Begin
  Write(’Введите 2 числа’);
  Readln(a,b);
  If a>b then writeln(a, ’большее’)
   else writeln(b, ’большее’)
End.

2. Программа вычисляет значение функции  - квадратный корень из х
Program func1;
Var x,f:real;
Begin
  Write(’x=’);
  Readln(x);
  If x>=0 then begin
                 f:=sqrt(x);
                 Writeln(’f=’,f:7:2)
               end
        else Writeln(’Корня из отриц. числа не  существует’)
End.

3. Программа вычисляет значение функции
Program func2;
Var x,f:real;
Begin
  Write(’x=’);
  Readln(x);
  If x<2 then f:=-x
         else if x=2 then f:=0
                     else f:=x;
  Writeln(’f=’,f:7:2)
End.

Решение других задач на применение условного оператора можно увидеть в презентации >>>

четверг, 8 декабря 2022 г.

Оператор присваивания. Линейные программы

Оператор присваивания

Значения переменных можно изменять в процессе выполнения программы с помощью оператора присваивания. Команда присваивания имеет следующий вид:
переменная: =выражение
Оператор присваивания выполняется следующим образом:
1. вычисляется значение выражения
2. переменная получает это значение
При этом тип выражения (тип выражения определяется типом его значения) должен быть совместим с типом переменной. Например, числовой переменной нельзя присвоить в качестве значения символ или строку символов и наоборот; переменной символьного типа Char нельзя присвоить в качестве значения строку символов, а переменной типа Integer – значение, тип которого Real и т.д. Но при этом обратное возможно: переменной типа String можно присвоить значение типа Char, а переменной типа Real – значение типа Integer.

Выражение может включать в себя константы, переменные, знаки операций, функции, скобки.
Некоторые операции:
+ сложение
вычитание
* умножение
/ деление
div деление нацело (например, значением выражения 7div4 будет 1)
mod остаток от деления нацело (например, значением выражения 7mod4 будет 3)

Некоторые функции:
Abs(x) модуль х
Cos(x) косинус х,    Sin(x) – синус х
Sqr(x) квадрат х, Sqrt(x) – корень из х
Random случайное число из отрезка [0, 1], Random(x) – случайное число из отрезка [0, х]

Обратите внимание, что аргументы  функций записываются в скобках!

Например,
1. a:=14.2     – переменной а присваивается значение 14,2
2. k:=’слово’   – переменной k присваивается значение ’слово’
3. x:=x–4          – значение переменной x уменьшается на 4
4. c:=a+b    – переменной c присваивается сумма значений переменных (или констант) a и b
5. с:=sin(sqr(a+b))  – переменной c присваивается значение синуса от квадрата суммы         переменных  (или констант) a и b
6. x1:=(–b+sqrt(sqr(b)–4*a*c))/(2*a)
        x2:=(–b–sqrt(sqr(b)–4*a*c))/(2*a)
 – значения переменных x1 и x2 вычисляются по формуле корней квадратного уравнения

вторник, 6 декабря 2022 г.

Закрепляем электронные таблицы

Уважаемые учащиеся!

Мы с вами недавно на практических частях урока повторили электронные таблицы. Давайте закрепим, выполнив домашнее задание. 

Задача: В электронную таблицу занесли данные о тестировании учеников по выбранным ими предметам.

        A         B                 C                         D

1 округ фамилия    предмет                 балл

2 C         Ученик 1 Физика                 240

3 В         Ученик 2 Физкультура         782

4 Ю         Ученик 3 Биология         361

5 СВ         Ученик 4 Обществознание 377

В столбце A записан код округа, в котором учится ученик; в столбце B  — фамилия, в столбце C  — выбранный учеником предмет; в столбце D  — тестовый балл. Всего в электронную таблицу были занесены данные по 1000 учеников.

 

Выполните задание.

Скачайте и откройте файл с данной электронной таблицей. На основании данных, содержащихся в этой таблице, ответьте на два вопроса и выполните задание.

1.  Определите, сколько учеников, которые проходили тестирование по информатике, набрали более 600 баллов (Подсказка: можно использовать "Фильтр", для его применения необходимо щелкнуть по ячейке с названием столбца и нажать кнопку с изображением воронки). Ответ запишите в ячейку H2 таблицы.

2.  Найдите средний тестовый балл учеников, которые проходили тестирование по информатике. Ответ запишите в ячейку H3 таблицы с точностью не менее двух знаков после запятой.

3.  Постройте круговую диаграмму, отображающую соотношение числа участников из округов с кодами «В», «Зел» и «З». Левый верхний угол диаграммы разместите вблизи ячейки G6.


Задание 5. В таблицах гугл или электронных таблицах (MS-Excel или Open Office) выполните задание. ВАЖНО: из вашей таблицы должно быть четко видно, как именно вы получили ответ (просто число, записанное в ячейках по заданиям 1 и 2, не будет засчитываться). Файл назовите своей фамилией и загрузить через форму загрузки для своего класса. Срок выполения работы: до 20.00 10 декабря. Обратите внимание,что для получения оценки "отлично", необходимо не только верно выполнить все задания, но и успеть в число первых 10 (из класса), загрузивших файлы с работой. Факт загрузки можно отразить в комментариях к данному посту.


Форма загрузки для 9А


Форма загурзки для 9Э