Презентация среда программирования паскаль. Презентация. Основы Pascal Математические операции. Функции

Программирование на языке Паскаль Алгоритм и его свойства

Что такое алгоритм? 3 Мухаммед ал-Хорезми (ок. 783–ок. 850 гг.)Алгоритм - это точное описание порядка действий, которые должен выполнить исполнитель для решения задачи за конечное время. Исполнитель – это устройство или одушёвленное существо (человек), способное понять и выполнить команды, составляющие алгоритм. Формальные исполнители: не понимают (и не могут понять) смысл команд (одну и ту же команду всегда выполняют одинаково).

Свойства алгоритма 4 Дискретность - алгоритм состоит из отдельных команд, каждая из которых выполняется за конечное время. Детерминированность (определённость) - при каждом запуске алгоритма с одними и теми же исходными данными получается один и тот же результат. Понятность - алгоритм содержит только команды, входящие в систему команд исполнителя. Конечность (результативность) - для корректного набора данных алгоритм должен завершаться через конечное время. Корректность - для допустимых исходных данных алгоритм должен приводить к правильному результату.

Как работает алгоритм? 5 дискретный объект 1 2 3 4 алгоритм шаг 1 шаг 2 шаг 32 3 4 5 5 4 3 2 дискретный объект 25 16 9 4 получает на вход дискретный объект в результате строит другой дискретный объект (или выдаёт сообщение об ошибке) обрабатывает объект по шагам на каждом шаге получается новый дискретный объект

Способы записи алгоритмов 6 естественный язык псевдокод установить соединение пока не принята команда «стоп» принять команду выполнить команду завершить сеанс связи установить соединение нц принять команду выполнить команду кц_при команда = ‘stop’ завершить сеанс связи

Способы записи алгоритмов 7 блок-схема set. Connection; repeat cmd: = get. Command; execute. Command(cmd); until cmd = «stop»; close. Connection; программа принять командуустановить соединение завершить соединение выполнить команду «стоп» ? данет

9 Программа – это алгоритм, записанный на каком-либо языке программирования набор команд для компьютера Команда – это описание действий, которые должен выполнить компьютер. откуда взять исходные данные? что нужно с ними сделать? 1970 – язык Паскаль (Н. Вирт)Оператор – это команда языка программирования высокого уровня.

Простейшая программа 10 Program { название программы } ; begin { начало программы } { тело программы } end. { конец программы } комментарии в скобках {} не обрабатываются Что делает эта программа? ? название алгоритма

Вывод на экран 11 program z 1; begin write(‘2+’); { без перехода } write ln (‘2=? ‘); { на новую строку } write ln (‘ Ответ: 4’); end. Протокол: 2+2=? Ответ:

Вывод на экран 12 write({ список вывода }); { без перехода } write ln ({ список вывода }); { на новую строку } Список вывода: 1. Значение арифметиче ского выражения. 2. Список переменных через запятую. 3. Текст в апострофах. Примеры: write(SQRT (58) / 0. 5); writeln(a, b, c); writeln(‘ Чётное ‘);

Вывод данных 13 { вывод значения переменной a} { вывод значения переменной a и переход на новую строку } { вывод текста и значения переменной c}write(a); write ln (a); writeln(‘ Привет! ‘); writeln(‘ Ответ: ‘ , c); writeln (a, ‘+’ , b, ‘=’ , c);

Арифметические выражения 14 a: = (c + b * 5 * 3 — 1) / 2 * d; Приоритет (старшинство): 1) функция 2) скобки 3) умножение и деление 4) сложение и вычитание 213 4 5 6 d bc a

Стандартные функции 15 abs (x) - модуль sqrt (x) - квадратный корень sqr (x) - квадрат sin (x) - синус угла, заданного в радианах cos (x) - косинус угла, заданного в радианах exp (x) - экспонента е х ln (x) - натуральный логарифм trunc (x) - отсечение дробной части round (x) - округление до ближайшего целого writeln(‘x^8 ‘, exp (ln (x)*8): 0: 3);

Задания 16 « A »: Вывести на экран значение переменной V (объёма шара) , если R=5 (R- радиус). По виду: V = { значение } « B »: Вывести на экран рисунок из букв Ж ЖЖЖЖЖЖЖ HH HH ZZZZZ « C »: Вывести на экран значение переменной V (объёма куба) , если H = 7 (H – длина ребра куба) . По виду: V = { значение }

Сложение чисел 17 Задача. Ввести с клавиатуры два числа и найти их сумму. Протокол: Введите два целых числа 25 30 25+30=55 компьютер пользователь компьютер считает сам! 1. Как ввести числа в память? 2. Где хранить введенные числа? 3. Как вычислить? 4. Как вывести результат? ?

Сумма: псевдокод 18 program qq; begin { ввести два числа } { вычислить их сумму } { вывести сумму на экран } end. Псевдокод: алгоритм на русском языке с элементами Паскаля. Компьютер не может исполнить псевдокод! !

Переменные 19 Переменная – это величина, имеющая имя, тип и значение. Значение переменной можно изменять во время работы программы. Значение Имя Поместится? ? Другой тип данных В переменной хранятся данные определенного типа!!

Имена переменных 20 МОЖНО использовать латинские буквы (A-Z) цифры знак подчеркивания _ заглавные и строчные буквы НЕ различаются имя не может начинаться с цифры Какие имена правильные? AXby R&B 4 Wheel Вася “Pes. Barbos” TU 154 _ABBA A+

Объявление переменных 21 Типы переменных: integer { целая } real { вещественная } и другие… Объявление переменных: var a, b, c: integer ; выделение места в памяти variable – переменная тип – целые список имен переменных

Тип переменной 22 область допустимых значений допустимые операции объём памяти формат хранения данных для предотвращения случайных ошибок

Ввод значения в переменную 23 read (a); 1. Программа ждет, пока пользователь введет значение и нажмет Enter. 2. Введенное значение записывается в переменную a. ! оператор ввода

Ввод значений переменной 24 через пробел: 25 30 через Enter: 25 30 read (a, b); Ввод значений двух переменных (через пробел или Enter). a 25 b

Изменение значений переменной 25 var a, b: integer ; . . . a: = 5 ; b: = a + 2 ; a: = (a + 2)*(b – 3); b: = b + 1 ; a ? 5 5 b ? 5+27 a 5 7*428 b 7 7+

Вывод данных 26 { вывод значения переменной a} { вывод значения переменной a и переход на новую строку } { вывод текста и значения переменной c}write(a); write ln (a); writeln(‘ Привет! ‘); writeln(‘ Ответ: ‘ , c); writeln (a, ‘+’ , b, ‘=’ , c);

Сложение чисел: простое решение 27 program Sum ; var a, b, c: integer ; begin read (a, b); c: = a + b; writeln (c); end. Что плохо? ?

Сложение чисел: полное решение 28 program Sum ; var a, b, c: integer ; begin writeln(‘ Введите два целых числа ‘); read (a, b); c: = a + b; writeln (a, ‘+’ , b, ‘=’ , c); end. Протокол: Введите два целых числа 25 30 25+30=55 компьюте р пользователь

Снова про оператор вывода 29 a: = 123 ; write(a: 5); Форматный вывод: Вычисление выражений: writeln (a, ‘+’ , b, ‘=’ , a+b); a+b 123 5 знаков

Арифметические выражения 30 a: = (c + b * 5 * 3 — 1) / 2 * d; Приоритет (старшинство): 1) скобки 2) умножение и деление 3) сложение и вычитание 213 4 5 6 d bc a

Стандартные функции 31 abs (x) - модуль sqrt (x) - квадратный корень sin (x) - синус угла, заданного в радианах cos (x) - косинус угла, заданного в радианах exp (x) - экспонента е х ln (x) - натуральный логарифм trunc (x) - отсечение дробной части round (x) - округление до ближайшего целого



Язык Паскаль разработан в 1971 году и назван в честь Блеза Паскаля – французского ученого, изобретателя механической вычислительной машины.

Паскаль – это универсальный язык программирования, позволяющий решать самые разнообразные задачи обработки информации



АЛФАВИТ ЯЗЫКА

Все латинские прописные и строчные буквы (A-Z, a-z);

Арабские цифры (0-9);

Знаки +, -, *, /, ….

Служебные слова.


F1 – справка или справочная служба (помощь).

F2 – записать редактируемый текст в дисковый файл (сохранить ) .

F5 – распахнуть активное окно на весь экран.

F6 – сделать активным следующее окно.

F9 – компилировать программу, но не выполнять ее.

F10 – перейти к главному меню.


Основные функциональные клавиши

Alt – X – выход из программной среды.

Ctrl – F9 – выполнить прогон программы: компилировать программу, находящуюся, в редакторе, загрузить ее в оперативную память и выполнить.

Alt – F5 – сменить окно редактора на окно вывода результатов работы (прогона) программы.

Tab – переключение между элементами окон.


Для перехода от состояния выбора режима из главного меню в состояние редактирования нужно нажать клавишу Esc .

Для создания текста программы нужно ввести этот текст с помощью клавиатуры, как это делается при « обычном наборе ». После заполнения очередной строки следует нажать на клавишу Enter , для перевода курсора на следующую строку.


Структура программы

Программа состоит из трех основных частей:

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

Раздел описаний (соглашения).

Исполняемая часть (операторы).


Служебные слова

Program ;

Label ;

Const ;

Type ;

Procedure ,

Function


Программы на Паскале содержат следующие «знаки препинания»:

  • Точка с запятой;
  • Точка.

Точкой с запятой отделяют операторы друг от друга; точка ставится в конце программы.

Служебные слова BEGIN и END от операторов точкой с запятой не отделяются.




Переменная – это величина, которая может меняться при выполнении программы.

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

Тип определяет размер и структуру памяти под переменную.


Тип данных определяет:

  • формат представления данных в памяти;
  • множество допустимых значений;
  • множество допустимых операций.

ОПИСАНИЕ ПЕРЕМЕННЫХ

Описание переменных начинается со служебного слова VAR (переводится – «переменная»).

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


Простые

Структурированные

Ссылочные

Процедурные

Объектные


Простые

типы

порядковые

вещественные


Простые

порядковые типы

Целые типы

Логические типы

Символьные типы


Целочисленные типы

Диапазон возможных значений

2147483648... 2147483647


Например:

a, f, m, n: integer;


Вещественные типы

Диапазон

2.9*10 -39 ... 1.7*10 38

5.0*10 -45 ... 3.4*10 38

5.0*10 -324 ... 1.7*10 308

3.4*10 -4932 ... 1.1*10 4932


Например:

a, f, m, n: real;


Логический тип

Логический тип данных Boolean представляет такой тип данных, когда параметр (переменная) может принимать два значения True и False .


Например:


Символьный тип

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

Значения такого типа записывается в апострофах: a = ‘d’, r=‘g’.


Перечисляемый тип

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


Например:

Color=(black, white, blue, green, red)



Арифметические операции

Сложение

Вычитание

Умножение

Деление вещественное

Деление целочисленное

Получение остатка от деления целых чисел


Операторы ввода

  • Read;

read (имена переменных),

Например:

read (a, b, c) .

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


Операторы ввода

  • Readln

Readln (имена переменных) ,

Например:

Readln (a, b, c)

При использовании этого оператора после ввода данных курсор переходит на новую строку.


Операторы вывода

Write (‘ текст ’ , имена переменных: m, n)

Writeln (‘ текст ’ , имена переменных: m, n)

Например:

Write (‘ сумма, С= ’ , с)

Последовательный вывод значений переменных.

При использовании оператора Writeln осуществляется переход на новую строку.

Тема урока: Язык программирования «ПАСКАЛЬ» Текстовой редактор языка.

Учитель информатики

ГБОУ Школы №293 им. А.Т. Твардовского г. Москвы

Бахтинова Наталия Валерьевна


Цель занятия :

  • Сформировать первые сведения о языке Pascal; Получить навыки работы в текстовом редакторе языка Pascal .

Исторические сведения о языке «Паскаль»

  • Язык программирования Паскаль получил своё название в честь великого французского математика и физика Блеза Паскаля, который в 1642г. изобрёл счётную машину для арифметических операций, так называемое "паскалево колесо". В конце 1968 г. профессор Вирт и его сотрудники из швейцарского федерального института технологии в Цюрихе разработали первую версию языка Паскаль. Спустя два года - первый вариант компилятора. В 1971 г. Вирт выпустил описание своего языка.

Блез Паска́ль - французский математик, механик, физик, литератор и философ


Создавая Паскаль Вирт преследовал две цели:

  • во-первых, разработать язык пригодный для обучения программированию как систематической дисциплины;
  • во-вторых, реализация языка должна быть эффективной и надёжной.
  • Одним из достоинств языка Паскаль является то, что он полностью воплотил в себя идею структурного программирования, суть которой заключается в том, что с помощью нескольких конструкций можно выразить в принципе любые алгоритмы.

Никлаус Вирт (нем. Niklaus Wirth, род. 15 февраля 1934 года) - швейцарский учёный, один из известнейших теоретиков в области разработки языков программирования. Ведущий разработчик и создатель языков программирования Паскаль, Модула-2, Оберон.


Запуск языка «Паскаль»

Для запуска языка Паскаль нужно загрузить файл PASCAL.EXE находящийся, как правило, в каталоге PASCAL.

Например: D:\PASCAL\PASCAL.EXE



  • На синем фоне будем писать программу.
  • На сером фоне написаны строки подсказки.
  • Верхняя строка содержит раскрывающиеся меню: Ф айл, Т екст, В ыполнение, К омпиляция, Р ежимы, О тладка, Н аблюдение.
  • Для перехода в верхнее меню нажимаем F10. Нажатие клавиши alt и первой буквы любого из слов верхнего меню раскрывает окно. (пример alt + B)

  • Ввод программы в компьютер представляет собой ввод текста в компьютер. Ниже перечислены наиболее часто используемые команды текстового редактора Турбо Паскаля.

  • PgUp - на страницу вверх;
  • PgDn - на страницу вниз;
  • Home - в начало строки;
  • End - в конец строки;
  • Ctrl-PgUp - в начало текста;
  • Ctrl-PgDn - в конец текста.

  • Backspace (←) - стереть символ слева от курсора;
  • Del - стереть символ, на который указывает курсор (справа от курсора);
  • Ctrl-Y - стереть строку, на которой располагается курсор;
  • Enter - вставить новую строку, разрезать старую;
  • Ctrl-Q L - восстановить текущую строку (действует, если курсор не покидал изменённую строку).

  • Ctrl-K B - пометить начало блока;
  • Ctrl-K K - пометить конец блока;
  • Ctrl-K Y - стереть блок;
  • Ctrl-K C - копировать блок;
  • Ctrl-K V - переместить блок;
  • Ctrl-K W - записать блок в дисковый файл;
  • Ctrl-K R - прочитать блок из дискового файла;
  • Ctrl-K P - напечатать блок;
  • Ctrl-K H - убрать выделение блока.

  • В каком году появилась первая версия языка программирования Pascal?
  • Какими достоинствами обладает язык Pascal?
  • Какие клавиши удобно использовать для быстрого перемещения курсора по программе из верхнего левого угла экрана в нижний правый угол? (а если наоборот?)
  • Что необходимо сделать, чтобы скопировать часть программы?
  • Можно ли восстановить изменения сделанные в тексте программы?

Программирование на языке Паскаль



В 1970 году в мире программирования произошли по крайней мере два великих события- появились операционная система UNIX и новый язык программирования, созданный профессором Никлаусом Виртом из швейцарского Федерального Технологического Института в Цюрихе. Вирт назвал его в честь великого французского математика и философа XVII века Блеза Паскаля.

Никлаус Вирт (Niklaus Wirth)

Блез Паскаль


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

потому, что учит как правильно написать программу, но и тому, как правильно

разрабатывать методы решения задач программирования


  • прописные и строчные буквы латинского алфавита от A до z , а также символ подчеркивания (_), который тоже считается буквой.
  • Прописные и строчные буквы взаимозаменяемы (рАвНоЗнАчНы);
  • арабские цифры 0 1 2 3 4 5 6 7 8 9 ;
  • специальные одиночные знаки: + – * / = . , : ; ^ $ # @ ;
  • специальные парные знаки: () { } ;
  • составные знаки: = .. (* *) (..) .

Структура программы

Программа на языке Паскаль состоит из:

// Заголовок (необязательная часть)


  • Описание меток;
  • Определение констант;
  • Определение типов;
  • Описание переменных;
  • Описание процедур и функций.

  • begin { начало программы }
  • { тело программы }
  • end. { конец программы }

Структура программы

Program имя программы; { заголовок программы }

Uses …; {раздел подключения модулей}

Label ; { раздел описания меток }

Const ; { раздел описания констант }

Туре ; { раздел определения типов }

Var ; { раздел описания переменных }

Function ; Procedure ; { раздел описания функций и процедур }

... { раздел операторов }


Из чего состоит программа?

Константа – постоянная величина, имеющая имя.

Переменная – изменяющаяся величина, имеющая имя (ячейка памяти).

Процедура – вспомогательный алгоритм, описывающий некоторые действия (рисование окружности).

Функция – вспомогательный алгоритм для выполнения вычислений (вычисление квадратного корня, sin ) .


Константы

i2 = 45; { целое число }

pi = 3.14; { вещественное число }

q = " Вася "; { строка символов }

L = True; { логическая величина }

целая и дробная часть отделяются точкой

можно использовать русские буквы!

может принимать два значения:

  • True (истина, «да») False (ложь, «нет»)
  • True (истина, «да»)
  • False (ложь, «нет»)

Переменные

Типы переменных:

  • integer { целая } real { вещественная } char { один символ } string { символьная строка } boolean { логическая }
  • integer { целая }
  • real { вещественная }
  • char { один символ }
  • string { символьная строка }
  • boolean { логическая }

Объявление переменных ( выделение памяти ) :

variable – переменная

тип – целые

var a, b, c: integer ;

список имен переменных


Пример программы

write(‘ Это моя первая программа ! ’);

Запустите программу на исполнение просмотрите результат.


Оператор вывода

Write(‘ текст ’); - оператор вывода текста и переменных на экран (оставляет курсор на текущей строке);

Writeln(‘ текст ’); - оператор вывода текста и переменных на экран (переносит курсор на новую строку);


Задание

  • Выведите следующий текст на экран:

Привет всем!

Я лучший программист ОСШ №3!

Обратите внимание на то, что текст выводится в две разные строчки



Вычисление математических выражений в ABC Pascal


  • Приоритет выполнения операций в ABC Pascal такой же, как и в математике.
  • Достаточно только научиться правильно записывать математические выражения на языке Pascal

Арифметические действия

Операция

Наименование

Сложение

Вычитание

Умножение

Деление (только для вещественного типа)

А div B

Вычисление целой части (неполного частного)

Вычисление остатка

Вычисли:

10 div 3 18 mod 4


Примеры

Математическая запись

Запись на языке Pascal

37(25+87,5)-17(4,6+1,9)

37*(25+87.5)-17*(4.6+1.9)

(a +2* b-3*c)/(5*a+4)

(a+b)/(a-b)+a*b/3.14

Десятичная запятая в Pascal обозначается точкой


Стандартные функции

Функция Паскаля

Математическая запись

Название

Абсолютная величина числа Х (модуль)

Возведение числа в квадрат

Экспонента

Вычисление квадратного корня

Вычисляет дробную часть числа

Округляет до ближайшего целого числа

Отсекает дробную часть

Определите результат:

Frac(16.68); Round(16.68); Trunc(16.68);


Стандартные функции

Функция Паскаля

Математическая запись

Название

Вычисление синуса

Вычисление косинуса

Целая часть числа

Вычисление натурального логарифма

Возведение числа в степень

Возвращает случайное число в диапазоне от 0 до Х

Число π


Градусы в Pascal нужно перевести в радианы

Запись на языке Pascal

Математическая запись


Операторы ЯП Pascal ABC


:= выражение; Арифметическое выражение может включать константы имена переменных знаки арифметических операций: константы имена переменных знаки арифметических операций: + - * / div mod + - * / div mod вызовы функций круглые скобки () вызовы функций круглые скобки () деление нацело умножение остаток от деления деление" width="640"

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

имя переменной := выражение ;

Арифметическое выражение может включать

  • константы имена переменных знаки арифметических операций:
  • константы
  • имена переменных
  • знаки арифметических операций:

+ - * / div mod

  • + - * / div mod
  • вызовы функций круглые скобки ()
  • вызовы функций
  • круглые скобки ()

деление нацело

умножение

остаток от деления


Какие операторы неправильные?

program qq;

var a, b: integer;

x, y: real;

10 := x;

y:= 7 , 8;

b:= 2.5;

x:= 2*(a + y);

a:= b + x;

имя переменной должно быть слева от знака :=

целая и дробная часть отделяются точкой

нельзя записывать вещественное значение в целую переменную


Оператор ввода

read (a); { ввод значения переменной a}

read (a, b); { ввод значений переменных a и b}

Как вводить два числа?

через пробел:

через Enter :


Оператор вывода

write (a); { вывод значения переменной a}

write ln (a); { вывод значения переменной a и переход на новую строчку }

writeln (" Привет! "); { вывод текста }

writeln (" Ответ: ", c); { вывод текста и значения переменной c}

writeln (a, "+", b, "=", c);


Сложение двух чисел

Задача. Ввести два целых числа и вывести на экран их сумму.

Простейшее решение:

program qq;

var a, b, c: integer;

read (a, b);

c:= a + b;

writeln (c);


Полное решение

program qq;

var a, b, c: integer;

writeln(" Введите два целых числа ");

read (a, b);

c:= a + b;

writeln (a, "+", b, "=", c);

компьютер

Протокол :

Введите два целых числа

25+30=55

пользователь



ВЫЧИСЛИТЬ:

12 div 4 =

1 9 div 5 =

12 mod 3 =

1 36 mod 10 =


На Паскале

На языке математики

Модуль числа х

Возведение в квадрат числа х

Trunc(x)

е х

Round(x)

Вычисление дробной части

Корень квадратный из х

Округляет до ближайшего целого числ

Random(x)

Отсекает дробную часть

Синус х

Exp/y*ln(x))

Возвращает случайное число от 0 до х

Косинус х

[ х ]

х у

Ln x


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

1. Вычислить длину окружности и площадь круга по заданному радиусу

2. Вычислить периметр прямоугольного треугольника по его катетам




Условный оператор ( полная форма )

полная форма ветвления

условие

Действие1

Действие2

вывод


then begin { что делать, если условие верно } end else begin { что делать, если условие неверно } end ; Особенности: перед else НЕ ставится точка с запятой begin и end перед else НЕ ставится точка с запятой если в блоке один оператор, можно убрать слова begin и end" width="640"

Условный оператор (полная форма)

if условие then begin

{ }

else begin

{ что делать, если условие неверно }

Особенности:

  • перед else НЕ ставится точка с запятой если в блоке один оператор, можно убрать слова begin и end
  • перед else НЕ ставится точка с запятой
  • если в блоке один оператор, можно убрать слова begin и end

Условный оператор (не полная форма )

неполная форма ветвления

условие

Действие

вывод


then begin { что делать, если условие верно } end ; Особенности: если в блоке один оператор, можно убрать слова begin и end если в блоке один оператор, можно убрать слова begin и end" width="640"

Условный оператор (неполная форма)

if условие then begin

{ что делать, если условие верно }

Особенности:

  • если в блоке один оператор, можно убрать слова begin и end
  • если в блоке один оператор, можно убрать слова begin и end


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

  • Составьте программу, которая уменьшает первое число в пять раз, если оно больше второго.

2. Запишите программу, в которой значение переменной с вычисляется по формуле: a+b , если а нечетное и a*b , если а четное .



b then c:= a + b else c:= b – a;" width="640"

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

1. Написать программу решения задачи:

а). Известно значение х. Вычислить у, если

б). Даны координаты точки. Выяснить лежит ли эта точка в 3 координатной четверти?

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

a:= 6 ;

b:= 15 ;

a:= b – a*2;

if a b then

c:= a + b

else c:= b – a;




Цикл – это многократное выполнение одинаковой последовательности действий.

  • цикл с известным числом шагов (цикл с параметром ) цикл с неизвестным числом шагов (цикл с условием )
  • цикл с известным числом шагов (цикл с параметром )
  • цикл с неизвестным числом шагов (цикл с условием )



:= начальное значение to конечное значение do begin { тело цикла } end; Уменьшение переменной на 1 (шаг -1) : for переменная:= начальное значение downto конечное значение do begin { тело цикла } end;" width="640"

Увеличение переменной на 1 (шаг 1):

for переменная := начальное значение to

конечное значение do begin

{ тело цикла }

Уменьшение переменной на 1 (шаг -1) :

for переменная := начальное значение downto

конечное значение do begin

{ тело цикла }


Особенности:

  • integer ) to ) или -1 ( downto ) begin и end можно не писать: to ) не выполняется ни разу (
  • переменная цикла может быть только целой ( integer )
  • шаг изменения переменной цикла всегда равен 1 ( to ) или -1 ( downto )
  • если в теле цикла только один оператор, слова begin и end можно не писать:
  • если конечное значение меньше начального, цикл ( to ) не выполняется ни разу ( проверка условия в начале цикла, цикл с предусловием)

for i:= 1 to 8 do

writeln( " Привет " );


  • в теле цикла не разрешается изменять переменную цикла
  • при изменении начального и конечного значения внутри цикла количество шагов не изменится:

for i:= 1 to n do begin

writeln( " Привет " );

n:= n + 1;

нет зацикливания




do begin { тело цикла } end; Особенности: можно использовать сложные условия: если в теле цикла только один оператор, слова begin и end можно не писать: можно использовать сложные условия: если в теле цикла только один оператор, слова begin и end можно не писать: while (a d o begin { тело цикла } end; while a d o a:= a + 1;" width="640"

while условие do begin

{ тело цикла }

Особенности:

  • можно использовать сложные условия: если в теле цикла только один оператор, слова begin и end можно не писать:
  • можно использовать сложные условия:
  • если в теле цикла только один оператор, слова begin и end можно не писать:

while (a d o begin

{ тело цикла }

while a d o

a:= a + 1;


b d o a:= a – b; a:= 4; b:= 6; while a d o d:= a + b;" width="640"
  • условие пересчитывается каждый раз при входе в цикл
  • если условие на входе в цикл ложно, цикл не выполняется ни разу
  • если условие никогда не станет ложным, программа зацикливается

a:= 4; b:= 6;

while a b d o

a:= a – b;

a:= 4; b:= 6;

while a d o

d:= a + b;




until условие " width="640"

Цикл с постусловием – это цикл, в котором проверка условия выполняется в конце цикла.

тело цикла

until условие


ЗАДАЧА

Найти сумму квадратов всех натуральных чисел от 1 до 100. Решим эту задачу с использованием всех трех видов циклов.


"Пока" .

Program qq;

var a, s: integer;

s:=s+a*a;

writeln(s);


100 ; writeln(s); end." width="640"

"До"

Program qq;

var a, s: integer;

s:=s+a*a;

until a 100 ;

writeln(s);


"С параметром"

Program qq;

var a, s: integer;

for a:=1 to 100 do

s:=s+a*a;

writeln (s);


Задача.

Вывести на экран квадраты и кубы целых чисел от 1 до 8.

Особенность:

одинаковые действия выполняются 8 раз.


блок «цикл»

i 1 := i * i;

i 2 := i 1 * i;

тело цикла

i, i 1 , i 2


Программа

program qq;

var i, i1, i2: integer;

for i:=1 to 8 do begin

i1:= i*i;

i2:= i1*i;

writeln(i, i1, i2);

начальное значение

переменная

конечное значение


Цикл с уменьшением переменной

Задача. Вывести на экран квадраты и кубы целых чисел от 8 до 1 (в обратном порядке).

Особенность: переменная цикла должна уменьшаться.

Решение:

for i:=8 1 do begin

i1:= i*i;

i2:= i1*i;

writeln(i, i1, i2);

down to




Массив – это группа однотипных элементов, имеющих общее имя и расположенных в памяти рядом.

Особенности:

  • все элементы имеют один тип весь массив имеет одно имя
  • все элементы имеют один тип
  • весь массив имеет одно имя
  • все элементы расположены в памяти рядом

Примеры:

  • список учеников в классе квартиры в доме школы в городе
  • список учеников в классе
  • квартиры в доме
  • школы в городе
  • данные о температуре воздуха за год

НОМЕР элемента массива

(ИНДЕКС )

массив

ЗНАЧЕНИЕ элемента массива

НОМЕР (ИНДЕКС) элемента массива: 2

ЗНАЧЕНИЕ элемента массива: 10


Объявление массивов

Зачем объявлять?

  • определить имя массива определить тип массива определить число элементов выделить место в памяти
  • определить имя массива
  • определить тип массива
  • определить число элементов
  • выделить место в памяти

Массив целых чисел:

Размер через константу:

элементов

конечный индекс

начальный индекс

var A : array[ 1 .. 5 ] of integer ;

var A: array of integer ;

const N=5;


Что неправильно?

var a: array of integer;

A := 4.5;

var a: array ["z".."a"] of integer;

A["B"] := 15;

["a".."z"]

var a: array of integer;

A := "X";


Объявление:

Ввод с клавиатуры:

Поэлементные операции:

Вывод на экран:

const N = 5;

var a: array of integer;

i: integer;

a =

a =

a =

a =

a =

for i:=1 to N do begin

write("a[", i, "]=");

read (a[i]);

Почему write ?

for i:=1 to N do a[i]:=a[i]*2;

writeln(" Массив A:");

for i:=1 to N do write(a[i]:4);

Массив A:

1 0 24 68 112 26


Задача:

1. Ввести c клавиатуры массив из 5 элементов, найти среднее арифметическое всех элементов массива.

Пример:

Введите пять чисел:

4 15 3 10 14

среднее арифметическое 9.200

РЕШЕНИЕ:


Program qq;

var N: array of integer;

for i:=1 to 5 do begin

write ("N[",i,"]");

for i:=1 to 5 do begin

write(" среднее", k:6:2);

Понравилась статья? Поделиться с друзьями: