Показаны сообщения с ярлыком цикл. Показать все сообщения
Показаны сообщения с ярлыком цикл. Показать все сообщения

среда, 1 мая 2024 г.

Урок 31. Списки

Дата проведения занятия 2.05.24
Информация с сайтов: Phyton для начинающих, Skillbox Media

До сих пор в Phyton вы имели дело с простыми типами данных. К простым типам относятся порядковые (целые, логические, символьные)  и вещественные типы данных

Сегодня мы переходим к изучению списков. Списки относятся к  структурированным типам данных.

Что такое список?

Список (list) — это упорядоченный набор элементов, каждый из которых имеет свой номер, или индекс, позволяющий быстро получить к нему доступ. Нумерация элементов в списке начинается с 0. Индекс определяет положение элемента в списке.

В одном списке одновременно могут лежать данные разных типов — например, и строки, и числа, и списки. То есть можно построить список, элементами которого будут списки.
Списки называют динамическими структурами данных, потому что их можно менять на ходу: удалить один или несколько элементов, заменить или добавить новые.
Очень важно: списки в Python содержат не сами данные, а ссылки на их расположение в памяти компьютера!

Создание списков

  1.  Пустой список. В нем нет ни одного элемента
    a = [ ]

  2.  Список, заданный перечислением элементов. В списке b 3 элемента.
    Элемент с индексом 0 это 5, элемент с индексом 1 это 15, Элемент с индексом 2 это 'cat'
    b = [5, 15, 'cat']

  3.  Список с начальным заполнением. Например, список из 10 нулей
    d = list(10*'0')

  4.  Cписок, построенный с помощью  генератора списков. Генератор списков - способ построить новый список, применяя выражение к каждому элементу последовательности. Генераторы списков очень похожи на цикл for.
b = [i*2 for i in range(20)] # список 20 четных чисел

d = [str(i) for i in range(20)] # список 20 строк


from random import *

a = [randint(2, 8) for i in range(20)] # список 20 случайных чисел

Изменение значения элементов

В программе к элементу списка b с номером i следует обращаться так: b[i]
Можно изменить значение элементов после того, как список создан.
Например
a = [ 1, 2, 3]
print(a) # получим [1, 2, 3]
a[1] = 4 # заменяем значение элемента с индексом 1 на 4 
print(a) # получим  [1, 4, 3]

Встроенные функции для списков

В Python есть четыре функции, которые позволяют узнавать длину списка, сортировать его и возвращать максимальное и минимальное значение.
  1. len()
    Возвращает длину списка:
    a = [5, 7, 3]
    l = len(a) # 3
  2.  sorted()
    Возвращает отсортированный список:
    a = [5, 7, 3]
    a = sorted (a)
    print (a) #  [3, 5, 7]
  3.  min(), max()
    Возвращают наименьший и наибольший элемент списка:
    a = [5, 7, 3, -5, -2]
    print(max(a), min(a)) # 7 -5
В качестве примера напишем программу Py07.py по следующему заданию:
Заполнить список из 10 элементов случайными целыми  числами от 3 до 15.
Отсортировать список
Вывести значения элементов списка на экран в одну строку
Сосчитать сумму элементов,  вывести сумму на экран с новой строки.

from random import * print('Урок 7') a = [randint(3, 15) for i in range(10)] # список из 10 случайных чисел a = sorted(a) # Сортировка списка print(a) # вывод списка
sum = 0 # обнуление суммы
for i in range(10): # поиск суммы sum += a[i] print ('sum=', sum ) # вывод суммы


Работа на ПК в классе:

1. Запустить программу Py07.py, показать учителю
2. Далее работаем по вариантам. Прислать учителю текст программ прикрепленным файлом
Вариант 1. 
  1. Заполнить список из 5 элементов четными значениями, начиная с 2.  Вывести элементы на экран в одну строку. Сосчитать сумму элементов,  вывести сумму на экран с новой строки.  
  2. Заполнить список из 8 элементов случайными целыми  числами от 11 до 18.  Вывести элементы на экран в одну строку. Ввести с экрана произвольный номер элемента списка и вывести значение элемента. Если  такого элемента нет, вывести сообщение "Неверный номер элемента"
Вариант 2.
  1. Заполнить список из 6 элементов нечетными значениями, начиная с 1. Вывести элементы на экран в одну строку. Сосчитать сумму элементов,  вывести сумму на экран с новой строки.
  2. Заполнить список из 12 элементов случайными целыми  числами от 15 до 25. Вывести элементы на экран в одну строку. Ввести с экрана произвольный номер элемента списка и вывести значение элемента. Если  такого элемента нет, вывести сообщение "Неверный номер элемента"

Домашнее задание

Прислать учителю информатики до 15.05.24 до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания.
  1. Заполнить список из 9 элементов степенями 2, начиная с нулевой степени (1). Вывести список в одну строку. Найти сумму элементов списка, вывести с новой строки
  2. Заполнить список  из 15 элементов случайными числами от 9 до 27, Вывести список в одну строку. На следующей строке через запятую вывести индексы (номера) всех элементов, значение которых делится на 3
  3. Тем, кто не сдает ОГЭ по информатике.  Написать программу, которая заполняет список  из 20 элементов случайными числами от 2 до 12, а затем считает, сколько максимумов находится в списке. Вывести список в одну строку. На следующей строке вывести количество максимумов
  4. Тем, кто сдает ОГЭ по информатике. Написать программу, которая  заполняет список  из 20 элементов случайными числами от 10 до 25, а затем считает, сколько вторых минимумов находится в списке. Вывести список в одну строку. На следующей строке вывести количество вторых минимумов

четверг, 25 апреля 2024 г.

Урок 30. Поиск минимума и максимума в последовательности

Дата проведения занятия 25.04.24
В программировании поиск - одна из наиболее часто встречающихся задач невычислительного характера.

Предположим, что мы хотим проанализировать результаты забега на 100 метров.
  • Необходимо выяснить, кто занял первое место.
  • Необходимо выяснить, кто занял 1, 2, 3 место
  • Необходимо выяснить, насколько победитель пробежал быстрее самого слабого участника 
Все эти задачи сводятся к поиску максимального или минимального значения элемента последовательности.
Компьютер не может сравнить разом весь ряд объектов. На каждом шаге он может сравнивать только два объекта. Поэтому в программе необходимо организовать последовательный просмотр элементов последовательности и сравнение значения очередного просматриваемого элемента с некоторым образцом. Самое большое значение в последовательности называется максимумом, самое маленькое - минимумом. Максимумов и минимумов может быть несколько. Значение, которое меньше максимума, но больше всех остальных элементов, называется вторым максимумом. Аналогично, значение, которое больше минимума, но меньше всех остальных элементов, называется вторым минимумом

Пример программы поиска первого максимума

print('Поиск максимума в последовательности из 10 сл чисел от 5 до 20')
from random import *
max_el= 3 # Принудительный макс, самое мин значение
for i in range (10):
    x = randint(5, 20)
    print(x, end=',')
    if x > max_el:
        max_el = x
print ('')
print ('max_el=', max_el)

Пример программы поиска последнего минимума  
print('Поиск минимума в последовательности из 10 сл чисел от 5 до 20')
from random import *
min_el= 25 # Принудительный min, самое max значение
for i in range (10):
    x = randint(5, 20)
    print(x, end=',')
    if x <= min_el:
        min_el = x
print ('')
print ('min_el=', min_el)  

Работа на ПК в классе по группам:

   Написать программу, которая выясняет, насколько максимальное значение больше минимального в последовательности из 15 случайных чисел от 5 до 20

Домашнее Задание

  1. Тем, кто не сдает ОГЭ по информатике, написать программу, которая считает, сколько максимумов находится в последовательности из 20 случайных чисел от 2 до 8
  2. Тем, кто сдает ОГЭ по информатике, написать программу, которая считает, сколько вторых минимумов находится в последовательности из 20 случайных чисел от 10 до 15
 



четверг, 18 апреля 2024 г.

Урок 29. Решение задач с циклами

Дата проведения занятия 18.04.24
Для изучения Python  используем главы из учебника Босовой 3.1, 3.2, 3.4 

Работа на компьютере

Задание 0. Запуск среды IDLE. Подготовка к работе
1. Для запуска оболочки выберите в меню Пуск --> Программы --> Python 3.9  --> IDLE
2.Для создания файла с программой в меню File выберите пункт New File
3. В открывшемся окне наберите текст программы (обе строки набираем с 1 позиции):
 #Урок 5
 print ('Урок 5. Вас приветствует программа Васи Иванова') 
4. Сохраните текст в своей папке под именем Py05_name.py, выбрав пункт меню File --> Save As. Учтите, что name - это ваша фамилия латинскими буквами.
В этом файле будете сохранять программы, написанные на этом уроке.

Задание 1. Для поиска модуля х используется функция abs (x)
Составить блок-схему, написать текст программы, отладить следующие программы
1. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4 . Программа должна вывести одно число: количество чисел, кратных 4. Проверить на числах: 7, затем 4 13 16 25 24 20 17

2. Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 3. Программа получает на вход количество чисел в последовательности, а затем сами числа как случайные от -30 до 20. Программа должна вывести одно число: количество чисел, кратных 3, или сообщение НЕТ, если таких чисел нет

3. Для тех, кто сдает ОГЭ. Напишите программу, которая в последовательности целых чисел определяет максимальное число, кратное 4, но не кратное 7. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4 и не кратное 7. Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: максимальное число, кратное 4, но не кратное 7

Домашнее задание

Прислать учителю информатики до 24.04.24  до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания.
Тема письма: 9 кл ДЗ-5 Питон  <ваша фамилия>

Задание Питон 5. Написать и отладить  программу
В тетради начертить  блок-схемы. К письму присоединить  текст на питоне + скриншот для каждой выполненной программы
 py9hm_5_name. 
1Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 5 и не кратных 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5 и не кратное 3. Программа должна вывести одно число: количество чисел, кратных 5 и не кратных 3.
2. Для тех, кто сдает ОГЭ, задача 1021 с сайта Полякова
   

четверг, 11 апреля 2024 г.

Урок 28. Повторение. Цикл FOR + случайные числа

Дата проведения занятия 11.04.24
Для изучения Python  используем главы из учебника Босовой 3.1, 3.2, 3.4 

Цикл FOR -  цикл с заданным числом повторений, цикл с параметром

Цикл - это одна из трех основных алгоритмических конструкций. Нарисуем цикл в тетради
Цикл - многократное повторение некоторой последовательности действий

Как правило, циклы for используются либо для повторения какой-либо последовательности действий заданное число раз, либо для изменения значения переменной в цикле от некоторого начального значения до некоторого конечного.

Для повторения цикла некоторое заданное число раз n можно использовать цикл for вместе с функцией range

Оператор цикла for может иметь такую форму. Эта запись означает, что переменная i будет изменяться от 0 до n-1, а цикл выполнится n раз
for i in range(n):
  
оператор

Оператор цикла for может иметь и такую форму. Эта запись означает, что переменная i будет изменяться с шагом s от a до n-1. Шаг может быть положительным или отрицательным!

for i in range(a, n, s):
  
оператор

 

Текст от слова for до знака : включительно называется заголовком цикла, а оператор после : - телом цикла. Переменная после слова for называется параметром цикла.
Параметр цикла меняется от начального значения до конечного значения, увеличиваясь всякий раз на единицу.
Для каждого значения переменной-параметра выполняется тело цикла. Однократное повторение тела цикла называется итерацией цикла. Значение параметра цикла после завершения цикла считается неопределенным.

Если для цикла for  начальное значение переменной цикла больше конечного значения, то тело цикла не выполнится ни разу.

Изменение переменной-параметра цикла внутри цикла является логической ошибкой.

Обратите внимание: в  теле цикла стоит ТОЛЬКО ОДИН ОПЕРАТОР!
А что делать, если надо выполнить не ОДИН, а НЕСКОЛЬКО операторов? Они должны составлять одно тело, они должны быть написаны с одинаковым СДВИГОМ относительно заголовка.

Случайные числа

Большинство стандартных функций языка Python разбиты на группы по назначению, и
каждая группа записана в отдельный файл, который называется модулем.
Для работы со случайными числами нужно использовать модуль random

1. Случайное число от 0 до 1, тип результата float: random()
2. Случайное  целое число n, в диапазоне  a ≤ n ≤ b : int randint(a,b)
Пример: для того, чтобы записать в переменную a случайное число в диапазоне от 1 до 10,
можно использовать следующие операторы:
from random import randint
a = randint (1,10)

Работа на компьютере

Задание 0. Запуск среды IDLE. Подготовка к работе
1. Для запуска оболочки выберите в меню Пуск --> Программы --> Python 3.9  --> IDLE
2.Для создания файла с программой в меню File выберите пункт New File
3. В открывшемся окне наберите текст программы (обе строки набираем с 1 позиции):
 #Урок 4
 print ('Урок 4. Вас приветствует программа Васи Иванова') 
4. Сохраните текст в своей папке под именем Py04_name.py, выбрав пункт меню File --> Save As. Учтите, что name - это ваша фамилия латинскими буквами.
В этом файле будете сохранять программы, написанные на этом уроке.
Задание 1
Составить блок-схему, написать текст программы, отладить следующие программы
1. Вывести на экран n раз переменную n и текст: "Я знаю случайные числа"
Запустить программу 5 раз
from random import randint
n = randint (1, 5)
for i in range(n):
      print(n, "Я знаю случайные числа")

2. Ввести целое число a, вывести 5 целых чисел, которые находятся на числовой оси правее числа a, каждое следующее больше на 1

3. Ввести целое число b, вывести 7 целых чисел, которые находятся на числовой оси левее числа b, каждое следующее меньше на 2

4. Для тех, кто сдает ОГЭ, задача 1012 с сайта Полякова

Домашнее задание

Прислать учителю информатики до 17.04.24  до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания.
Тема письма: 9 кл ДЗ-4 Питон  <ваша фамилия>

Задание Питон 4. Написать и отладить  программу
В тетради начертить  блок-схемы. К письму присоединить  текст на питоне + скриншот для каждой выполненной программы
 py9hm_4_name. 
1. Ввести число n (от 1 до 7). Затем в цикле получить  n случайных чисел, найти их сумму, вывести сумму на экран
2. Ввести число m (сколько знаков - неизвестно). В цикле сосчитать, сколько в нем цифр, найти сумму цифр числа
3. Для тех, кто сдает ОГЭ, задача 1013 с сайта Полякова
   

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

Урок 27. Повторение. Ветвление, цикл While

Дата проведения занятия 12.04.22
Часть 1. Теория. Повторение - законспектировать дома
1.1. Оператор ветвления IF
 Оператор ветвления называется также условным оператором, оператором разветвления

Синтаксис (справка по Паскалю, условный оператор)
Оператор имеет полную форму и краткую форму

if  условие then оператор1 else оператор2 { полный оператор, разветвление}

if  условие then оператор { неполный оператор, обход}
Каждое ключевое слово else, для которого выбор соответствующего ему if неоднозначен, должно считаться относящимся к ближайшему if, для которого нет соответствующего ему else.
В случае конструкции вида
if условие1 then 
    if
 условие2 then оператор1
    else оператор2
else всегда относится к ближайшему предыдущему оператору if, для которого ветка else еще не указана.
Условный оператор работает как обычно: 
1.      Проверяется выражение, которое является условием.
2.      Если условие истинно (true), выполняется оператор1, иначе (false) — оператор2.
Операторы  оператор1 и оператор2 никогда не выполняются вместе — работает только один из них. После выполнения условного оператора управление передается на оператор, который следует за условным.
Вместо одного оператора оператор1 может использоваться блок команд begin...end.

1.2. Оператор WHILE - цикл с условием

Синтаксис (справка по Паскалю, цикл с условием)
Оператор цикла while имеет следующую форму:
while условие do
  
оператор
Условие представляет собой выражение логического типа, а оператор после do называется телом цикла. Перед каждой итерацией цикла условие вычисляется, и если оно истинно, то выполняется тело цикла, в противном случае происходит выход из цикла.
Если вместо одного оператора в теле цикла требуется выполнить несколько операторов, то используется блок команд begin...end.
Если условие всегда оказывается истинным, то может произойти зацикливание:
while 2>1 do
    write(1);


Чтобы прервать зациклившуюся программу, выполняющуюся из интегрированной среды в режиме связи с оболочкой, следует использовать комбинацию клавиш Ctrl-F2 или пункт меню Программа/Завершить

Часть 2. Работа на ПК в классе:

Правила оформления программы
  1. Программу следует  начать с комментария, в котором содержится условие задачи и набор тестовых данных. Тестовые данные — это те данные, на которых надо проверять работу программы
  2. Программу следует отформатировать (кнопка 5 справа)
  3. Программу следует сопровождать комментариями по тексту
  4. Программу следует начать с приветствия
writeln ('Вас приветствует программа Петрова П');
Варианты назначает учитель
Вариант 1: Выполнить  If2, While7, Integer1, сохранить в своей папке Pascal  на локальном диске  
Вариант 2: Выполнить  If2, While8, Integer2, сохранить в своей папке Pascal  на локальном диске 
Вариант 3: Выполнить  If10, While9, Integer12, сохранить в своей папке Pascal  на локальном диске

Домашнее задание


  • Законспектировать Часть 1 - Теорию
  • Прислать учителю информатики до 18.04.22 до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Задание находится ЗДЕСЬ-9pas3-hm21

Для тех, кто сдает информатику

Вариант задает учитель. НЕ делаете: № 11, 12, 14. Задания 13.1, 15 сохранить в своей папке, прислать прикрепленным файлом Кустанович Л.Р.
Задание выполнять в тетради, сдать в конце урока

Домашнее задание к 19.04
Задание - практически индивидуальное. 
1. Корсаков М, Подлесных В, Крупский А, Митичкин Г,  Дувалкин Ф выполняют следующее задание.
Из Вариант 33 ( данные  в этой таблице33 и Вариант 34 ( данные  в этой  таблице34 )  делаете: № 14, 15.1 или 15.2. (итого 4 задачи)
Сохранить решение, прислать прикрепленными файлами Кустанович Л.Р. до 22 час 18.04.22
2. Все остальные выполняют следующее задание
Из  Вариант 31 ( данные  в этой таблице31) и Вариант 32 ( данные  в этой таблице32) делаете: № 14, 15.1 или 15.2. (итого 4 задачи)
На 5-4  все 4 задачи
На 3 - только 2 задачи № 14
Сохранить решение, прислать прикрепленными файлами Кустанович Л.Р. до 22 час 18.04.22


воскресенье, 4 апреля 2021 г.

Урок 25. Цикл FOR и случайные числа

Дата проведения занятия 5.04.21

Цикл FOR -  цикл с заданным числом повторений, цикл с параметром

Оператор цикла for имеет одну из двух форм:
for var переменная: тип := начальное значение to конечное значение do
  
оператор
или

for var переменная: тип := начальное значение downto конечное значение do
  
оператор
Текст от слова for до слова do включительно называется заголовком цикла, а оператор после do - телом цикла. Переменная после слова for называется параметром цикла.
Для первой формы цикла с ключевым словом to параметр цикла меняется от начального значения до конечного значения, увеличиваясь всякий раз на единицу, а для второй формы с ключевым словом downto - уменьшаясь на единицу.
Для каждого значения переменной-параметра выполняется тело цикла. Однократное повторение тела цикла называется итерацией цикла. Значение параметра цикла после завершения цикла считается неопределенным.

Если для цикла for ... to начальное значение переменной цикла больше конечного значения или для цикла for ... downto начальное значение переменной цикла меньше конечного значения, то тело цикла не выполнится ни разу.

Изменение переменной-параметра цикла внутри цикла является логической ошибкой.

Заполнение массива

Цикл for ... to или for ... downto удобно использовать для работы с массивами: для заполнения, для поиска элементов с заданными свойствами.
1. Заполнение массива из 10 элементов вводом значений с клавиатуры
    for var i:=10 downto 1 do read ( a[i] ); // заполнение от 10 элемента до 1
2. Заполнение массива из 10 элементов с помощью оператора присваивания
     for var i:=1 to 10 do a[i]:=i+2; // заполнение от 1 элемента до 10
3. Заполнение массива из 10 элементов случайными числами
     randomize; // активизация датчика случайных чисел
     for var i:=1 to 10 do a[i]:=random(50, 100); // каждый элемент - случайное число [ 50;100]
     for var i:=1 to 10 do a[i]:=random(100); // каждый элемент - случайное число [ 0;100)

Работа на ПК в классе:

 Вариант 1, 2 для 9а, 9б; Вариант 3, 4 для 9в 


Домашнее задание

Прислать учителю информатики до 10.04.21  до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Задание находится ЗДЕСЬ-9pas6-hm21.

понедельник, 6 апреля 2020 г.

Урок 26. Поиск минимума и максимума в массиве

Дистанционное обучение. Дата занятия 7.04.20
Срок выполнения задания до 23 час 7.04.20

Последовательный поиск в массиве

В программировании поиск - одна из наиболее часто встречающихся задач невычислительного характера.

Предположим, что в некотором массиве хранятся результаты забега на 100 метров.

  • Необходимо выяснить, кто занял первое место.
  • Необходимо выяснить, кто занял 1, 2, 3 место
  • Необходимо выяснить, насколько победитель пробежал быстрее самого слабого участника 
Все эти задачи сводятся к поиску максимального и   минимального значения элемента массива
Компьютер не может сравнить разом весь ряд объектов. На каждом шаге он может сравнивать только два объекта. Поэтому в программе необходимо организовать последовательный просмотр элементов массива и сравнение значения очередного просматриваемого элемента с некоторым образцом
Как искать минимум или максимум? С чего начать?

Рассмотрим следующий алгоритм поиска минимального элемента .
Раз мы не знаем, какой элемент минимальный, предположим, что это первый элемент массива mas. Назначим min:= mas[1];
Сравним min и 2 элемент. Если 2 элемент меньше, чем min, то изменим  min:= mas[2];
Сравним min и 3 элемент. Если 3 элемент меньше, чем min, то изменим  min:= mas[3];
Будем так действовать, сравнивая все элементы с  min.
В результате в min будет находиться минимальный элемент массива


Примеры более сложных программ: мы запоминаем не сам элемент, а его номер.


Работа на ПК. Срок выполнения задания сегодня, 7.04.20 до 23 час

Выполните  задание на поиск экстремумов (минимума, максимума)
Вариант 1  для 9а; Вариант 2 для 9б; Вариант 3  для 9в 

Как получить скриншот экрана?
  1. Для каждой программы после удачного выполнения сделать снимок экрана.
    Снимок экрана делать тогда, когда на экране есть результат выполнения. 
  2. К письму для каждой программы прикрепить файл программы с расширением .pas + снимок экрана (скриншот) в формате  png или jpg (не BMP!)
  3. Вариант1 получения снимка экрана: надо нажать клавишу print scrin, вставить данные  из буфера в окно программы paint, сохранить в формате png или jpg
  4. Вариант2 получения снимка экрана: найти папку Стандартные-Windows и посмотреть, есть ли в ней инструмент Ножницы. Если есть, то создать фрагмент изображения, обведя с помощью Ножниц  часть экрана, содержащую текст программы и результат работы программы

понедельник, 16 марта 2020 г.

Урок 25. Паскаль. Массивы. Цикл с параметром FOR

Дата проведения занятия 17.03.20

Цикл FOR -  цикл с заданным числом повторений, цикл с параметром

Оператор цикла for имеет одну из двух форм:
for переменная := начальное значение to конечное значение do
  
оператор
или

for переменная := начальное значение downto конечное значение do
  
оператор
Текст от слова for до слова do включительно называется заголовком цикла, а оператор после do - телом цикла. Переменная после слова for называется параметром цикла.
Для первой формы цикла с ключевым словом to параметр цикла меняется от начального значения до конечного значения, увеличиваясь всякий раз на единицу, а для второй формы с ключевым словом downto - уменьшаясь на единицу.
Для каждого значения переменной-параметра выполняется тело цикла. Однократное повторение тела цикла называется итерацией цикла. Значение параметра цикла после завершения цикла считается неопределенным.

Если для цикла for ... to начальное значение переменной цикла больше конечного значения или для цикла for ... downto начальное значение переменной цикла меньше конечного значения, то тело цикла не выполнится ни разу.

Изменение переменной-параметра цикла внутри цикла является логической ошибкой.

Заполнение массива

Цикл for ... to или for ... downto удобно использовать для работы с массивами: для заполнения, для поиска элементов с заданными свойствами.
1. Заполнение массива из 10 элементов вводом значений с клавиатуры
    for i:=10 downto 1 do read ( a[i] ); // заполнение от 10 элемента до 1
2. Заполнение массива из 10 элементов с помощью оператора присваивания
     for i:=1 to 10 do a[i]:=i+2; // заполнение от 1 элемента до 10
3. Заполнение массива из 10 элементов случайными числами
     randomize; // активизация датчика случайных чисел
     for i:=1 to 10 do a[i]:=random(100); // каждый элемент - случайное число [ 0;100 )

Работа на ПК в классе:

 Вариант 1, 2 для 9а; Вариант 3, 4 для 9б, 9в 


Домашнее задание

Прислать учителю информатики до 29.03.20  до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Задание находится ЗДЕСЬ-9pas6-hm20.

понедельник, 2 марта 2020 г.

Урок 23. Повторение. Оператор ветвления IF. Оператор цикла While

Дата проведения занятия 3.03.20
Часть 1. Теория. Повторение - законспектировать дома
1.1. Оператор ветвления IF
 Оператор ветвления называется также условным оператором, оператором разветвления

Синтаксис (справка по Паскалю, условный оператор)
Оператор имеет полную форму и краткую форму

if  условие then оператор1 else оператор2 { полный оператор, разветвление}

if  условие then оператор { неполный оператор, обход}
Каждое ключевое слово else, для которого выбор соответствующего ему if неоднозначен, должно считаться относящимся к ближайшему if, для которого нет соответствующего ему else.
В случае конструкции вида
if условие1 then 
    if
 условие2 then оператор1
    else оператор2
else всегда относится к ближайшему предыдущему оператору if, для которого ветка else еще не указана.
Условный оператор работает как обычно: 
1.      Проверяется выражение, которое является условием.
2.      Если условие истинно (true), выполняется оператор1, иначе (false) — оператор2.
Операторы  оператор1 и оператор2 никогда не выполняются вместе — работает только один из них. После выполнения условного оператора управление передается на оператор, который следует за условным.
Вместо одного оператора оператор1 может использоваться блок команд begin...end.

1.2. Оператор WHILE - цикл с условием

Синтаксис (справка по Паскалю, цикл с условием)
Оператор цикла while имеет следующую форму:
while условие do
  
оператор
Условие представляет собой выражение логического типа, а оператор после do называется телом цикла. Перед каждой итерацией цикла условие вычисляется, и если оно истинно, то выполняется тело цикла, в противном случае происходит выход из цикла.
Если вместо одного оператора в теле цикла требуется выполнить несколько операторов, то используется блок команд begin...end.
Если условие всегда оказывается истинным, то может произойти зацикливание:
while 2>1 do
    write(1);


Чтобы прервать зациклившуюся программу, выполняющуюся из интегрированной среды в режиме связи с оболочкой, следует использовать комбинацию клавиш Ctrl-F2 или пункт меню Программа/Завершить

Часть 2. Работа на ПК в классе:

Правила оформления программы
  1. Программу следует  начать с комментария, в котором содержится условие задачи и набор тестовых данных. Тестовые данные — это те данные, на которых надо проверять работу программы
  2. Программу следует отформатировать (кнопка 4 справа)
  3. Программу следует сопровождать комментариями по тексту
  4. Программу следует начать с приветствия
writeln ('Вас приветствует программа Петрова П');
Варианты назначает учитель
Вариант 1: Выполнить  If2, While7, Integer1, сохранить в своей папке Pascal  на локальном диске  
Вариант 2: Выполнить  If2, While8, Integer2, сохранить в своей папке Pascal  на локальном диске 
Вариант 3: Выполнить  If10, While9, Integer12, сохранить в своей папке Pascal  на локальном диске

Домашнее задание


  • Законспектировать Часть 1 - Теорию
  • Прислать учителю информатики до 8.03.20 до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Задание находится ЗДЕСЬ-9pas3-hm20

среда, 3 апреля 2019 г.

Урок 26. 9А, 9Б. Паскаль. Массивы. Цикл с параметром FOR

Дата проведения занятия 4.04.19

Цикл FOR -  цикл с заданным числом повторений, цикл с параметром

Оператор цикла for имеет одну из двух форм:
for переменная := начальное значение to конечное значение do
  
оператор
или

for переменная := начальное значение downto конечное значение do
  
оператор
Текст от слова for до слова do включительно называется заголовком цикла, а оператор после do - телом цикла. Переменная после слова for называется параметром цикла.
Для первой формы цикла с ключевым словом to параметр цикла меняется от начального значения до конечного значения, увеличиваясь всякий раз на единицу, а для второй формы ключевым словом downto - уменьшаясь на единицу.
Для каждого значения переменной-параметра выполняется тело цикла. Однократное повторение тела цикла называется итерацией цикла. Значение параметра цикла после завершения цикла считается неопределенным.

Если для цикла for ... to начальное значение переменной цикла больше конечного значения или для цикла for ... downto начальное значение переменной цикла меньше конечного значения, то тело цикла не выполнится ни разу.

Изменение переменной-параметра цикла внутри цикла является логической ошибкой.

Заполнение массива

Цикл for ... to или for ... downto удобно использовать для работы с массивами: для заполнения, для поиска элементов с заданными свойствами.
1. Заполнение массива из 10 элементов вводом значений с клавиатуры
    for i:=10 downto 1 do read ( a[i] ); // заполнение от 10 элемента до 1
2. Заполнение массива из 10 элементов с помощью оператора присваивания
     for i:=1 to 10 do a[i]:=i+2; // заполнение от 1 элемента до 10
3. Заполнение массива из 10 элементов случайными числами
     randomize; // активизация датчика случайных чисел
     for i:=1 to 10 do a[i]:=random(100); // каждый элемент - случайное число [ 0;100 )

Работа на ПК в классе:

 Вариант 1, 2 для 9а; Вариант 3, 4 для 9б 




Домашнее задание

Прислать учителю информатики до 9.04.19  до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Задание находится ЗДЕСЬ.