Практическая работа "Составление программ линейной структуры"

  • Лабораторные работы
  • docx
  • 29.10.2018
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Урок 191-192 Тема 1.8 Разработка программного обеспечения Практическая работа №42 «Составление программ линейной структуры» Цель выполнения практической работы: изучить структуру программы на языке Pascal, операторы присваивания, ввода и вывода данных Задачи урока: образовательная - обеспечить формирование и использование студентами знаний по составлению линейных алгоритмов; развивающая – навыки использования прикладного программного обеспечения; умение решать информационные задачи. воспитательная - сформировать у студентов готовность к информационно-учебной деятельности.Практическая работа "Составление программ линейной структуры"
Иконка файла материала 191-192.docx
МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Урок 191­192 Тема 1.8 Разработка программного обеспечения  Практическая работа №42 «Составление программ линейной структуры» Цель выполнения практической работы: изучить структуру программы на языке Pascal, операторы присваивания, ввода и вывода данных Задачи урока:  образовательная  ­ обеспечить формирование и использование студентами знаний по составлению линейных алгоритмов; развивающая   –    навыки   использования   прикладного   программного   обеспечения; умение решать информационные задачи. воспитательная  ­  сформировать у студентов готовность к информационно­учебной деятельности. Материалы и оборудование к уроку:  задание на практическую работу. Тип урока: практическое занятие Форма проведения урока: традиционная План урока:  Организационный момент.  Постановка темы и цели урока.  Подготовка к выполнению практической работы.  Выполнение практической работы.  Подведение итогов. Выставление оценок. Ход урока: 1. Организационный момент (5 мин) 2. Постановка темы и цели урока (5 мин) 3. Подготовка к выполнению практической работы (20 мин) 4. Выполнение практической работы (50 мин) 5. Подведение итогов, проверка работ (5 мин) 6. Выставление оценок (5 мин)МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Практическая работа №42 «Составление программ линейной структуры» Цель выполнения практической работы: изучить структуру программы на языке  Pascal, операторы присваивания, ввода и вывода данных Краткие теоретические сведения  Структура программы на языке Pascal Программа на языке Turbo Pascal 7.0 имеет следующие разделы: РАЗДЕЛ ОБЪЯВЛЕНИЙ program {$…} uses label const type var РАЗДЕЛ ПРОЦЕДУР И ФУНКЦИЙ Заголовок программы Глобальные директивы компилятора Подключаемые библиотеки (модули) Раздел объявления глобальных меток Раздел объявления глобальных констант Раздел объявления глобальных типов Раздел объявления глобальных переменных Procedure (function) Заголовок процедуры (функции) {тело  процедуры} Основной блок программы РАЗДЕЛ ОСНОВНОГО БЛОКА  ПРОГРАММЫ begin end.   В тексте программы могут присутствовать комментарии. Это невыполняемая часть  программы, она не компилируется в машинные коды и составляются программистом  для пояснения работы программы, её элементов, операторов и т.д.. Комментарии  оформляется как произвольный текст, ограниченный с двух сторон фигурными  скобками ­ {…} или звёздочками ­ * …*. Операторы языка Pascal Оператором называется элементарная структурная единица программы. Он  предназначен как для записи алгоритмических действий по преобразованию данных,  так и для задания порядка выполнения действий (операций) программы. Операторы  автоматически выполняются в порядке их следования в программе и отделяются  друг от друга символом "точка с запятой". Операторы делятся на: ∙ простые (не содержат в себе других операторов); ∙ составные (включают в себя один или несколько дополнительных операторов).МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Оператор присваивания С помощью данного оператора определяется или переопределяется значение  переменной языка Pascal – присваивается значение переменной или вычисляется  выражение. Формат (синтаксис) оператора: <имя>:=<выражение>; Выражение должно быть совместимо по присваиванию с типом переменной. Примеры: X:=Pi; Y:=Sqr(Z*Z+T*T); Bool:=(I>1) or (I<3); Операторы ввода данных Операторы ввода предназначены для ввода исходных данных в программу и имеют  вид: READ(X,Y,Z,...); READLN(X,Y,Z,...); где: X,Y,Z,... ­ имена переменных. Данные операторы обеспечивают ввод данных с  клавиатуры и присваивают переменным X,Y,Z,... их значения, вводимые с  клавиатуры. Оператор READLN (X,Y,Z,...) отличается от READ(X,Y,Z,...) тем, что после ввода  последней переменной курсор переводится в начало новой строки. Допускается  использование оператора ввода без параметров: READLN; , который используется  для останова программы. Операторы вывода данных Для вывода данных на экран используются операторы: WRITE (X,Y,Z,...); WRITELN (X,Y,Z,...); WRITELN ; где: X,Y,Z,... ­ имена переменных, значения которых подлежат выводу Оператор WRITE(X,Y,Z,...) выполняет вывод на экран значений переменных X,Y,Z,... в одну строку.МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Оператор WRITELN (X,Y,Z,...) кроме вывода на экран значений X,Y,Z,...,  осуществляет перевод курсора в начало новой строки после вывода последнего  значения. Оператор WRITELN осуществляет пропуск строки, в которой находится курсор, к  началу новой строки (выводит пустую строку). Операторы вывода допускают использование указания о ширине поля, отводимого  под значение в явном виде: WRITE (Y:m:n,X:k:l,...); WRITELN (Y:m:n:,X:k:l,...); где m и k ­ количество позиций, отведенных под запись значения переменных Y и X  соответственно; n и l ­ количество позиций, отведенных под запись дробной части  чисел Y и X. Примеры: WRITE('Сумма = ',Sum); {вывод на экран текста «Сумма = », затем значения суммы,  которое хранится в переменной Sum} WRITELN('Введите ',I,'­й элемент: '); WRITELN (t:5:3); ­ вывод значения t, всего 5 символов, из них 3 – после запятой. Стандартные функции Pascal Стандартными функциями языка программирования Pascal приведены в табл. 1 Таблица 1: Имя  функции Выполняемая операция ABS(X)   SQR(X) SQRT(X) SIN(X) Вычисляет модуль аргумента х, тип х – вещественный или целый, тип  результата совпадает с типом аргумента Вычисляет квадрат аргумента (х2), тип х – вещественный или целый,  результат совпадает с типом аргумента Вычисляет корень квадратный из аргумента х (х>0); тип х – вещественный или целый, тип результата вещественный Вычисляет синус аргумента х (х – в радианах); тип х – вещественный или  целый, тип результата вещественный Вычисляет косинус аргумента х (х – в радианах); тип х – вещественный  или целый, тип результата вещественный   COS(X) ARCTG(X) Вычисляет арктангенс аргумента х (х – в радианах); тип х –  EXP(X) вещественный или целый, тип результата вещественный Возведение числа е=2,71828 в степень х (ех), тип х – вещественный или  целый, тип результата вещественныйМДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры»   EXP10(Х) Возведение числа 10 в степень х (10х), тип х – вещественный или целый, тип  результата вещественный Вычисляет натуральный логарифм аргумента х (х>0); тип х – вещественный  или целый, тип результата вещественный LN(X) LOG(X) Вычисляет логарифм по основанию 10 аргумента х (х>0); тип х –  вещественный или целый, тип результата вещественный Эти функции содержатся в памяти среды программирования Pascal и являются  подпрограммами вычисления наиболее используемых функций итерационными  методами.МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Примеры составления линейной программы Пример 1 Найти среднее арифметическое трёх чисел ­ двух целых (X и Y) и одного  вещественного (Z) и квадрат среднего арифметического. Программа: program Midding; Var X, Y: Integer; Z, Midd, SqrMidd: Real; Begin WriteLn('Введите два целых числа X и Y:'); ReadLn(X,Y); WriteLn('Введите вещественное число Z:'); ReadLn(Z); Midd:=(X+Y+Z)/3; SqrMidd:=SQR(Midd) Writeln('Среднее арифметическое = ',Midd); Write('Квадрат среднего арифметического = ',SqrMidd); End.   Описание программы В заголовке указано имя программы ­ Midding (среднее), затем словом var  открывается раздел описания переменных: X и Y – целые, Z – вещественная. Слово  begin открывает основной блок программы, в котором: ▪ ▪ присваивает их соответственно целым переменным X и Y; ▪  далее выводится текст "Введите вещественное число Z:", оператор ReadLn(Z)считывает значение числа, введённого с клавиатуры и  присваивает его вещественной переменной Z;  оператор WriteLn выводит на экран текст "Введите два целых числа X и Y:";  оператор ReadLn(X,Y)считывает значения чисел, введённых с клавиатуры иМДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры»  затем оператор присваивания вычисляет среднее значение X,Y,Z и присваивает его  оператор Write выводит текст "Квадрат среднего арифметического = " и   оператор end. закрывает основной блок и завершает выполнение программы. ▪ переменной Midd, затем аналогично вычисляется квадрат этой величины и  присваивается переменной SqrMidd; ▪  оператор Writeln выводит текст "Среднее арифметическое = ", рассчитанное значение Midd и переводит курсор на новую строку; ▪ рассчитанное значение SqrMidd; ▪ Пример 2. Вычислить площадь круга S и длину окружности L по заданному радиусу  R. Программа program KRUG; const P=3.14159 Var R,S,L:Real; Begin Read(R);{ввод значения радиуса} L:=2*P*R; S:=P*SQR(R); Writeln(Длина окружности = ',L,'см'); Write('Площадь круга = ',S,'кв.см'); End.МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Задание 1.  Вычислить расстояние между двумя точками с данными координатами X1, Y1, X2, Y2. Задание 2. Определить расстояние, пройденное физическим телом за время t, если тело движется с постоянной скоростью v. Задание   3.  В   году   примерно   3.156х107сек.   Написать   программу,   которая запрашивает возраст в годах и переводит его в секунды. Задание   4.  Создать   программу   для   вычисления   площади   поверхности   и   объема цилиндра по принципу "ввод значений ­> результат" Задание 5. Масса m одной молекулы воды примерно равна 3.0х10­23гр. Кварта воды равна примерно 950 гр. Написать программу, которая запрашивает количество воды в квартах и выводит число молекул в этом количестве воды.МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Вопросы для самоконтроля: 1. Из каких разделов состоит любая программа на языке Pascal? 2. Формат и назначение оператора присваивания. 3. Формат и назначение операторов ввода данных. 4. Формат и назначение операторов вывода данных.МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» Задание 1. Решение задачи: Для начала продумаем наше решение. Введем координаты , потом просто подставим в  формулу, которая находит расстояние между двумя точками. Для того чтобы решить задачу нам понадобятся следующее переменные : 1. Переменные X1, Y1, X2, Y2 — для координат 2. Переменная distance — для расстояния. До решения, давай напишем формулу которая находит расстояние между двумя  точками на координатной плоскости : Каркас программы: 1 2 3 4 5 6 7 8 Var    X1, Y1, X2, Y2, distance: Real; begin      write('Введите X1 : '); readln(X1);      write('Введите Y1 : '); readln(Y1);       write('Введите X2 : '); readln(X2);       write('Введите Y2 : '); readln(Y2);   end. Ну тут мы просто попросили пользователя ввести все координаты, да и обратите  внимание что у нас все числа типа real, так как координаты могут быть не только (1, 2,  3, 4 .. и т.д.), но и еще (2.3, 1.3, 5.1 и т.д.), т.е. не целые. Ну а дальше просто пишем формулу на языке pascal : 1 distance := Sqrt(Sqr(X2 ­ X1) + Sqr(Y2 ­ Y1)); Вот и всё. Теперь осталось только вывести результат. Всё решение задачи Pascal : 1 2 3 4 uses crt; var    X1, Y1, X2, Y2, distance: Real; // объявлением переменные begin      clrscr; // очищаем экранМДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры»        write('Введите X1 : '); readln(X1); // вводим координаты       write('Введите Y1 : '); readln(Y1); // вводим координаты       write('Введите X2 : '); readln(X2); // вводим координаты       write('Введите Y2 : '); readln(Y2);  // вводим координаты              distance := Sqrt(Sqr(X2 ­ X1) + Sqr(Y2 ­ Y1)); // считаем расстояние      writeln('Расстояние равно : ' , distance:2:2); // выводим результат        readln; // чтобы программа не закрывалась end. 5 6 7 8 9 10 11 12 13 14 15 16 Вот результат : Задание 2. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 var   v0, a, t : integer;   s : real; begin   repeat     writeln('введите v0');     readln(v0)   until v0 > 0;   repeat     writeln('введите t');     readln(t)   until t > 0;   repeat     writeln('введите a');     readln(a)МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» 16 17 18 19 20 21 22   until a > 0;   s := v0 * t + (a * sqr(t) / 2);   writeln('за время ', t,   'сек. точка при ускорении ', a,   'м/с^2 и начальной скорости ' , v0,   'м/с пройдет расстояние: ', s, 'м') end. Задание 3. 1 2 3 4 5 6 7 8 const     SIY = 3.156E7; var     year: Real; begin     Write('Введите возраст в годах: '); ReadLn(year);     Write('Возраст в седундах: ', SIY * year:0:0); end. Задание 4. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 program _1; uses crt; var   radius, vysota:real; begin   ClrScr;   TextColor(14);   Writeln('Вычисление объема цилиндра.');   Writeln('Введите исходные данные:');   write('радиус основания ­> ');   readln(radius);   write('высота цилиндра ­> ');   readln(vysota);   writeln('Объем цилиндра: ',(2*pi*radius*radius*vysota):7:2);   Repeat   Until KeyPressed; end. PascalВыделить код 1 2 3 4 5 6 7 8 9 10 11 program _2; uses crt; var   radius, vysota:real; begin   ClrScr;   TextColor(14);   Writeln('Вычисление площади поверхности цилиндра.');   Writeln('Введите исходные данные:');   write('радиус основания ­> ');   readln(radius);МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» program _1; uses crt; var   radius, vysota:real; begin   ClrScr;   TextColor(14);   Writeln('Вычисление объема цилиндра.');   Writeln('Введите исходные данные:');   write('радиус основания ­> ');   readln(radius);   write('высота цилиндра ­> ');   readln(vysota);   writeln('Объем цилиндра: ',(2*pi*radius*radius*vysota):7:2);   Repeat   Until KeyPressed; end. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 12 13 14 15 16 17   write('высота цилиндра ­> ');   readln(vysota);   writeln('Объем цилиндра: ', (2*pi*radius*radius+2*pi*radius*vysota):7:2);   Repeat   Until KeyPressed; end. PascalВыделить код 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 program tt; uses crt; const   Pi=3.14; var   r,h:integer;   s,v:real; begin   write('Введите r= ');   readln(r);   write('Введите h=');   readln(h);   S:=2*Pi*r*(h+r);   V:=Pi*sqr(r)*h;   writeln('Площадь равна ',S);   writeln('Объем равен ',V);   readln; end. 2 romcka-x 126 / 94 / 74 Регистрация: 18.01.2011 Сообщений: 226 14.02.2011, 18:25 4МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Практическая работа №42 «Составление программ линейной структуры» program _1; uses crt; var   radius, vysota:real; begin   ClrScr;   TextColor(14);   Writeln('Вычисление объема цилиндра.');   Writeln('Введите исходные данные:');   write('радиус основания ­> ');   readln(radius);   write('высота цилиндра ­> ');   readln(vysota);   writeln('Объем цилиндра: ',(2*pi*radius*radius*vysota):7:2);   Repeat   Until KeyPressed; end. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 PascalВыделить код 1 2 3 4 5 6 7 8 9 10  uses crt;  var s,v,r,h:real;  begin  write('высота цилиндра = '); readln(h);  write('радиус цилиндра = '); readln(r);  v:=2*pi*r*(h+r);  s:=pi*r*r*h;  writeln('Площадь = ',s);  writeln('Объем = ',v);  end.МДК 02.01 «Разработка внедрение и адаптация программного обеспечения отраслевой направленности» Задача 5. Практическая работа №42 «Составление программ линейной структуры»  program z1; var a,cv,b,c:real;     m:real; begin writeln ('введите a­количество воды в квартах'); readln (a); writeln('введите cv­кварт воды в граммах'); readln (cv); writeln ('введите m­масса одной молекулы воды'); readln (m); b:=a*cv; writeln(b); c:=b/m; writeln(c); end. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Посмотрите также