Для выполнения операций ввода-вывода служат четыре оператора:
Read, ReadLn, Write, WriteLn. Оператор чтения (Read) обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой.
Формат: Read (X1, Х2. Хn), где X1, Х2. Хn – переменные допустимых типов данных.
Значения X1, Х2. Хn набираются минимум через один пробел на клавиатуре пользователем и высвечиваются на экране. Значения переменных должны вводиться в строгом соответствии с синтаксисом языка. Если в программе имеется несколько операторов Read, данные для них вводятся потоком, т. е. после считывания значений переменных для одного оператора Read данные для следующего оператора Read – набираются на той же строке, что и для предыдущего до окончания строки, затем происходит переход на следующую строку. Оператор чтения ReadLn аналогичен оператору Read, единственное отличие заключается в том, что после считывания последнего в списке значения для одного оператора ReadLn данные для следующего оператора ReadLn будут считываться с начала новой строки.
Операторы ввода, вывода, присваивания. Переменные на языке Паскаль
Оператор записи (Write) производит вывод данных.
Формат: Write (X1, Х2. Хn), где X1, Х2. Хn — выражения типа integer, byte, real, char, Boolean и т.д.
Пример: Write (125); (выражение представлено значением) Write (А+В–С);
Оператор Write дает возможность выводить значения переменных следующими способами.
1. Вывод десятичного представления величины I начиная с позиции расположения курсора (I):
Значение I | Выражение | Результат |
Write(I) | ||
Write(I) | ||
Write(I, I, I) | ||
Write(‘Значение I = ‘, I) | Значение I = 318 |
2. Вывод десятичного представления величины I в крайние правые позиции поля шириной р (I:р):
Значение I | Выражение Write(I:6) Write(I:10) | Результат ַַַ134 ַַַַַַַַַ5 |
Write(I+I:7) | ַַַַ624 |
3. Вывод десятичного представления величины I в крайние правые позиции поля шириной р и дробной части числа шириной q (I:р:q):
Значение I | Выражение | Результат |
511.04 | Write(I:8:4) | 511.0400 |
-46.78 | Write(I:7:2) | ַ-46.78 |
-46.78 | Write(I:9:4) | ַ-46.7800 |
Оператор записи WriteLn аналогичен оператору Write, но после вывода последнего в списке значения для текущего оператора WriteLn происходит перевод курсора к началу следующей строки. Оператор WriteLn, записанный без параметров, вызывает перевод строки.
При недостатке количества позиций для вывода число или текст выводятся полностью, а формат игнорируется, кроме формата вывода дробной части числа. Если формат вывода не задавать, то значения целых и строковых переменных выводятся полностью, а вещественных – с количеством цифр, соответствующих типу переменной, например,
1. Операторы Pascal / ввод / вывод
a:=5.12345678912345678912345; Writeln(‘а=’, a); выведет на экран надпись:
Стандартные типы данных
К стандартным относятся целочисленные, действительные, логический и другие типы.
Целочисленные типы определяют константы, переменные и функции, значения которых реализуются множеством целых чисел, допустимых в данной ЭВМ.
Тип | Диапазон значений | Требуемая память |
Shortint | -128.. 127 | 1 байт |
Integer | -32768.. 32767 | 2 байта |
Longint | -2147483648.. 2147483647 | 4 байта |
Byte | 0.. 255 | 1 байт |
Word | 0.. 65535 | 2 байта |
VAR n1, n2: Integer; n3, n4: Word; n5, n5: Byte;
Над целыми операндами можно выполнять следующие операции:
сложение, вычитание, умножение, деление, целочисленное деление, получение остатка от деления и др. Знаки этих операций:
+ – * / div mod
Результат данных операций над целыми операндами есть величина целого типа, кроме операции деления /. Результат деления всегда имеет вещественный тип. Результат выполнения операции целочисленного деления div целых величин есть целая часть частного. Результат выполнения операции получения остатка от деления mod – остаток от деления чисел. Например:
17 div 2 = 8, 3 div 5 = 0
17 mod 2 = 1, 3 mod 5 = 3.
Операции сдвига влево shl и сдвига вправо shr:
I shl N; I shr N.
Эти операции сдвигают двоичную последовательность значения I влево или вправо на N двоичных разрядов. При этом биты, уходящие за пределы разрядной сетки, теряются, а освободившиеся двоичные разряды заполняются нулями. При сдвиге вправо отрицательных значений освободившиеся разряды заполняются единицами.
Операции отношения, примененные к целым операндам, дают результат логического типа TRUE или FALSE (истина или ложь).
В языке ПАСКАЛЬ имеются следующие операции отношения: равенство =, неравенство <>, больше или равно >=, меньше или равно , меньше
К аргументам целого типа применимы следующие стандартные (встроенные) функции, результат выполнения которых имеет целый тип:
Abs(X) – абсолютное значение, модуль Х;
Sqr(X) – Х в квадрате;
Succ(X) – следующее значение (X+1);
Следующая группа стандартных функций для аргумента целого типа дает вещественный результат:
Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X).
Эти функции вычисляют синус, косинус и арктангенс угла, заданного в радианах, логарифм натуральный, экспоненту и корень квадратный соответственно.
Результат выполнения функции проверки целой величины на нечетность Odd(X) имеет значение истина, если аргумент нечетный, и значение ложь, если аргумент четный:
X=5 Odd(X)=TRUE; X=4 Odd(X)=FALSE.
Для быстрой работы с целыми числами определены процедуры:
Вещественные типы определяет те данные, которые реализуются подмножеством действительных чисел, допустимых в данной ЭВМ.
Тип | Диапазон значений | Количество цифр | Требуемая память (байт) |
Real | 2.9e-39.. 1.7e+38 (10 -39..+38 ) | ||
Single | 1.5e-45.. 3.4e+38 | ||
Double | 5.0e-324.. 1.7e+308 | ||
Extended | 3.4e-4932.. 1.1e+4932 | ||
Comp | -9.2e+18.. 9.2e+18 |
VAR n1, n2, n3, n4: Real;
Над вещественными операндами можно выполнять следующие арифметические операции, дающие вещественный результат:
сложение +, вычитание –, умножение *, деление /.
К величинам вещественного типа применимы все операции отношения, дающие булевский результат.
Один из операндов, участвующих в этих операциях, может быть целым.
К вещественным аргументам применимы функции, дающие вещественный результат:
Abs(X), Sqr(X), Sin(X), Cos(X), ArcTan(X), Ln(X),Exp(X), Sqrt(X), Frac(X), Int(X), Pi.
Функция Frac(X) возвращает дробную часть X, функция Int(X) – целую часть X.
Безаргументная функция Pi возвращает значение числа Пи = 3,1415926. вещественного типа.
К аргументам вещественного типа применимы также функции Trunc(X) и Round(X) дающие целый результат. Первая из них выделяет целую часть действительного аргумента путем отсечения дробной части, вторая округляет аргумент до ближайшего целого.
Логический тип (Boolean) определяет те данные, которые могут принимать логические значения: False (ложь) или True (истина).
b1, b2, b3, b4: boolean;
Примеры присвоения значения:
b1:= True; b2:= False; b3:= not b1;
К булевским операндам применимы следующие логические операции:
ТЕМА 5. Программирование линейных алгоритмов
Цель лабораторной работы: научиться описывать переменные, применять оператор присваивания, операции и функции в программировании для решения задач на линейные алгоритмы.
Понятие линейного алгоритма. Примеры написания программ.
Линейным называется алгоритм, в котором результат получается путем однократного выполнения заданной последовательности действий при любых значениях исходных данных. Операторы программы выполняются последовательно, один за другим, в соответствии с их расположением в программе.
Задача 5.1.1. Получить от пользователя данные, обработать их и вывести на экран.
1. Описание переменных: a,b,c,d,sum – целое, mult – длинное целое.
2. Ввод значений переменных a и b, вычисление их суммы и присвоение полученного значения переменной sum, вывод значения sum на экран.
3. Ввод значений переменных c и d, вычисление их произведения и присвоение полученного значения переменной mult, вывод значения mult на экран.
Программа | Результат на экране |
var a,b,c,d,sum: integer; mult: longint; begin write(‘Введите значение a: ‘); readln(a); write(‘Введите значение b: ‘); readln(b); sum:= a+b; writeln(‘Сумма чисел ‘,a,’ и ‘,b,’ = ‘,sum); writeln; writeln(‘Введите значения c и d: ‘); read(c,d); mult:= c*d; writeln(‘Результат умножения ‘,c,’ на ‘,d,’ = ‘,mult); end. | Введите значение a: 3 Введите значение b: 5 Сумма чисел 3 и 5 = 8 Введите значения c и d: 7 9 Результат умножения 7 на 9 = 63 |
Задача 5.1.2. Обменять значения двух переменных, используя третью (буферную) переменную.
x – первая переменная;
y – вторая переменная;
b – буферная переменная (для временного хранения значения переменной).
Алгоритм решения задачи:
в буферной переменной сохраняется значение первой переменной.
первой переменной присваивается значение второй.
второй переменной присваивается значение буферной переменной, это значение равно старому значению первой переменной.
Программа | Результат на экране |
var x, y, b: integer; begin write (‘Введите первую переменную: ‘); readln (x); write (‘Введите первую переменную: ‘); readln (y); writeln (‘x = ‘, x, ‘, y = ‘, y); writeln (‘Полученные значения’); b:= x; x:= y; y:= b; writeln (‘x = ‘, x, ‘, y = ‘, y); end. | Введите первую переменную: 12 Введите первую переменную: 56 x = 12, y = 56 Полученные значения x = 56, y = 12 |
ТЕМА 6. Программирование с помощью операторов условного и безусловного перехода
Цель лабораторной работы: изучить условный оператор If и оператор безусловного перехода GoTo, применять их в программировании для решения задач на разветвляющиеся алгоритмы.
Условный оператор If
Условный оператор обеспечивает выполнение или невыполнение некоторого оператора, группу операторов – в зависимости от заданных условий.
Структура условного оператора имеет следующий вид:
If then else ;
If then ;
где If, then, else – зарезервированные слова (если, то, иначе);
– произвольное выражение логического типа. Оно может быть простым или сложным. Сложные условия образуются с помощью логических операций AND, OR, XOR, NOT. При записи условий могут использоваться все возможные операции отношения;
– простой или составной оператор. Составной оператор представляет собой группу из произвольного числа операторов, отделенных друг от друга точкой с запятой, ограниченную операторными скобками – зарезервированные слова Begin и End.
Формат:
На рис.5.1 представлены блок-схемы разветвляющегося алгоритма с использованием условного оператора If.
Рис. 5.1 Блок-схема разветвляющегося алгоритма с использованием оператора условного перехода.
Примеры использования оператора If.
If x> Max then Y:= Max else Y:=x;
Переменная Y получит значение переменной X, если только это значение не превышает Max, в противном случае Y станет равно max.
If x> Max then Max:=X;
Переменная Y всегда будет иметь значение переменной X, а в Max запоминается максимальное значение X.
Примечание. После оператора, стоящего перед зарезервированным словом ELSE, символ точка с запятой» (;) не ставится.
С использованием сложного условия:
WriteLn(‘значение n лежит в диапазоне 0..15’)
WriteLn (‘значение n меньше 0 или больше 15’).
Источник: infopedia.su
4.3. Оператор вывода
Базовая форма оператора вывода позволяет отобразить на экране значения переменных, АВ или констант, а также строки текста в апострофах. Оператор записывается в одной из следующих форм:
Элементы списка перечисляются через запятую.
Элементы списка выводятся в пользовательское консольное окно программы. Вещественные значения выводятся в экспоненциальной форме. Строки выводятся «как есть». После вывода работа программы продолжается со следующего оператора.
Оператор writeln отличается от write тем, что после вывода значения последнего элемента списка выполняется перевод курсора на следующую строку экрана.
1. Нужно дать пользователю возможность ввести с клавиатуры число, затем программа возведет это число в квадрат и выведет результат на экран.
writeln (‘Введите целое число:’);
writeln (‘Квадрат числа=’,a2);
Если ввести значение a=2, на экране будет напечатано
Символ |здесь и далее обозначает курсор. Видно, что оператор writeln перевел курсор на следующую строку.
После вывода результата выполнение программы продолжится, а если оператор writeln был в ней последним, то и завершится. Чтобы пользователь успел прочитать результат, следует в конце программы добавить оператор
который будет ждать нажатия клавиши Enter.
2. Требуется вывести на экран результаты решения квадратного уравнения: значения x1=1.5 и x2=2.5:
Пробел в строкой константе ‘_x2=’ нужен, чтобы значение x1 не слилось со строкой ‘x2=’. На экране будет напечатано:
x1= 1.5000000000E+00 x2= 2.5000000000E+00|
Курсор остался в конце строки, т.к. использована форма оператора write.
Вещественные числа читать в подобной форме неудобно, для их вывода используйте решение из следующего раздела.
4.4. Управление выводом данных
В операторе write или writeln вещественное значение (а также целое или строковое) зачастую удобнее записывать в виде:
Здесь ширина — целое положительное число, определяющее, сколько экранных позиций отводится для вывода всего числа. Ширина определена для числовых значений любого типа и строк.
Точность — целое положительное число, определяющее, сколько цифр из ширины отводится на вывод дробной части числа. Значение точности определено только для вещественных чисел. Оно не учитывает позицию десятичной точки. Разумные значения точности — от 0 до ширина-2 включительно. Недопустимые значения ширины и точности не будут учтены при выводе.
В качестве примера выведем на экран значения нескольких переменных:
На экране будет напечатано:
4.5. Вывод на печать
Иногда требуется, чтобы программа вывела результаты своей работы на принтер. Для этого достаточно выполнения двух условий. Первым оператором раздела описаний программы следует указать оператор uses printer;, подключающий стандартную библиотеку для работы с принтером, а первым параметром оператора write или writeln указать символическое имя принтера lst, описанное в библиотеке printer:
— строка ‘Hello’ выведена на экран,
— строка выведена на принтер.
Отличие между write и writeln сохраняется при выводе на принтер — то есть, при использовании writeln позиция печати на принтере будет переведена на следующую строку.
Здесь не приводится код, позволяющий проверить, готов ли принтер к печати и удалась ли операция вывода данных на него. Подобные проверки мы научимся делать, изучив стандартную функцию IoResult.
Источник: studfile.net
Разработка урока по теме «Организация ветвления на языке Паскаль»
методическая разработка по информатике и икт (9 класс) по теме
В разработке представлены конспект урока информатики в 9 классе по теме «Организация ветвления на языке Паскаль» и презентация к уроку.
Скачать:
![]() |
1.16 МБ |
Предварительный просмотр:
Урок в 9-м классе по теме «Организация ветвления на языке Паскаль»
Цели :
образовательная : закрепить знания учащихся об операторе ветвления и научить создавать программы на языке программирования Pascal, содержащие оператор ветвления.
развивающая : развитие логического, алгоритмического мышления, внимания, памяти, умения применять полученные знания при решении задач.
воспитательная : развитие познавательного интереса, умения работать самостоятельно.
Знать : структуру оператора ветвления в Паскале, с применением знаний разветвляющегося алгоритма.
Уметь: составлять программы на Паскале, содержащие оператор ветвления.
Тип урока: урок закрепления знаний по Паскалю и отработка заданий по программированию (по материалам ГИА, с применением информационных технологий).
Форма урока: комбинированная.
Методы обучения: объяснительно-демонстрационные, практические.
- интерактивная доска;
- правильно и полностью инсталлированные программы Windows;
- язык программирования Pascal;
- презентация урока, составленная в Power Point;
- карточки к самостоятельной работе;
- оценочный лист урока.
Межпредметные связи: информатика, математика, английский язык, литература
- Организационный момент.
Учитель. Здравствуйте, ребята!
Начну сразу с задания. Составьте алгоритм.
Есть два числа: А и В. Найдите наибольшее из них.
- Почему вы молчите?
- Что я пропустила самое главное в задании?
- Какие способы записи алгоритма вы знаете?
- Какие представлены на экране?
- Какого способа не хватает?
- Как вы думаете, какова тема сегодняшнего урока?
Сегодня на уроке мы продолжим знакомство с языком программирования Паскаль. И тема нашего сегодняшнего урока: «Организация ветвления на языке Паскаль»
Открыли тетради, записали число и тему урока .
Мы знакомы со многими операторами Паскаля, научились составлять линейные программы на языке Паскаль. Сегодня наша задача научиться составлять программы с ветвлением на Паскале.
Слайд 3
Тема: Организация ветвления на языке Паскаль.
2. Мотивация.
Учитель. А девизом к нашему сегодняшнему уроку послужат слова первого программиста Чарльза Беббиджа: “Я услышал и забыл, увидел и запомнил, сделал и понял!”
О чем говорят эти слова?
О том, что бы понять смысл какого-то явления или процесса нужно его сделать самому, пропустить через себя. А иначе мы можем только, в лучшем случае запомнить, а понять мы это не в силах, нам может только казаться, что мы поняли, но скоро мы все это забудем.
3. Проверка домашнего задания (задания ГИА).
У кого все правильно ставят в оценочный лист 4 б, 1 ошибка – 3 б и т. д. (Приложение 2)
4. Актуализации знаний.
Слайд 9
Повторение ранее изученного материала. Проверим свои знания.
Небольшая разминка . Блиц- опрос.
Каждый зарабатывает баллы.
- Какая геометрическая фигура обозначает в блок-схеме начало? (овал)
- Какой оператор описывает в алгоритмическом языке начало
- Какая геометрическая фигура обозначает в блок-схеме вывод результата (параллелограмм)
- Какой оператор описывает в программе на Паскале вывод результата (writeln)
- Назовите операторы ветвления в алгоритмическом языке
- Какой оператор описывает в программе на Паскале ввод данных (readln)
- Какая геометрическая фигура обозначает в блок-схеме проверку условия (ромб)
- Какой оператор описывает в программе задание переменных (var)
- Какой оператор определяет целочисленную переменную на Паскале (integer)
- Какой оператор описывает в программе начало (begin)
- Какой оператор описывает в программе конец (end)
- Какой оператор определяет в Паскале вещественные переменные (real)
- Какой оператор определяет в Паскале массив?
Выставили баллы в оценочные листы.
Задание по блок-схеме.
Задание на алгоритмическом языке.
Выставили баллы в оценочные листы.
5. Объяснение новой темы
Слайд 12
А теперь вспомните, пожалуйста, картину В. Васнецова “Витязь на распутье”. ( Рисунок 1 )
Давайте опишем эту картину: сидит витязь на коне перед камнем, на котором высечены слова: “Направо пойдёшь — коня потеряешь, налево пойдёшь – жизнь потеряешь”. Скажите, с точки зрения алгоритмизации и программирования, что написано на камне? ( Это ветвление в полной форме: если витязь пойдёт направо, то останется жив, если налево, то погибнет).
В жизни часто приходится принимать решения в зависимости от сложившейся ситуации. Если идёт дождь, мы наденем плащ, если солнечно и жарко, идём в легкой одежде. Встречаются и более сложные ситуации, когда в зависимости от того, выполняется или не выполняется то или иное условие, делается определённый выбор.
Даже пословицы порой содержат ветвление.
1. «Без труда не вытащишь и рыбку из пруда»
- Как вы понимаете её смысл?
- Примените к ней операторы полного ветвления.
2.Тише едешь, дальше будешь»,
3. «Делу –время, потехе – час».
А давайте вспомним слова из известной песни
Если у вас нет собаки, её не отравит сосед
И с другом не будет драки
Если у вас, если у вас
Если у вас друга нет.
Учитель: И так, мы с вами уже знаем, что алгоритмы бывают с ветвлениями или разветвляющиеся алгоритмы.
Слайд 13,14 Я вам напомню, что
Разветвляющийся алгоритм – это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.
Какие виды ветвления вы знаете ? (полное и неполное ветвление.)
Переходим к решению задач типа 9 ГИА 2013.
Для этого вспомним операции в алгоритмическом языке и языке Паскаль.
Открыли стр. 97 сборника, вариант 6, задание 9
Открыли стр. 106, вариант 7, задание 9.
Выставили баллы в оценочные листы.
7. Физкультминутка « Команды ветвления».
- Давайте немного отдохнём. Встали ровно. Смотрим на меня. Будьте внимательны:
- Если ты юноша, то выполняй ходьбу на месте, иначе выполни три наклона вперед.
- Если у тебя длинные волосы, то выполняй наклоны головы вперёд-назад, иначе влево и вправо.
- Если у тебя серые глаза, то выполняй наклоны влево и вправо, иначе – поворачивай туловище влево, вправо.
- Если ты ученик девятого класса, то встань ровно рядом со своей партой и приведи себя в порядок.
Слайд 16 -18 На языке программирования оператор ветвления в полной и неполной форме
IF (условие) THEN (операторы) ELSE (операторы); Давайте вернемся к началу урока.
Слайд 19. Запишем программу нахождения наибольшего из двух на языке программирования Паскаль. (Ученик у доски)
8. Формирование умений и навыков.
Слайд 20
Решим еще несколько задач.
Задача № 1: Ввести число. Если оно неотрицательно, вычесть из него 50, в противном случае прибавить к нему 100.
Задача № 2: Ввести 2 числа. Если их произведение отрицательно, умножить его на –2 и вывести на экран, в противном случае увеличить его в 3 раза и вывести на экран.
Задача № 3: Ввести 2 числа. Вычесть из большего меньшее.
Ответы: 1. If x>0 then y: =x-50 else y: =x+100;
2. If a*b 3. If A>B then C:=A-B else C:=B-A;
9. Практическая работа в среде Pascal. По уровням сложности. Выбирают сами ученики. (Приложение 1).
Пока учащиеся выполняют задание, учитель анализирует оценочные листы и ставит оценки.
10. Домашнее задание Слайд 21
Вариант 4 задачи 8,9,10,14, робот.
9. Итог урока. Рефлексия.
- Что для вас на уроке было знакомым?
- Как вы считаете над чем ещё надо поработать?
- Когда вы будете решать задания типа 9, 10 на каком языке вы это будете делать?
Итак подведём итог урока: Жизнь весьма разнообразна, и никто не может абсолютно все предусмотреть. Нам постоянно приходится принимать решения в зависимости от создавшейся ситуации, т.е. делать выбор. Вот и вы сейчас находитесь в такой ситуации.
Вы заканчиваете 9 класс и перед вами выбор, который вы должны сделать, то ли вы пойдете в 10 класс, то ли продолжите обучение в техникумах, училищах, колледжах. Конечно, этот выбор вы будете делать не самостоятельно, а с родителями. Я желаю вам, чтобы ваш выбор был правильным. И в любом случае оставайтесь хорошими, порядочными людьми. Спасибо за урок.
1 уровень сложности
1.Дано целое число А. Если значение А > 0, то необходимо увеличить его на единицу, иначе уменьшить на 1.
Протестировать программу для A=3, A=0, A=-12.
2 уровень сложности
1.Ввести два числа. Если их сумма больше 100, то сумму уменьшить в 2 раза, в противном случае увеличить в 2 раза.
Источник: nsportal.ru