ü научиться составлять простейшие программы в среде программирования Pascal ABC.NET.
Обеспечение работы:
ü ПК с установленными необходимыми программами для работы (MS Word, Pascal ABC.NET);
ü методические указания к выполнению работы (электронный вариант).
ü видео-уроки по основам программирования на языке Pascal.
Порядок выполнения работы:
1. Ознакомиться с теоретическим материалом данных методических указаний;
2. Просмотреть видео уроки по основам программирования на языке Pascal;
3. Выполнить три задания, которые приведены в разделе VI. Порядок выполнения работы;
4. Ответить на контрольные вопросы, сделать выводы.
5. Оформить отчет.
Содержание отчета:
ü тема, цель и порядок выполнения работы;
ü привести все выполненные задания (1,2,3) с кратким объяснением;
ü начертить блок-схемы к программам и предоставить программный код;
ü написать переведенные формулы из математики в Pascal;
ü ответы на контрольные вопросы;
Информатика 8 класс (Урок№15 — Запись ветвлений на языке Паскаль.)
Теоретические положения
I. ЯЗЫК ПРОГРАММИРОВАНИЯ PASCAL ABC. NET
Паскаль (англ. Pascal) — один из наиболее известных языков программирования, используется для обучения программированию в старших классах и на первых курсах вузов, является базой для ряда других языков.
Язык Паскаль был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа. Первая публикация Вирта о языке датирована 1970 годом; представляя язык, автор в качестве цели его создания указывал построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные.
Turbo Pascal (Турбо Паскаль) — это система программирования, созданная для повышения качества и скорости разработки программ (80-е гг.). Слово Турбо в названии системы программирования — это отражение торговой марки фирмы-разработчика Borland International (США).
Систему программирования Турбо Паскаль называют интегрир ованной (integration — объединение отдельных элементов в единое целое) средой программирования, т.к. она включает в себя редактор, компилятор, отладчик, имеет сервисные возможности.
Немного позже был разработан язык программирования PascalABC.NET.
PascalABC.NET — это язык программирования Паскаль нового поколения, включающий классический Паскаль, большинство возможностей языка Delphi, а также ряд собственных расширений. Он реализован на платформе Microsoft.NET и содержит все современные языковые средства: классы, перегрузку операций, интерфейсы, обработку исключений, обобщенные классы и подпрограммы, сборку мусора, лямбда-выражения, средства параллельного программирования.
Pascal ABC.NET является мультипарадигменным языком: на нем можно программировать в структурном, объектно-ориентированном и функциональном стилях.
Программа -тест на языке паскаль
Pascal ABC.NET — это также простая и мощная интегрированная среда разработки, поддерживающая технологию IntelliSense, содержащая средства автоформатирования, встроенный отладчик и встроенный дизайнер форм. Кроме того, консольный компилятор Pascal ABC.NET функционирует на Linux и MacOS под Mono.
Рис. 2.1 – Виды алгоритмов
Линейный алгоритм — алгоритм (набор команд, указаний), действия в котором выполняются последовательно друг за другом.
Разветвляющийся алгоритм — алгоритм, (содержащий хотя бы одно условие), действия в котором выполняются в зависимости от логического условия
Циклический алгоритм — алгоритм, предусматривающий многократное повторение одного и того же действия (одних и тех же операций).
Вспомогательный (подчиненный) алгоритм (процедура) — алгоритм, ранее разработанный и целиком используемый при алгоритмизации конкретной задачи. В некоторых случаях при наличии одинаковых последовательностей указаний (команд) для различных данных с целью сокращения записи также выделяют вспомогательный алгоритм.
Структура паскаль-программы
Первая строка – заголовок программы. Название программы (или имя программы) указывается после служебного слова Program. Имя может быть любым.
2. Блок определения переменных (блок Var)
Var – начало блока определения переменных. Здесь указывают 2 вещи:
— через двоеточие указывается тип используемых переменных (тип данных).
Типов данных существует большое множество, приведем некоторые из них, табл. 1
Типы данных
Основной блок
Между служебными словами Begin и End. располагается как раз сама программа. Сама программа – последовательность команд, которые должен выполнять компьютер.
Writeln – приказ вывести на экран заключенную в скобки информацию.
Readln – ожидает ввода с клавиатуры информации и заности введенную с клавиатуры информацию в переменную с соответствующим именем.
Задание 1. Тестирование готовой программы.
Для проверки работы готовой программы, необходимо выполнить следующие действия:
1. Запустите программу Pascal ABC.NET (Пуск – Все программы — Pascal ABC.NET).
2. Скопируйте код программы «Summa», из раздела IV.Т естирование готовой программы.
3. Вставьте код программы «Summa» в окноPascal ABC.NET —
4. Ознакомьтесь со всеми операторами и комментариями в программном коде.
5. Запустите программу на выполнение, нажав кнопку Выполнить.
6. В нижней части окна – «Окно вывода», введите данные первого и второго числа, на своё усмотрение.
7. Запишите полученный результат.
Задание 2. Написание линейного алгоритма
Согласно варианта по журналу составить простейшую линейную программу, на решение геометрической задачи. Пример программы представлен в разделе III. Линейная программа в PascalABC.NET.
Варианты к заданию
Вариант | Условие | |
1 | Даны стороны прямоугольника а=40, b =60, определить чему равна площадь прямоугольника? ![]() |
![]() |
2 | Дана длина стороны квадрата Н=20 и диагональ квадрата d =27, определить чему равна площадь квадрата? ![]() ![]() |
![]() |
3 | Дана высота трапеции h=20 и основания трапеции а=40, b=80, определить чему равна площадь трапеции? ![]() |
![]() |
4 | Дана высота параллелограмма h=30 и основание а=20, определить чему равна площадь параллелограмма? ![]() |
![]() |
5 | Дан радиус окружности круга r=85, определить чему равна площадь окружности круга? ![]() |
![]() |
6 | Даны радиус вращения конуса r=20 и образующая конуса l=70, определить чему равна полную площадь поверхности круглого конуса? ![]() |
![]() |
7 | Дана высота ребра куба H=45, определить чему равна площадь поверхности куба? ![]() |
![]() |
8 | Даны катеты треугольника а=30 и b =40 определить чему равна площадь прямоугольного треугольника? ![]() |
![]() |
9 | Дана длина диагоналей ромба d 1=25, d 2=35, определить чему равна площадь ромба? ![]() |
![]() |
10 | Дан радиус сферы R =75, определить чему равна площадь поверхности сферы? ![]() |
![]() |
11 | Даны радиус цилиндра r=20 и высота цилиндра h=95, определить чему равна площадь боковой поверхности круглого цилиндра? ![]() |
![]() |
12 | Дана длина дуги сектора р=10 и радиус сектора r =15, определить чему равна площадь сектора круга? ![]() |
![]() |
13 | Даны периметр нижнего основания правильной усеченной пирамиды (ABCDE) p1=10, периметр верхнего основания правильной усеченной пирамиды (abcde) p2=20, апофема правильной усеченной пирамиды (OS) a=5, определить чему равна боковая поверхность правильной усеченной пирамиды? ![]() |
![]() |
14 | Даны внешний радиус кольца R =60 и внутренний радиус кольца r =25, определить чему равна площадь кольца через радиусы? ![]() |
![]() |
Задание 3. Перевод функции
Согласно варианта по журналу осуществить перевод функции, опираясь на раздел методических указаний V. Перевод математических выражений на язык Pascal.
Варианты к заданию
Вар | Функция | Вар | Функция | Вар | Функция |
1 | 11 | 21 | g = f(х 2 +1). | ||
2 | 12 | I=с 2 — d 2 | 22 | y = ax 2 + bx + c | |
3 | 13 | Y=x 2 +4x-4 | 23 | y = a x | |
4 | 14 | Y=cosx+4ac | 24 | ||
5 | y = log a | 15 | 25 | ||
6 | 16 | 26 | |||
7 | 17 | 27 | |||
8 | 18 | 28 | |||
9 | 19 | Y=sinx+8ac | 29 | ||
10 | 20 | 30 |
Контрольные вопросы
1. Укажите символы арифметических операций.
2. В каких конструкциях языка используется символ точки?
3. Какая группа символов является знаком присвоения?
4. Укажите назначение символа “;”.
5. Номеруется ли каждая строка программы?
6. В каких конструкциях языка используются круглые скобки?
7. В каких конструкциях языка используются квадратные скобки?
8. Подсчитайте количество операций отношения.
9. Укажите конструкцию языка, в которой необходимо наличие пробела?
10. Как записать наибольшее и наименьшее числа; положительное наименьшее число, не равное нулю?
Литература
1. Шикова А.Н. Основы программирования на языке Паскаль в примерах и задачах: Учебное пособие. — К.: МАУП, 2004. — 112с.
2. Информатика и ИКТ: учебник для начального и среднего профессионального образования. Цветкова Н.С., Великович Л.С. – Академия, 2011 г.
3. Информатика и ИКТ. Практикум для профессий и специальностей технического и социально-экономического профилей. Н. Е. Астафьева, С. А. Гаврилова, под ред. М.С. Цветковой, Академия, 2012г.
4. Информатика и ИКТ. Базовый уровень: учебник для 10-11 кл. / И.Г.Семакин, Е.К.Хеннер. – 4 изд., испр. – М. – Бином. Лаборатория знаний, 2008г. – 246 с.: ил.
5. Информатика и ИКТ. Базовый уровень: практикум для 10-11 кл. / И.Г.Семакин, Е.К.Хеннер. – 4 изд., испр. – М. – Бином. Лаборатория знаний, 2008г.
6. Информатика и ИКТ. 10 кл. Базовый уровень под ред. Н.В.Макаровой – Спб – Лидер, 2010г.
7. Информатика и ИКТ. 11 кл. Базовый уровень под ред. Н.В.Макаровой – Спб – Лидер, 2010г.
8. Энциклопедия школьной информатики / под ред. И.Г.Семакина. – М.: Бином. Лаборатория знаний, 2011г.
ПРАКТИЧЕСКАЯ РАБОТА 8
СРЕДА ПРОГРАММИРОВАНИЯ.
ТЕСТИРОВАНИЕ ГОТОВОЙ ПРОГРАММЫ
Цель работы:
ü ознакомиться со средой программирования Pascal ABC.NET на примере тестирования готовых программ линейной структуры;
ü научиться осуществлять переводы арифметических выражений на язык программированияPascal ABC.NET;
ü научиться составлять простейшие программы в среде программирования Pascal ABC.NET.
Обеспечение работы:
ü ПК с установленными необходимыми программами для работы (MS Word, Pascal ABC.NET);
ü методические указания к выполнению работы (электронный вариант).
ü видео-уроки по основам программирования на языке Pascal.
Порядок выполнения работы:
1. Ознакомиться с теоретическим материалом данных методических указаний;
2. Просмотреть видео уроки по основам программирования на языке Pascal;
3. Выполнить три задания, которые приведены в разделе VI. Порядок выполнения работы;
4. Ответить на контрольные вопросы, сделать выводы.
5. Оформить отчет.
Содержание отчета:
ü тема, цель и порядок выполнения работы;
ü привести все выполненные задания (1,2,3) с кратким объяснением;
ü начертить блок-схемы к программам и предоставить программный код;
ü написать переведенные формулы из математики в Pascal;
ü ответы на контрольные вопросы;
Теоретические положения
Источник: infopedia.su
Как проверить программу в паскале
_________________
По правилам форума код должен оформлять с помощью тегов!
Используйте форматирование с помощью тегов [CODE] .. [ /CODE]
(кнопочка на панели форматирования # )
Последний раз редактировалось Serge_Bliznykov; 10.03.2013 в 11:10 .
Регистрация: 10.03.2013
Сообщений: 2
вот так вроде
Program lab2; Var a,b,c,x,y:real; Fy:double; begin writeln(‘Введите x’); readln(x); if (x=0) or (sin(x)=-1) or (sqr (Ln(x))>0) then writeln (‘Решений нет ‘) else begin a:=(sqr(cos(x))); b:=(1+sin(x)); c:=(sqr(ln(x)))*(x/exp(1/3*ln(x-1))); y:=(a/b)-c; if y>0 then Fy:=1; if y=0 then Fy:=0; if y
_________________
По правилам форума код должен оформлять с помощью тегов!
Используйте форматирование с помощью тегов [CODE] .. [ /CODE]
(кнопочка на панели форматирования # )
Последний раз редактировалось Serge_Bliznykov; 10.03.2013 в 11:10 .
Регистрация: 08.04.2012
Сообщений: 3,229
Правильная программа — это та программа, которая делает то, что нужно.
Как можно проверить правильность, не зная, что должна делать программа?
Пользователь
Регистрация: 04.10.2011
Сообщений: 29
Правильная программа — это та программа, которая делает то, что нужно.
Как можно проверить правильность, не зная, что должна делать программа?
Нужно вычислить значение
Регистрация: 17.11.2010
Сообщений: 19,042
Нужно вычислить значение |
Чего? Высоту орбиты в апогее? Или попроще? Может формула секретная
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Форумчанин
Регистрация: 07.02.2013
Сообщений: 267
sqr (Ln(x))>0
А как может быть иначе?
Ну, в действительных числах.
Μολὼν λαβέ
Пользователь
Регистрация: 04.10.2011
Сообщений: 29
Чего? Высоту орбиты в апогее? Или попроще? Может формула секретная
Нужно вычислить значение y
Регистрация: 08.04.2012
Сообщений: 3,229
Нужно вычислить значение y
И по какой формуле его вычислять? (или, правда, — она секретная?)
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,126
Нужно вычислить значение y
(5) Исправление ошибок. Отладка программы.
Сообщения об ошибках.Ошибки в программах делятся на те, которые Паскаль замечает, и на те, что не замечает и в принципе заметить не может. К первым относятся все синтаксические погрешности, например,BIGINвместоBEGIN. Их Паскаль замечает еще на стадии компиляции. На стадии выполнения он замечает такие ошибки, какSqrt(-25), то есть квадратный корень из ‑25.
Но вот, если вы, желая возвести числоa в куб, вместоa*a*aпишетеa*a, то этого не заметит ни один язык в мире.
Обнаружив грамматическую ошибку, Паскаль выдает золотыми буквами на красном фоне краткое описание ошибки и ставит курсор в то место программы, где, по его мнению, она находится.
Обнаружив ошибку на стадии выполнения, Паскаль выдает белыми буквами на черном фоне окна пользователя сообщение Runtime errorи иногда золотыми буквами на красном фоне краткое описание ошибки и ставит курсор в то место программы, где, по его мнению, она находится.
Вот наиболее типичные для начинающих сообщения об ошибках того и другого рода:
Вероятная причина ошибки
Unexpected end of file
Неожиданный конец файла
Вы забыли поставить точку после последнего END. Или не совпадает количествоbeginи количествоend
Ждал точку с запятой
Вы забыли поставить точку с запятой после предыдущего оператора
Вы указали слишком мало параметров в обращении к подпрограмме
Вы указали слишком много параметров в обращении к подпрограмме
Вы забыли описать это имя в разделе описаний
Неправильно записали стандартное имя, например, ReedLnвместоReadLn
В вашей программе встречаются примерно такие «сладкие парочки»: VAR c:String; … c:=1+2илиVAR h:Integer; … h:=9/7
Одно и то же имя описано два раза. Например, VAR a, c, a :String;
Паскаль затрудняется назвать причину ошибки. Часто причина в том, что вы забыли взять строковую константу в кавычки
Возможно, не совпадает количество beginи количествоend
Возможно, не совпадает количество beginи количествоend
String constant exeeds line
Строковая константа превышает допустимую длину
Вы забыли закрыть кавычки в строковой константе
Строчка слишком длинна
Слишком длинная строчка в программе (не путать со строковой константой, которую нужно брать в кавычки). Не рекомендую залезать программным текстом за правый край экрана
На вашем диске не осталось места. Надо что-то стереть
Lower bound greater than upper bound
Нижняя граница диапазона больше верхней
Например, вы вместо array[2..5]написалиarray[5..2].
Invalid floating point operation
Неправильная операция с вещественным результатом
Sqrt(-25)илиa/0или что-нибудь в этом роде
Ordinal expression expected
Ждал выражение порядкового типа
Например, вы вместо for i:=1 to 8написали for i:=1 to 8.5
Error in expression
Ошибка в выражении
Например, вы вместо k:=а*8написалиk:=а**8
Range check error
Ошибка проверки диапазона
Переменная в процессе выполнения программы вышла за пределы допустимого диапазона, как например, в 1.9
Constant out of range
Константа не в диапазоне
Величина константы в программе превосходит допустимый диапазон
Invalid numeric format
Неправильный числовой формат
Если, например, вы по оператору ReadLn(k)в программеVAR k:Integer; …. ReadLn(k) … пытаетесь ввести число 25.3
Более подробное описание некоторых ошибок вы найдете в 0.3.
Понять смысл многих других сообщений об ошибках вам поможет перевод некоторых часто встречающихся в сообщениях слов:
expected ждал
identifier имя
invalid неправильный
operation операция
error ошибка
variable переменная
Невозможно создать компилятор, который бы всегда точно находил место и причину ошибки. Поэтому приготовьтесь к тому, что некоторые сообщения вы будете долго разглядывать в недоумении. Считайте их не реальными ошибками, а намеками на реальные ошибки.
Источник: studfile.net