Основы языка Данные, Переменная, Константа Типы данных Оператор присваивания Оператор read, write Оператор if Оператор цикла Паскаль
Программа – это –алгоритм, записанный на каком-либо языке программирова ния –набор команд для компьютера Команда – это описание действий, которые должен выполнить компьютер. – откуда взять исходные данные? – что нужно с ними сделать?
Алфавит языка Pascal включает: все латинские прописные и строчные буквы арабские цифры (0 – 9) символы + - * / =,. ; : _ ( ) { } и др. служебные ( зарезервированные ) слова
Для записи команд, имен функций, поясняющих терминов существует набор строго определенных слов, которые называются служебными или зарезервированными ( это английские мнемонические сокращения ). Служебные слова делятся на три группы : операторы ( READ, WRITELN и др.) имена функций ( SIN, COS и др.) ключевые слова ( VAR, BEGIN, END и др.)
Структура программы PROGRAM имя; Var имя:тип ; BEGIN оператор 1; оператор 2; ….. оператор n-1; оператор n; END.
Имена в программе Имена могут включать –латинские буквы (A-Z) –цифры (имя не может начинаться с цифры) –знак подчеркивания _ Имена НЕ могут включать –русские буквы –пробелы –скобки, знаки +, =, !, ? и др.
Типы данных
Данные, переменные, константы Данные – величины, обрабатываемые программой Константа – данные, значения которых не изменяются в процессе выполнения программы Переменная – данные, значения которых могут меняться в процессе выполнения программы. Имеют характеристики (атрибуты): имя, тип и значение.
Атрибуты Имя (идентификатор) определяет обозначение переменной и ее место в памяти Уникально, не меняется в процессе выполнения программы Начинается обязательно с буквы Значение – динамическая характеристика. Задается и меняется через операторы чтения или присваивания. Тип определяет множество допустимых значений и возможные операции с ними.
Типы данных. Назначение Типы данных определяют: Возможные значения переменных Внутреннюю форму представления числа в памяти PC Операции на данными В языке Паскаль типы данных (переменных) указывают в программе заранее! (var….;)
Типы данных. ИдентификаторДлина (байт) Диапазон значенийОперации integer , -, /, *, Div, Mod, >=,, real62,9x ,7x , -, /, *, >=,, char1все символы кода ASCII +, >=,, string boolean1true, falseNot, And, Or, Xor, >=,, byte , -, /, *, Div, Mod, >=,,
Описание данных Константа Const M=5; Const B=5.5; Переменная Var I:integer; Var I,j: integer; Var A:real;
Переменные. Задание значений. Передача переменной X числового значения переменной Y. Вывод на экран значения переменной Y: var x,y:real; begin read(x); - через оператор вода с клавиатуры y:=x; - через операторы присваивания write(y); end.
Оператор присваивания ( изменения значения переменной ). Математические операции
Общая структура: Присвоение значения переменной: а) := ; b) := ; c) := ; Значение (или значение переменной) которое ПЕРЕДАЕТСЯ переменной Переменная которой ПРИСВАЕВАЕТСЯ значение
Математические операции Символ операцииНазвание операции Пример *умножение2*3 (результат: 6 /деление30/5 (результат: 6) +сложение2+3 (результат: 5) -вычитание5-3 (результат: 2) divцелочисленное деление (частное) 5 div 2 (результат: 2) modостаток от деления5 mod 2 (результат: 1)
Математические операции. Функции Abs(X) Возвращает абсолютное значение числа X. Cos(X), Sin(X) Возвращает косинус (синус) числа X, где X - угол в радианах. Ln(x) Возвращает число, равное натуральному логарифму от числа X. Pi Число Пи. Sqr(X) Возвращает число, равное квадрату числа X. Sqrt(X) Возвращает число, равное квадратному корню из числа X.
program qq; var a, b: integer; x, y: real; begin a := 5; 10 := x; y := 7,8; b := 2.5; x := 2*(a + y); a := b + x; end. program qq; var a, b: integer; x, y: real; begin a := 5; 10 := x; y := 7,8; b := 2.5; x := 2*(a + y); a := b + x; end. Какие операторы неправильные? имя переменной должно быть слева от знака := целая и дробная часть отделяются точкой нельзя записывать вещественное значение в целую переменную
Примеры Задача. Увеличить переменную X на единицу var x:real; begin x:=3; x:=x+1; end. x:=x+1; Старое значение x Новое значение x
Примеры Задача. Поменять местами значения переменных X и Y: var x,y,c:real; begin c:=y; y:=x; x:=c end. C C X X Y Y 1 2 3
Операторы read, write.
Оператор read. Оператор чтения данных с клавиатуры: Read(x) – читает данное с клавиатуры и присваивает его переменной х Read(x,y) - читает поочередно значения и присваивает их переменной х и y соответственно.
Оператор write. Оператор чтения данных с экрана: Write(x) – выводит на экран значение переменной x. Write(text) – выводит на экран текст text. Write(x:10:3) – выводит значение переменной округленной до 3 знаков после запятой, на все поле отводится 10 знаков. Write('Число',y) – выводит на экран текст Число и значение переменной y. Write('Число',y,отрицательное) – выводит на экран текстЧисло, значение переменной y и текст отрицательное
Примеры: WRITE(2*2)- выводит на экран: 4 WRITE(2*2=)-выводит на экран: 2*2= WRITE(2*2=,2*2)-выводит на экран: 2*2=4
Типы данных. Примеры Пример программы: program primer; var x:real; begin write(введите число ) readln(x); write(введено число,x); end. Вопрос к аудитории: Введено с клавиатуры значение: a)125; b) true; c) Привет Что будет происходить после ввода значений?
Примеры. Задача. Сложить два числа 2 и 6. Вывести результат на экран: 1. var x:integer; begin x:=2+6; write(2+6=,x); end. 2. begin write(2+6= 2+6); end.
Примеры. Задача. Прибавить единицу к введенному с клавиатуры числа. Вывести результат на экран. var x:integer; begin write(введите число ); readln(x); x:=x+1; write(увеличенное на единицу число =,x); end.
Математические операции. Примеры. Задача. Возвести в квадрат число введенное с клавиатуры. Вывести результат на экран. Возможны 2 варианта. Решение 1: var x:integer; begin read(x); x:=x*x; write(x); end. Решение 2: var x:integer; begin read(x); x:=sqr(x); write(x); end.
Оператор if
Оператор if. Описание. Неполная форма: if then ; Логическое условие (простое или составное) Оператор 1 Определение: Оператор 1 выполняется тогда и только тогда, когда условие является истинным! Полная форма: if then else ; Определение: Оператор 2 выполняется тогда и только тогда, когда условие является ложным!
Оператор if. Логические операции. Логические операции используются для проверки различных условий. Если условие выполняется, то оно считается истинным (true), если нет – ложным (false). Логическая операция Описание Логическая операция Описание =равное>=Больше или равно >больше
Оператор if. Примеры. Задача: Составить программу для вывода на экран сообщения о том является ли число отрицательным или положительным. Решение 1: program test; var x:real; begin writeln('Введите число'); read(x); if x>0 then write('Число является положительным'); if x0 then write('Число является положительным') else write('Число является отрицательным'); …
Оператор if. Примеры. Задача: Даны два числа вывести наибольшее их них. Решение: program test; var x,y:integer; begin writeln('Введите число 1'); read(x); writeln('Введите число 2'); read(y); If x>y then write('Число,x,больше числа, y) else write('Число,y,больше числа, x); end.
Оператор if. Примеры. Задача: Проверить является ли число четным. Решение 1: program chetno; var x:integer; begin writeln('Введите число'); read(x); if (x mod 2)=0 then write('Число четное') else write('Число не четное'); end.
Оператор if. Задачи. Задача 1. Проверить является ли число больше 8. Задача 2. Проверить делится ли число на 3. *Задача 3. Проверить является ли число нечетным (условие проверки (x mod 2)=0 не использовать). Задача 4. Даны два числа, вывести на экран наименьшее из них. Задача 5. Дано целое число. Если оно является положительным, то прибавить к нему 5; в противном случае – вычесть 1. Результат вывести на экран. Задача 6. Даны 3 целых числа, найти количество положительных чисел.
Оператор if. Составные лог. операторы. Логические операторы and (логическое и), or (логическое или) – позволяют создавать составные логические выражения. Условие 1 Условие 2 Выражение true false truefalse Таблица истинности для and (и)
Оператор if. Составные лог. операторы. Условие 1 Условие 2 Выражение true falsetrue falsetrue false Таблица истинности для or (или)
Оператор if. Составные лог. операторы. Условие 1Выражение truefalse true Таблица истинности для not (отрицание)
Оператор if. Примеры выражений. Пример 1: X = 5 и Y = 6 Выражение (x 5) – истинно true Выражение (x 5) – ложно false true
Оператор if. Примеры выражений. Пример 2: X = 5 и Y = 6 Выражение (x 5) true Выражение (x 5) false true истинно
Оператор if. Примеры выражений. Пример 3: X = 5 и Y = 6 Выражение (not x
Оператор if. Примеры. Задача: Составить программу для проверки является ли число больше 5 и меньше 20 одновременно. Решение: program test; var x:integer; begin writeln('Введите число'); read(x); if (x>5) and (x
Оператор if. Программные скобки. Описание 3: if условие then begin оператор 1; оператор 2;... оператор n; end; Открытие программных скобок Закрытие программных скобок Закрытие программных скобок
Оператор if. Программные скобки. Задача: Поменять местами переменные, если первая переменная больше второй. … If x > y then begin c:=y; y:=x; x:=с; end; writeln(x,,y); end.
Оператор if. Программные скобки. Задача: Составить программу для вычисления корней квадратного уравнения … d:= B*B-4*A*C; If d > 0 then begin x1:=(-1)*B+sqr(d); x2:=(-1)*B-sqrt(d); writeln(Первый корень равен,x1); writeln(Второй корень равен,x2); end; If d = 0 then … If d < 0 then … end.
Циклы. Оператор for
48 Циклы. Определение 1: Многократно повторяющийся участок вычислительного процесса называется циклом. Определение 2: Если заранее известно количество необходимых повторений, то цикл называется арифметическим. Если же количество повторений заранее неизвестно, то говорят об итерационном цикле.
49 Циклы. В итерационных циклах производится проверка некоторого условия, и в зависимости от результата этой проверки происходит либо выход из цикла, либо повторение выполнения тела цикла. Если проверка условия производится перед выполнением блока операторов, то такой итерационный цикл называется циклом с предусловием (цикл "пока"), а если проверка производится после выполнения тела цикла, то это цикл с постусловием (цикл "до").
50 Циклы. Особенность этих циклов заключается в том, что тело цикла с постусловием всегда выполняется хотя бы один раз, а тело цикла с предусловием может ни разу не выполниться. В зависимости от решаемой задачи необходимо использовать тот или иной вид итерационных циклов.
51 Циклы. Арифметические циклы. Описание: for := to do ; Оператор for вызывает оператор, находящийся после слова do, по одному разу для каждого значения в диапазоне отзначения 1 до значения 2.
52 Циклы. Арифметические циклы. Задача: Вывести на экран числа от 1 до 16. Решение: … for i:=1 to 16 do WriteLn(i); …
Циклы. Арифметические циклы. Задача: Вывести на экран таблицу умножения на 8. Решение: … for i:=1 to 10 do WriteLn(8 *,i,=,8*i); …
Циклы. Арифметические циклы. Задача: 1. Даны целые числа К и N (N > 0). Вывести N раз число К. 2.Даны два целых числа А и В (А < В). Вывести в порядке возрастания все целые числа, расположенные между А и В (включ|ая сами числа А и В ), а также количество N этих чисел. 3. Даны два целых числа А и В (А < В). Вывести в порядке убывания все целые числа, расположенные между А и В (не включая числа А и В ), а также количество N этих чисел.
Циклы. Арифметические циклы. Задача: 1. Дано вещественное число цена 1 кг конфет. Вывести стоимость 1.2, 1.4,..., 2 кг конфет. 2. Даны два целых числа А и В (А < В). Найти сумму всех целых чисел от А до В включительно. 3. Даны два целых числа А и В (А < В). Найти произведение всех целых чисел от А до В включительно. 4. Даны два целых числа А и В (А < В). Найти сумму квадратов всех целых чисел от А до В включительно.
Спасибо за внимание