SlideShare a Scribd company logo
1 of 12
Download to read offline
Проект "Журнал"
Применение циклов, 1 урок.
Компонент Memo
Циклы .. это что?
   Цикл - это многократно повторяющаяся
последовательность команд, которая для
удобства программиста структурируется и
выполняется по определенным правилам.
   Как уже было сказано, запись фрагмента кода
программы в виде цикла никак не облегчает
задачу компилятору (и, соответственно,
компьютеру) и применяется программистами
исключительно из-за их лени.
   Существует два основных типа: безусловный и
условный циклы. Условный, в свою очередь,
имеет подтипы.
Три основных цикла
Цикл повторения с параметром    Цикл повторяется, пока параметр цикла
(безусловный)                  i не перейдет через свое конечное
                               значение m. Каждый раз к параметру
For i:=n To m Do begin         цикла i добавляется 1 и происходит
 тело цикла;                   проверка.
end;                           Цикл повторяется m-n+1 раз

Цикл "Пока" (условный)          Пока выполняется условие,
                               выполняется тело цикла.
While(условие) do begin         Чтобы цикл не был бесконечным,
 тело цикла;                   переменная, входящая в условие,
end;                           должна изменяться в теле цикла

                               Тело цикла выполняется до тех пор,
Цикл "До" (условный)
                               пока не выполнится условие.
Repeat                          Чтобы цикл не был бесконечным,
 тело цикла;                   переменная, входящая в условие,
Until(условие);                должна изменяться в теле цикла
Иллюстрация к циклам
   Представьте бочку для воды объемом 20 ведер. Вам
предлагают ее наполнить. Можно:
● Тупо принести и вылить 20 ведер воды
   (цикл For). А вдруг бочка наполовину
   заполнена? Что делать, воду утаптывать?
● Пойти вначале посмотреть, насколько
   заполнена бочка и носить воду, пока она не станет
   полной (цикл While)
● Но нас же не зря попросили бочку наполнить! По
   пути берем ведро с водой, выливаем в бочку и
   только потом смотрим, нужно ли пойти еще раз
   (цикл Repeat-Until)
   Что Вы выберете?
Цикл повторения с параметром
for i:=n to m do begin
 команда 1; команда 2;
 ..
end;

Пример: запись в 20 строк Memo случайных чисел,
значения которых в диапазоне 1-12
 

for i:=0 to 19 do begin
 a:=random(12)+1;
 Memo1.Lines.Add(IntToStr(a));
end;
Цикл "Пока"
i:=n;
While(i<=m) do begin
  команда1; команда2;
  ..
  i+=1;
end
    Команды 1 и 2 выполняются, пока i не
перейдет через m. За изменением i вынужден
следить программист.
    Важно: разные способы записи счетчика:
k:=k+3;       inc(k,3);    k+=3;
Цикл "До"
i:=n;
repeat
  команда1; команда2;
  ..
  i+=1;
until (i=m);
    Проверка в конце цикла, поэтому его тело
выполнится как минимум один раз. За
изменением i, как и договаривались, следит
программист. Это мой любимый цикл.
Проект "Журнал"
                         Создать проект с тремя
                        Memo, в одну из которых
                        можно вносить фамилии
                        учеников, а в две других
                        вносятся номера по
                        порядку и
                        сгенерированные
                        случайные оценки
                        от 1 до 12.

 После заполнения оценками можно вычислить
среднюю оценку по всем ученикам.
Кнопка "Оценки"
var
 mark, i:Integer;
begin
 Memo2.Clear; Memo3.Clear;
 for i:=0 to Memo1.Lines.Count-1 do begin
  mark:=random(12)+1;
  Memo2.Lines.Add(IntToStr(mark));
  Memo3.Lines.Add(IntToStr(i+1));
 end;
end;
Кнопка "Средняя"
var
  i,mark,summa,max:integer;
  srednee:real;
begin
  summa:=0;
  for i:=0 to Memo2.Lines.Count-1 do begin
    mark:=StrToInt(Memo2.Lines[i]);
    summa:=summa+mark;
  end;
  srednee:=summa/(Memo2.Lines.Count);
  Edit1.Text:=FloatToStr(srednee);
end;
 
Событие OnCreate и прочее
begin
  Randomize;
  Memo3.ReadOnly:=true;
end;
 
Не забудьте сделать кнопки "Сброс" и
"Выход"
Задание
1. Создайте проект "журнал", добавив три колоки
   оценок и создав 4 колонку, в которую будут
   выводиться средние оценки по каждому
   ученику
2. Создайте тест на 6 вопросов разных типов для
   раздела информатики - программирование
  a. По 2 каждого типа: один из многих, многие из
     многих, точный ответ.
  b. Вес каждого вопроса должен быть различен, но
     общая оценка - 12 баллов
  c. Вопросы для теста желательно иллюстрировать
     рисунками.

More Related Content

Viewers also liked

Announcements, 12/4/11
Announcements, 12/4/11Announcements, 12/4/11
Announcements, 12/4/11CLADSM
 
Exclusive bejeweled prom dresses
Exclusive bejeweled prom dressesExclusive bejeweled prom dresses
Exclusive bejeweled prom dressespromdresses
 
Прием платежей с использованием платежных карт через Интернет
Прием платежей с использованием платежных карт через Интернет Прием платежей с использованием платежных карт через Интернет
Прием платежей с использованием платежных карт через Интернет Assem Maratova
 
Les 8 Griekse kolonisatie
Les 8   Griekse kolonisatieLes 8   Griekse kolonisatie
Les 8 Griekse kolonisatieSchonkerenT
 
Mängime lauamänge inglise keeles
Mängime lauamänge inglise keelesMängime lauamänge inglise keeles
Mängime lauamänge inglise keelessveta8
 
Well come to greenext international
Well come to greenext internationalWell come to greenext international
Well come to greenext internationalarieldkonslet
 
Nuestros Servicios
Nuestros ServiciosNuestros Servicios
Nuestros ServiciosiMarketing
 
кр 2 покази топограф анат пер чер ст
кр 2 покази топограф анат пер чер сткр 2 покази топограф анат пер чер ст
кр 2 покази топограф анат пер чер стagusya
 
Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...
Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...
Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...kimtange1
 
16 agenda setmana 02 6è b 2015-16
16 agenda setmana 02 6è b  2015-1616 agenda setmana 02 6è b  2015-16
16 agenda setmana 02 6è b 2015-166sise
 
Ultima presentazione TOTALE
Ultima presentazione TOTALEUltima presentazione TOTALE
Ultima presentazione TOTALEAlice Mazzera
 

Viewers also liked (20)

Pc
PcPc
Pc
 
We didn't watch tv
We didn't watch tvWe didn't watch tv
We didn't watch tv
 
BHP Szkolenie
BHP SzkolenieBHP Szkolenie
BHP Szkolenie
 
Announcements, 12/4/11
Announcements, 12/4/11Announcements, 12/4/11
Announcements, 12/4/11
 
Exclusive bejeweled prom dresses
Exclusive bejeweled prom dressesExclusive bejeweled prom dresses
Exclusive bejeweled prom dresses
 
Прием платежей с использованием платежных карт через Интернет
Прием платежей с использованием платежных карт через Интернет Прием платежей с использованием платежных карт через Интернет
Прием платежей с использованием платежных карт через Интернет
 
Focus Group
Focus GroupFocus Group
Focus Group
 
Les 8 Griekse kolonisatie
Les 8   Griekse kolonisatieLes 8   Griekse kolonisatie
Les 8 Griekse kolonisatie
 
Networ
NetworNetwor
Networ
 
Mängime lauamänge inglise keeles
Mängime lauamänge inglise keelesMängime lauamänge inglise keeles
Mängime lauamänge inglise keeles
 
2nd quarter results
2nd quarter results2nd quarter results
2nd quarter results
 
Well come to greenext international
Well come to greenext internationalWell come to greenext international
Well come to greenext international
 
My transferable skills
My transferable skillsMy transferable skills
My transferable skills
 
Sono STATO Io - Case HIstory
Sono STATO Io - Case HIstorySono STATO Io - Case HIstory
Sono STATO Io - Case HIstory
 
Nuestros Servicios
Nuestros ServiciosNuestros Servicios
Nuestros Servicios
 
кр 2 покази топограф анат пер чер ст
кр 2 покази топограф анат пер чер сткр 2 покази топограф анат пер чер ст
кр 2 покази топограф анат пер чер ст
 
Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...
Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...
Slideshare salgsledelse i en globaliseret verden salget 2020 undersøgelses re...
 
16 agenda setmana 02 6è b 2015-16
16 agenda setmana 02 6è b  2015-1616 agenda setmana 02 6è b  2015-16
16 agenda setmana 02 6è b 2015-16
 
Ultima presentazione TOTALE
Ultima presentazione TOTALEUltima presentazione TOTALE
Ultima presentazione TOTALE
 
MeshTake
MeshTakeMeshTake
MeshTake
 

Similar to циклы 1 урок

Similar to циклы 1 урок (20)

ветвление.условный оператор.циклы
ветвление.условный оператор.циклыветвление.условный оператор.циклы
ветвление.условный оператор.циклы
 
операторы цикла в Visual basic
операторы цикла в Visual basicоператоры цикла в Visual basic
операторы цикла в Visual basic
 
Цикл
Цикл Цикл
Цикл
 
Loop
LoopLoop
Loop
 
Loop
LoopLoop
Loop
 
итерация и рекурсия
итерация и рекурсияитерация и рекурсия
итерация и рекурсия
 
forFor
forForforFor
forFor
 
Программирование циклов
Программирование цикловПрограммирование циклов
Программирование циклов
 
Presentation lab3-sem3-c++
Presentation lab3-sem3-c++Presentation lab3-sem3-c++
Presentation lab3-sem3-c++
 
22 pascal urok_6
22 pascal urok_622 pascal urok_6
22 pascal urok_6
 
циклы1
циклы1циклы1
циклы1
 
циклы1
циклы1циклы1
циклы1
 
алгоритмическая структура «цикл»
алгоритмическая структура «цикл»алгоритмическая структура «цикл»
алгоритмическая структура «цикл»
 
циклы
циклыциклы
циклы
 
циклы
циклыциклы
циклы
 
циклы
циклыциклы
циклы
 
алгоритм циклический
алгоритм циклическийалгоритм циклический
алгоритм циклический
 
02 if for
02 if for02 if for
02 if for
 
Циклы
ЦиклыЦиклы
Циклы
 
Базовые операторы Java
Базовые операторы JavaБазовые операторы Java
Базовые операторы Java
 

More from Олег Адаменко

порядок проведення зно 2013
порядок проведення зно 2013порядок проведення зно 2013
порядок проведення зно 2013Олег Адаменко
 
психологічна підготовка абітурієнтів до зно 2013
психологічна підготовка абітурієнтів до зно 2013психологічна підготовка абітурієнтів до зно 2013
психологічна підготовка абітурієнтів до зно 2013Олег Адаменко
 
урок № 2 продовження реєстрація для участі у зно
урок № 2 продовження реєстрація для участі у зноурок № 2 продовження реєстрація для участі у зно
урок № 2 продовження реєстрація для участі у зноОлег Адаменко
 
урок № 2 користування сайтами уцояо і орцояо
урок № 2 користування сайтами уцояо і орцояоурок № 2 користування сайтами уцояо і орцояо
урок № 2 користування сайтами уцояо і орцояоОлег Адаменко
 
урок № 1 зно як складова тестології
урок № 1 зно як складова тестологіїурок № 1 зно як складова тестології
урок № 1 зно як складова тестологіїОлег Адаменко
 
методичні рекомендації щодо проведення уроку зно – 2013
методичні рекомендації щодо проведення уроку зно – 2013методичні рекомендації щодо проведення уроку зно – 2013
методичні рекомендації щодо проведення уроку зно – 2013Олег Адаменко
 
урок № 3 робота з тестовими зошитами і бланками відповідей
урок № 3 робота з тестовими зошитами і бланками відповідейурок № 3 робота з тестовими зошитами і бланками відповідей
урок № 3 робота з тестовими зошитами і бланками відповідейОлег Адаменко
 
Интеграция и синхронизация облачных хранилищ
Интеграция и синхронизация облачных хранилищИнтеграция и синхронизация облачных хранилищ
Интеграция и синхронизация облачных хранилищОлег Адаменко
 
особенности строения и жизнедеятельности рыб
особенности строения и жизнедеятельности рыбособенности строения и жизнедеятельности рыб
особенности строения и жизнедеятельности рыбОлег Адаменко
 
мастер класс технологии веб-2
мастер класс технологии веб-2мастер класс технологии веб-2
мастер класс технологии веб-2Олег Адаменко
 

More from Олег Адаменко (17)

компетенц ї педрада
компетенц ї педрадакомпетенц ї педрада
компетенц ї педрада
 
порядок проведення зно 2013
порядок проведення зно 2013порядок проведення зно 2013
порядок проведення зно 2013
 
психологічна підготовка абітурієнтів до зно 2013
психологічна підготовка абітурієнтів до зно 2013психологічна підготовка абітурієнтів до зно 2013
психологічна підготовка абітурієнтів до зно 2013
 
урок № 2 продовження реєстрація для участі у зно
урок № 2 продовження реєстрація для участі у зноурок № 2 продовження реєстрація для участі у зно
урок № 2 продовження реєстрація для участі у зно
 
урок № 2 користування сайтами уцояо і орцояо
урок № 2 користування сайтами уцояо і орцояоурок № 2 користування сайтами уцояо і орцояо
урок № 2 користування сайтами уцояо і орцояо
 
урок № 1 зно як складова тестології
урок № 1 зно як складова тестологіїурок № 1 зно як складова тестології
урок № 1 зно як складова тестології
 
методичні рекомендації щодо проведення уроку зно – 2013
методичні рекомендації щодо проведення уроку зно – 2013методичні рекомендації щодо проведення уроку зно – 2013
методичні рекомендації щодо проведення уроку зно – 2013
 
урок № 3 робота з тестовими зошитами і бланками відповідей
урок № 3 робота з тестовими зошитами і бланками відповідейурок № 3 робота з тестовими зошитами і бланками відповідей
урок № 3 робота з тестовими зошитами і бланками відповідей
 
Интеграция и синхронизация облачных хранилищ
Интеграция и синхронизация облачных хранилищИнтеграция и синхронизация облачных хранилищ
Интеграция и синхронизация облачных хранилищ
 
Habrahabr ru
Habrahabr ruHabrahabr ru
Habrahabr ru
 
хрящевые рыбы
хрящевые рыбыхрящевые рыбы
хрящевые рыбы
 
особенности строения и жизнедеятельности рыб
особенности строения и жизнедеятельности рыбособенности строения и жизнедеятельности рыб
особенности строения и жизнедеятельности рыб
 
онтогенез
онтогенезонтогенез
онтогенез
 
мастер класс технологии веб-2
мастер класс технологии веб-2мастер класс технологии веб-2
мастер класс технологии веб-2
 
Мир-my Труд!
Мир-my Труд!Мир-my Труд!
Мир-my Труд!
 
1
11
1
 
курсы интел
курсы интелкурсы интел
курсы интел
 

циклы 1 урок

  • 2. Циклы .. это что? Цикл - это многократно повторяющаяся последовательность команд, которая для удобства программиста структурируется и выполняется по определенным правилам. Как уже было сказано, запись фрагмента кода программы в виде цикла никак не облегчает задачу компилятору (и, соответственно, компьютеру) и применяется программистами исключительно из-за их лени. Существует два основных типа: безусловный и условный циклы. Условный, в свою очередь, имеет подтипы.
  • 3. Три основных цикла Цикл повторения с параметром Цикл повторяется, пока параметр цикла (безусловный) i не перейдет через свое конечное значение m. Каждый раз к параметру For i:=n To m Do begin цикла i добавляется 1 и происходит тело цикла; проверка. end; Цикл повторяется m-n+1 раз Цикл "Пока" (условный) Пока выполняется условие, выполняется тело цикла. While(условие) do begin Чтобы цикл не был бесконечным, тело цикла; переменная, входящая в условие, end; должна изменяться в теле цикла Тело цикла выполняется до тех пор, Цикл "До" (условный) пока не выполнится условие. Repeat Чтобы цикл не был бесконечным, тело цикла; переменная, входящая в условие, Until(условие); должна изменяться в теле цикла
  • 4. Иллюстрация к циклам Представьте бочку для воды объемом 20 ведер. Вам предлагают ее наполнить. Можно: ● Тупо принести и вылить 20 ведер воды (цикл For). А вдруг бочка наполовину заполнена? Что делать, воду утаптывать? ● Пойти вначале посмотреть, насколько заполнена бочка и носить воду, пока она не станет полной (цикл While) ● Но нас же не зря попросили бочку наполнить! По пути берем ведро с водой, выливаем в бочку и только потом смотрим, нужно ли пойти еще раз (цикл Repeat-Until) Что Вы выберете?
  • 5. Цикл повторения с параметром for i:=n to m do begin команда 1; команда 2; .. end; Пример: запись в 20 строк Memo случайных чисел, значения которых в диапазоне 1-12   for i:=0 to 19 do begin a:=random(12)+1; Memo1.Lines.Add(IntToStr(a)); end;
  • 6. Цикл "Пока" i:=n; While(i<=m) do begin команда1; команда2; .. i+=1; end Команды 1 и 2 выполняются, пока i не перейдет через m. За изменением i вынужден следить программист. Важно: разные способы записи счетчика: k:=k+3; inc(k,3); k+=3;
  • 7. Цикл "До" i:=n; repeat команда1; команда2; .. i+=1; until (i=m); Проверка в конце цикла, поэтому его тело выполнится как минимум один раз. За изменением i, как и договаривались, следит программист. Это мой любимый цикл.
  • 8. Проект "Журнал" Создать проект с тремя Memo, в одну из которых можно вносить фамилии учеников, а в две других вносятся номера по порядку и сгенерированные случайные оценки от 1 до 12. После заполнения оценками можно вычислить среднюю оценку по всем ученикам.
  • 9. Кнопка "Оценки" var mark, i:Integer; begin Memo2.Clear; Memo3.Clear; for i:=0 to Memo1.Lines.Count-1 do begin mark:=random(12)+1; Memo2.Lines.Add(IntToStr(mark)); Memo3.Lines.Add(IntToStr(i+1)); end; end;
  • 10. Кнопка "Средняя" var i,mark,summa,max:integer; srednee:real; begin summa:=0; for i:=0 to Memo2.Lines.Count-1 do begin mark:=StrToInt(Memo2.Lines[i]); summa:=summa+mark; end; srednee:=summa/(Memo2.Lines.Count); Edit1.Text:=FloatToStr(srednee); end;  
  • 11. Событие OnCreate и прочее begin Randomize; Memo3.ReadOnly:=true; end;   Не забудьте сделать кнопки "Сброс" и "Выход"
  • 12. Задание 1. Создайте проект "журнал", добавив три колоки оценок и создав 4 колонку, в которую будут выводиться средние оценки по каждому ученику 2. Создайте тест на 6 вопросов разных типов для раздела информатики - программирование a. По 2 каждого типа: один из многих, многие из многих, точный ответ. b. Вес каждого вопроса должен быть различен, но общая оценка - 12 баллов c. Вопросы для теста желательно иллюстрировать рисунками.