Автор: учитель МКОУ Плесской СОШ Юдин А.Б. 2012 год (Версия для Pascal ABC)

Презентация:



Advertisements
Похожие презентации
ОПЕРАЦИИ И СТАНДАРТНЫЕ ФУНКЦИИ языка PASCAL. Темы: Операции Функции Приоритетность.
Advertisements

ОПЕРАЦИИ И СТАНДАРТНЫЕ ФУНКЦИИ языка PASCAL. Темы: Операции Функции Приоритетность.
Язык программирования Pascal. Структура программы Pascal Program имя программы; Uses раздел подключения модулей; Const раздел констант; Var раздел описаний.
Циклы в языке программирования Pascal
Колмыкова С.М. ЧИСЛЕННЫЕ ПЕРЕМЕННЫЕ И ТИПЫ ДАННЫХ Язык программирования PASCAL.
Арифметическое выражение описывает правило вычисления значения некоторой величины. Оно может содержать числа, переменные, функции. Объединенные знаками.
Язык программирования Pascal. Основные понятия Программа Компиляция Оператор Идентификатор Набор команд на языке программирования Перевод программы (целой)
Построение графиков функций на PascalABC
§ 28 Линейные массивы и работа с графикой на языке Pascal Глава 3. Программирование на языках JavaScript и Pascal.
2012 PASCAL Линейные программы. Домашнее задание «Треугольник» Написать программу нахождения площади и периметра прямоугольного треугольника по его катетам.
ЯЗЫК ПРОГРАММИРОВАНИЯ « ПАСКАЛЬ » Программирование на Паскале.
Основные понятия языка программирования. Арифметические операции + – * / целочисленное деление – div 30 div 4 = 7 остаток от деления – mod 30 mod 4 =
Выражения и функции в Паскале
Оператор присваивания. Основные операции во Free Pascal Урок 3 по программированию.
Арифметические выражения. Выражение - это формальное правило для вычисления некоторого значения. В зависимости от типа значения выражения можно разделить.
Структура программы. Программа на языке Pascal состоит из разделов: Заголовок Раздел описаний; Раздел операторов. Сначала следует определить ИД и результат.
Тема: « Линейные вычислительные алгоритмы. ». Язык Паскаль был разработан в 1970г. Никласом Виртом как язык обучения студентов программированию. Паскаль.
1 Программирование на языке Паскаль Тема 1. Введение.
Тема урока Команда присваивания. Арифметические операции и выражения. Стандартные функции.
Ипеременные и константы имеют своё собственное уникальное имя – идентификатор. И переменные и константы имеют своё собственное уникальное имя – идентификатор.
Транксрипт:

Автор: учитель МКОУ Плесской СОШ Юдин А.Б год (Версия для Pascal ABC)

Введение 1 Program n1; Uses Crt, GraphABC; Begin End. Заголовок программы Подключение дополнительных модулей Модуль для работы в текстовом режиме Модуль для работы с графикой Блок операторов CLRSCR; Оператор очистки экрана, от посторонних надписей. (Crt.TPU) // комментарии (пояснения)

Блок 1. Графические возможности Pascal ABC 2 Y X A x y A(, ) X Y A x y X max =640 Y max =400

Блок 1. Графические возможности Pascal ABC 3 Y X Line(,,, );X1Y1X2Y2 X1 Y1 X2 Y2 LineTo(, );X3Y3 X3 Y3

Блок 1. Графические возможности Pascal ABC 4 Y X Rectangle(,,, );X1Y1X2Y2 X1 Y1 X2 Y2 Circle(,, );XYR R X Y

Блок 1. Графические возможности Pascal ABC 5 Стандартные цвета задаются константами: clBlack – черный clWhite – белый clRed – красный clGreen – зеленый clBlue – синий clYellow – желтый SetPenColor(цвет); - установка цвета рисования

Блок 1. Графические возможности Pascal ABC 6 Виды линий задаются константами: psSolid psDash psDot psDashDot SetPenStyle(вид линии); - установка вида линии SetPenWidth(w); - устанавливает ширину линии, равную w пикселам. Только для SetPenWidth(1); толщина линии равна одному пикселю

Блок 1. Графические возможности Pascal ABC 7 Y X FloodFill(,, );цветXY X Y SetPixel( X, Y, цвет ); - закрашивает один пиксель

Блок 1. Графические возможности Pascal ABC 8 Y X TextOut(,, );'строка'XY X Y Точка (x,y) задает верхний левый угол прямоугольника, который будет содержать текст. строка

Блок 1. Графические возможности Pascal ABC 9 Задача 1. Составить программу изображающую прямоугольный параллелепипед ABCDA 1 B 1 C 1 D 1, и построить сечение через ребра AD и B 1 C 1. Program n1; Uses Crt, GraphABC; begin clrscr; End. Заготовка для программы, подключаем модуль графики.

Блок 1. Графические возможности Pascal ABC 10 Rectangle(50,100,210,300); Line(50,100,120,50); lineTo(280,50); lineTo(210,100); line(280,50,280,250); LineTo(210,300); lineTo(280,50); Рисуем видимые линии SetPenStyle(psDot); line(50,300,120,250); lineTo(120,50); lineTo(50,300); line(120,250,280,250); Рисуем невидимые линии А D BC А1А1D1 B1C1 TextOut(25,100,'A1'); TextOut(212,100,'D1'); TextOut(25,300,'A'); TextOut(212,300,'D'); TextOut(120,30,'B1'); TextOut(280,30,'C1'); TextOut(125,230,'B'); TextOut(285,230,'C'); Выводим названия вершин

Блок 1. Графические возможности Pascal ABC 11 Задача 2. Составить программу выводящую на экран следующее изображение.

Блок 2. Линейная вычислительная программа 12 Var ABC A,A,В,С :тип данных IntegerReal Подготовили в памяти три переменных для хранения целых чисел ; 2 байта

Блок 2. Линейная вычислительная программа 13 Тип ДиапазонРазмер в байтах Byte Word Integer LongInt Числа с плавающей запятой: Целые числа Тип Диапазон Размер в байтах Real2, , double , Extended3, ,

Блок 2. Линейная вычислительная программа 14 Переменная Операция присваивания 9 Значение := - знак присваивания имя := значение А:=5; А:=B+5; А:=B+C; А:=C;

Блок 2. Линейная вычислительная программа 15 Переменная 9 Значение WriteLn - вывод информации на экран 9 WriteLn(A) WriteLn('A') - выводит содержимое переменной А - выводит на экран букву А

Блок 2. Линейная вычислительная программа 16 WRITELN('Надпись'); WRITELN(A:10:5); WRITELN('Надпись=',A:10:5); WRITELN(A:10); WRITELN(A); Выводим число в стандартном виде Выводим поясняющую надпись и десятичную дробь Выводим десятичную дробь Выводим поясняющую надпись Выводим целое число

Блок 2. Линейная вычислительная программа 17 WriteLn('1-я строка'); WriteLn('2-я строка'); WriteLn('3-я строка '); Write('1-я строка'); Write('2-я строка'); Write('3-я строка '); Окончание LN указывает, что следующая выводимая на экран информация будет выводится с новой строки

Блок 2. Линейная вычислительная программа 18 Переменная Значение Клавиатура 9

Блок 2. Линейная вычислительная программа 19 ReadLn(a) - ввод информации с клавиатуры в переменную А Write('Введите А='); ReadLn(a); Выводим поясняющую надпись, что вводить Ждем, пока пользователь не введет с клавиатуры значение А и нажмет Enter Write('Введите силу '); ReadLn(F); Write('Введите массу '); ReadLn(m); Write('Введите время '); ReadLn(t);

Блок 2. Линейная вычислительная программа 20 Запись математических выражений Математическая запись Строчная запись SQRT(x+2) x2x2 SQR(x) или х*х (2 – x) / (y + 5) ABS(x – 2) exex EXP(x) ln X Ln(X)

Блок 2. Линейная вычислительная программа 21 Математическая запись Строчная запись sin X SIN(x) cos X COS(x) tg X SIN(x) / COS(x) ctg X COS(x) / SIN(x) Arctg X ArcTan(x) sin 2 X SQR(SIN(x)) sin X 2 SIN(X*X) Запись тригонометрических функций

Блок 2. Линейная вычислительная программа 22 Функция Назначение Frac(x) Дробная часть числа Int(x)Целая часть числа Random(N)Псевдослучайное число в интервале [0, N) Round(x)Округление до ближайшего целого Trunc(x)Отбрасывание дробной части числа Используется для преобразования из дробного к целому типу

Блок 2. Линейная вычислительная программа 23 y:=(2*(x*x-4)+1)/sqrt(x*x-3*x); y:=abs(x*x*x-3*x)/(sqrt(x)+4);

Блок 2. Линейная вычислительная программа 24 x1:=(-b+sqrt(D))/2*a; ? x1:=(-b+sqrt(D))/(2*a);

Блок 2. Линейная вычислительная программа 25 Задача 3. (Алгебра 8 класс.Ю.Н. Макарычев. Стр. 123, 556) Найдите значение выражения, при а = -1,5. (Ответ: 7,5) Program n1; Uses Crt; var a,b:real; begin clrScr; a:=-1.5; b:=(a-(2*a-1)/a)/((1-a)/(3*a)); writeln(b:10:5); end. Объявляем в памяти две переменных Очищаем экран от посторонних надписей Устанавливаем начальное значение А Вычисляем значение выражения Выводим результат на экран

Блок 2. Линейная вычислительная программа 26 Начало а = - 1,5 Вывод B Конец a:=-1.5; begin clrScr; b:=(a-(2*a-1)/a)/((1-a)/(3*a)); writeln(b:10:5); end.

Блок 2. Линейная вычислительная программа 27 Задача 4. Даны стороны прямоугольника a и b. Найти его площадь S=a*b и периметр P=(a+b)*2. Program n1; Uses Crt; Var a,b,s,p:Real; begin ClrScr; Write('ВВеди сторону А = '); Readln(a); Write('ВВеди сторону B = '); Readln(b); S:=a*b; P:=2*(a+b); Writeln(' S = ',S: 10: 5); Writeln(' P = ',P: 10: 5); end. Подключаем модуль CRT.TPU Выводим результаты на экран Описаны четыре переменных действительного типа Очищаем экран от посторонних надписей Вводим с клавиатуры значения переменных А и В Вычисляем площадь и периметр

Блок 2. Линейная вычислительная программа 28 Начало Ввод А, В S=ab P=2(a+b) Вывод S,P Начало Write('ВВеди сторону А = '); Readln(a); Write('ВВеди сторону B = '); Readln(b); Выводим поясняющую надпись, что вводить Ждем ввода значения переменной А с клавиатуры S:=a*b; P:=2*(a+b); Writeln(' S = ',S: 10: 5); Writeln(' P = ',P: 10: 5);

Блок 2. Линейная вычислительная программа 29 Задача 5. Составить программу обмена значениями двух переменных. (Например: если А=1 а В=3 то при выводе А должно выводиться 3, а при выводе В должно выводиться 1.) АВ t t:=A; A:=B; B:=t; Алгоритм

Блок 2. Линейная вычислительная программа 30 A:= A + B;A = = 4 A = B = B:= A – B;B = 4 – 3 = 1 A:= A – B;A = 4 – 1 = 3 А можно ли без дополнительной переменной?

Блок 2. Линейная вычислительная программа 31 Задача 6. Дано число а. Не используя никаких операций, кроме умножения, и никаких функций получите а 8 за три операции и а 10 за четыре операции. a 2a 2 = a 2+2 = a 4 a 4a 4 = a 4+4 = a 8 aa = a 1+1 = a 2 a na m =a n+m c:=a*a; b:=c*c; d:=b*b; a 8a 2 = a 8+2 = a 10 m:=d*c;

Блок 2. Линейная вычислительная программа 32 Program n3; Uses Crt; var a,c,b,d,m:integer; Begin ClrScr; Write('ВВеди А = '); Readln(a); c:=a*a; b:=c*c; d:=b*b; writeln(a, ' в 8 степени = ',d:8); m:=d*c; writeln(a, ' в 10 степени = ',m:8); end.

Блок 2. Линейная вычислительная программа 33 Задача 7. Составить программу вычисляющую x y. Где x – основание степени, а y – показатель степени. Program n1; Uses Crt; var a,x,y:real; begin clrScr; Write('Введи x= ');Readln(x); Write('Введи y= ');Readln(y); a:=exp(y*ln(x)); writeln(a); end.

5 DIV MOD Блок 2. Линейная вычислительная программа 34 DIV – операция целочисленного деления MOD – остаток от деления целого на целое 11 DIV 2 = 5 11 MOD 2 = DIV 10 = 2 - целочисленное деление на 10 уменьшает число на один разряд 25 MOD 10 = 5 - остаток при делении на 10 выделяет последний разряд

Блок 2. Линейная вычислительная программа 35 Задача 8. Дано трехзначное число. Определить сумму цифр этого числа. Математическая модель: а – исходное число с:= a mod – исходное число c = 256 mod 10 = 6 a:= a div 10 a = 256 div 10 = 25 d:= a mod 10d:= 25 mod 10 = 5 a:= a div 10a:= 25 div 10 = 2 S:= c + d + aS:= = 13

Блок 2. Линейная вычислительная программа 36 Program n1; Uses Crt; var a,b,c,d,s:Integer; begin clrScr; Write('Введи A= ');Readln(a); c:= a mod 10; a:= a div 10; d:= a mod 10; a:= a div 10; S:= c + d + a; writeln('S =',S:5); end. Вводим трехзначное число Производим необходимые операции Выводим сумму на экран

Блок 3. Геометрические построения. 37 Задача 9. С клавиатуры вводятся стороны прямоугольника и масштаб. Необходимо построить этот прямоугольник увеличив в соответствии с масштабом а b (x+a,y)(x,y) (x,y-b) (x+a,y-b) Y X

Блок 3. Геометрические построения 38 Program n1; Uses Crt,GraphAbc; var a,b,m,x,y:Integer; begin clrScr; Write(Введи длину ');Readln(a); Write(Введи ширину ');Readln(b); Write(введи масштаб ');Readln(m); x:=10; y:=300; a:=a*m; b:=b*m; line(x,y,x+a,y); line(x,y,x,y-b); line(x+a,y,x+a,y-b); line(x,y-b,x+a,y-b); end. Подключаем модуль графики Вводим стороны и масштаб Устанавливаем координаты базовой точки Увеличиваем стороны в соответствии с масштабом Рисуем линии с использованием метода базовой точки line(x,y,x,y-b); lineTo(x+a,y-b); lineTo(x+a,y); lineTo(x,y); Можно построить прямоугольник, как замкнутую ломаную линию Rectangle(x,y,x+a,y-b); Можно построить прямоугольник, используя процедуру построения прямоугольника в виде рамки по диагонали

Блок 3. Геометрические построения 39 Задача 10. С клавиатуры вводятся стороны равнобедренного треугольника и масштаб. Необходимо построить этот треугольник увеличив в соответствии с масштабом. Y X а b c С(x,y) B(x+a,y) A(x+(a div 2),?) M(x+(a div 2),y)

Блок 3. Геометрические построения 40 Из треугольника CMA – прямоугольного по теореме Пифагора, найдем катет МА. CA=b, СM= a div 2 Так как скорее всего МА будет выражаться дробным числом, то применим функцию преобразования типов TRUNC A(x+(a div 2),y-MA) Точка А будет иметь координаты:

Блок 3. Геометрические построения 41 Задача 11. С клавиатуры вводятся стороны треугольника и масштаб. Необходимо построить этот треугольник увеличив в соответствии с масштабом Y X а b c С(x,y) B(x+a,y) A(?,?) M

Блок 3. Геометрические построения 42 Решим геометрическую задачу СВ = а СМ = x MB = a - x В треугольниках СМА и АМВ катет АМ общий cm:=trunc((b*b-c*c+a*a)/(2*a));

Блок 3. Геометрические построения 43 Из треугольника CMA, прямоугольного, по теореме Пифагора: MA:=trunc(sqrt(b*b-CM*CM)); A(x+cm,y-ma) line(x,y,x+a,y); line(x,y,x+cm,y-ma); line(x+cm,y-ma,x+a,y); Построим треугольник