Pascal прикладная программа или нет

Информатика — научная дисциплина, изучающая структуру и общие свойства информации, а также закономерности всех процессов обмена информацией при непосредственном устном и письменном общении специалистов до формальных процессов обмена посредством различных носителей информации. Значительную часть этих процессов составляет научно-информационная деятельность по сбору, переработке, хранению, поиска и распространению информации.

Актуальность курсового проекта на тему «Приложения технологии языка программирования паскаль в прикладной механике» обусловлена широким внедрением компьютерных технологий во все сферы деятельности человека.

Объектом курсовой работы служит процесс внедрения новых информационных технологий в сферу науки и образования.

Предметом курсового исследования является освоение процесса решения задач прикладной механики посредством языка программирования высокого уровня Паскаль.

Целью курсового проектирования является изучение полного спектра функциональных возможностей языка программирования Паскаль для решения задач прикладной механики.

Pascal Полный курс с нуля за 4 часа

Гипотеза курсового проектирования заключается в следующем. Овладение полным спектром функциональных возможностей языка программирования Паскаль способствует повышению эффективности решения задач прикладной механики.

Задачами курсовой работы являются:

1) освоение полного спектра функциональных возможностей языка программирования Паскаль;

2) постановка и решение задач прикладной механики традиционным способом;

3) решение задач механики в среде языка программирования Паскаль.

Методами, которыми решаются задачи курсового исследования, являются:

1) теоретический анализ научно-технической литературы по языку программирования Паскаль;

2) математическое моделирование задач прикладной механики;

3) компьютерное решение задач прикладной механики.

Практическая значимость выполненной курсовой работы на тему «Приложения технологии языка программирования паскаль в прикладной механике» заключается в том, что каждый пользователь компьютера, решая задачи статики, кинематики и динамики сможет пользоваться свободно предложенными в работе методиками.

ГЛАВА I. ОСНОВНЫЕ ЛОГИЧЕСКИЕ КОНСТРУКЦИИ В СИСТЕМЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

1.1. КРАТКАЯ ИСТОРИЯ СТАНОВЛЕНИЯ ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

Язык Pascal был создан как учебный язык программирования в 1968 — 1971 году Никлаусом Виртом. В настоящее время этот язык имеет более широкую сферу применения, чем предусматривалось при его создании.

Язык программирования Pascal (назван в честь выдающегося французского математика и философа Блеза Паскаля (1623 — 1662)), разработан в 1967 — 1971гг. Никлаусом Виртом, профессором, директором института информатики Швейцарской высшей политехнической школы. Язык Pascal, созданный первоначально для обучения программированию как систематической дисциплине, скоро стал широко использован для разработки программных средств в профессиональном программировании.

Паскаль с нуля [ч1]. Первая программа.

Широкой популярностью Pascal среди программистов способствовали следующие причины:

· благодаря своей компактности, удачному первоначальному описанию Паскаль оказался достаточно лёгким для обучения.

· язык программирования Pascal, отображает фундаментальные и наиболее важные идеи алгоритмов в очевидной и легко воспринимаемой форме, что предоставляет программисту средства, помогающие проектировать программы.

· язык Pascal позволяет чётко реализовать идеи структурного программирования и структурной организации данных.

· он сыграл большую роль в развитии методов аналитического доказательства правильности программ и позволил реально перейти от методов отладки программ к системам автоматической проверки и правильности программ.

· применения языка Pascal значительно подняло «планку» надёжности разрабатываемых программ за счёт требований Pascal, к описанию используемых в программе переменных при компиляции без её выполнения, использование в Паскале простых и гибких структур управления: ветвлений, циклов.

1.2. ОСНОВНЫЕ КОМАНДЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ

Условные операторы предназначены для выбора к исполнению одного из возможных действий (операторов) в зависимости от некоторого условия (при этом одно из действий может быть пустым, т.е. отсутствовать) В качестве условий выбора используется значение логического выражения. В Turbo Pascal имеются два вида условных операторов: if и case.

Оператор условия if. Оператор условия if является одним из самых

популярных средств, имеющих естественный порядок выполнения операторов программы.

Операторы условия if выполняются следующим образом. Сначала выражается выражение, записанное в условии. В результате его вычисления получается значение булевского типа. В первом случае, если значение выражения есть true (истина), выполняется, указанный после слова then (то).

Условный оператор позволяет осуществить ветвление программы только по двум направлениям, одно из которых соответствует выполнению проверяемого условия. Если для переменной необходимо осуществить ряд действий, зависящих от других условий, то надо записывать, либо вложенные условные операторы, либо несколько операторов подряд. Для такой операции удобно использовать оператор варианта.

Вход в структуру содержит вычисление или ранее полученное значение переменной (индекса варианта). Это значение может совпасть с меткой, стоящей перед оператором на одной из ветвей переключаются. В таком случае выполняется оператор, помеченный этой меткой, и происходит выход из структуры.

Оператор бывает простым или составным, ограниченным операторными скобками begin … end; Если значение индекса варианта не совпало ни с одной из меток, то выполняется оператор с номером n + 1 из строки else. Если оператор варианта содержит строку else , то это — полная форма оператора, если такой строки нет, то используется сокращённая форма оператора варианта. Метки оператора варианта могут быть константами любого типа. Их тип должен совпадать с переменной индекса варианта. Возможно, чтобы индекс варианта должен быть как именем переменной, так и выражением соответствующего типа.

Существуют задачи в которых по одной из ветки ветвления нужно рассмотреть ещё одно условие.

Рассмотрим задачу: сравнить 3 целых числа и вывести на печать максимальное.

Program chisla;

Var a, b, c: integer;

Writeln (`Введите три числа);

Read (a, b, c);

If ac then writeln (` максимально число , a)

Else if b>c then writeln (b максимально число, b)

Else writeln (`c максимальное число, c);

1.3. ИСПОЛЬЗОВАНИЕ ФУНКЦИЙ И ПРОЦЕДУР ЯЗЫКА ПАСКАЛЬ

1.3.1. Алгоритм.

Слово алгоритм происходит от algorithmic — латинской формы написания имени латинского математика IX в. Аль-Хорезми, который сформулировал правила выполнения четырёх арифметических действий над многозадачными числами. В дальнейшем алгоритм стали называть описание любой последовательности действий, которую следует выполнить для решения заданной задачи.

Алгоритм может быть ориентирован на исполнение его человеком или автоматическим устройством. Алгоритмы, предназначены для выполнения компьютерами, обычно называют компьютерными программами или просто программами.

Алгоритмом называется точное предписание, определяющее последовательность действий исполнителя, направленных на решение поставленной задачи. В роли исполнителя алгоритмов могут выступать люди, роботы, компьютеры.

Используются разные способы записи алгоритмов. Широко распространенный словесный способ записи: это записи рецептов приготовления различных блюд в кулинарной книге, инструкции по использованию технических устройств, правила правописания и многие другие. Наглядно представляется алгоритм языком блок-схем.

Свойства алгоритма. При составлении алгоритма необходимо обеспечить, чтобы он обладал рядом свойств.

Однозначность алгоритма, под которой понимается единственность толкования исполнителем правил выполнения действий и порядка их выполнения. Чтобы алгоритм обладал этим свойством, он должен быть записан командами из системы команд исполнителя.

Для нашего примера исполнитель алгоритма должен понимать такую запись действий, как сложность числа А и В. Конечность алгоритма — обязательность завершения каждого из действий, составляющих алгоритм, и конец выполнения каждого алгоритма в целом.

Результативность алгоритма, предполагающая, что выполнение алгоритма должно завершится получением определенных результатов.

Массовость, т.е. возможность применения данного алгоритма для решения целого класса задач, отвечающих общей постановки задачи. Так как алгоритм, показанный на рисунке, позволяет правильно подсчитать сумму не только чисел 2 и 3, но любой другой пары целых чисел, он обладает свойством массовости.

Для того чтобы алгоритм обладал свойством массивности, следует составлять алгоритм, используя обозначения величин и избегая конкретных значений. Правильность алгоритма, под которой понимается способность алгоритма давать правильные результаты решения поставленных задач. Представленный в примере алгоритм обладает свойством правильности, так как в нём использована правильная формула сложения целых чисел, и для любой пары целых чисел результат выполнения алгоритма будет равен их сумме.

Компьютерная программа — это план будущих работ, составленный в расчёте на его выполнение компьютером.

Чтобы компьютер смог выполнить программу, она должна быть записана в специальной форме, доступной компьютеру; должна быть записана в соответствии со специальным набором правил.

Набор записи компьютерной программы называется «алгоритмическим языком».

Вычислительный процесс называется линейным (не разветвляющимся), если направление его продолжения на любом этапе вычислений является единственным. Алгоритм линейного вычислительного процесса описывает действия, последовательность выполнения которых не зависит от исходных данных и результатов промежуточных вычислений, т.е является постоянной.

Читайте также:
Программа epson scan не видит сканер

Этот процесс является наиболее простым видом вычислений. Линейный процесс (как и другой вычислительный процесс) можно представить в виде следующих этапов: первый — задание исходных данных; второй реализация вычислений; третий — вывод результатов счёта и поясняющей информации. Этапы отображаются на блок-схеме, а затем реализуются в ПК в указанной последовательности.

Алгоритм деления отрезка АВ пополам:

1) поставить ножку циркуля в точку А;

2) установить раствор циркуля равным длине отрезка АВ;

3) провести окружность;

4) поставить ножку циркуля в точку В;

5) провести окружность;

6) через точки пересечения окружностей провести прямую;

7) отметить точку пересечения этой прямой с отрезком АВ;

Каждое указание алгоритма предписывает исполнителю выполнить одно конкретное значения действий. Исполнитель не может перейти следующей операции, не завершив полностью предыдущую. Предписания алгоритма надо выполнять последовательно одно за другим, с соответствии с порядком их записи. Следование всем предписаниям гарантирует правильное решение задачи. Данный алгоритм совершенно ясен исполнителю

Блок-схема — алгоритм, выраженный с помощью логических блоков. Блок-схема служит для того, чтобы наглядней представлять те или иные формы организаций действий. Каждое действие алгоритма, кроме проверки условия, будем помещать в прямоугольник, а вопрос о том, выполняется ли некоторое условие, — в ромб. Еще существуют: параллелограмм, овал, оборванный листок.

В рассмотренных до сих пор алгоритмах и программах все команды выполнялись последовательно одна за другой в том порядке, в каком они были записаны. Однако таким образом может быть построен алгоритм для решения далеко не всякой задачи. В практике известны задачи, дальнейший ход решения которых зависит от выполнения каких либо условий.

Ветвление — это такая форма организаций действий, при которой в зависимости от выполнения или невыполнения некоторого условия совершатся либо одна, либо другая последовательность действий.

1. Процедуры ввода-вывода. Почти каждая программа должна общаться с пользователем, то есть выводить результаты своей работы на экран и запрашивать у пользователя информацию с клавиатуры. Для того чтобы это стало возможным, в Турбо-Паскале имеются специальные процедуры (то есть небольшие вспомогательные программы), называются он процедурами ввода-вывода. Для того чтобы заставить процедуру работать в нашей программе, нужно написать её имя, за которым в скобках, через запятую перечислить параметры, которые мы хотим ей передать. Для процедуры вывода информации на экран параметрами могут служить числа или текстовые сообщения, которые должна печатать наша программа на экран.

Опишем назначение этих процедур:

write (p1, p2, . pn); — (выводит на экран значения выражений p1, p2, . pn, количество которых (n) неограниченно. Выражения могут быть числовые, строковые, символьные и логические. Под выражением будем понимать совокупность некоторых действий, применённых к переменным, константам или литералам, например: арифметические действия и математические функции для чисел, функции для обработки строк и отдельных символов, логические выражения и т.п. Возможен форматный вывод, т.е. явное указание того, сколько выделять позиций на экране для вывода значения.

Пример для вещественных типов:

write (r+s:10:5); — (вывести значение выражения r + s с выделением для этого 10 позиций, из них 5 (после запятой).

Для других типов все несколько проще:

write (p:10); — (вывести значение выражения p, выделив под это 10 позиций. Вывод на экран в любом случае производится по правому краю выделенного поля.

Writeln (p1, p2, . pn); — (аналогично write, выводит значения p1, p2, . pn, после чего переводит курсор на новую строку. Смысл параметров (тот же, замечания о форматном выводе остаются в силе.

Существует вариант writeln; (без параметров), что означает лишь перевод курсора на начало новой строки.

readln (v1, v2, . vn); (ввод с клавиатуры значений переменных v1. vn.

Переменные могут иметь строковый, символьный или числовой тип. При вводе следует разделять значения пробелами, символами табуляции или перевода строки (т.е., нажимая Enter).

read (v1, v2, . vn); (по назначению сходно с readln; отличие состоит в том, что символ перевода строки (Enter), нажатый при завершении ввода, не «проглатывается», а ждет следующего оператора ввода. Если им окажется оператор ввода строковой переменной или просто readln; то строковой переменной будет присвоено значение пустой строки, а readln без параметров не станет ждать, пока пользователь нажмет Enter, а среагирует на уже введенный.

Пример. Программа просит пользователя ввести с клавиатуры два целых числа и печатает на экране их сумму:

Program PrintSum;

var a,b: integer;

write (Введите два числа:);

readln (a,b);

writeln (Сумма a и b равна ,a+b);

readln;

1.3.2. Функции числовых параметров.

Источник: 2dip.su

Научный форум dxdy

В чём принципиальная разница между языками С и Паскаль?

В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 06:40
Tor в сообщении #823943 писал(а):
Alexu007 писал(а):
В чём принципиальная разница между языками С и Паскаль?

В безопасности кода, в степени поддержки парадигмы структурного программирования. Но код С работает быстрее. Эта болезнь «быстрое гавно» давно была бы рынком излечена, если бы государства не производителей гавнокода поддерживали, разрешая алгоритмы патентовать, а законодательно поддерживали пользователей в их исках к производителю гавнокода. Например Микрософт давно бы разорился и отбросил коньки.

Что в языке Паскаль делает код более безопасным вне зависимости от качества собственно кода (говнокод как и хороший код можно писать на любом языке)?

Структурное программирование — в Паскале изначально было то, что затем появилось только в С++?

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 11:00

Паскаль не допускает сделать очевидные ошибки.
1) В Паскале более строгая типизация. Нельзя присвоить указатели разных типов. Нужно делать явное преобразование.
Выявить такую ошибку в Си не возможно. Так как её проявление от места ошибки разнесено во времени вине, не один отладочный прием не работает кроме логов всего проекта.
2) Отсутствие явного булевого типа в Си.
True+5= может быть любым числом.
True тут не константа, а результат булевого выражения.
3) В Си плохой синтаксис в котором легко сделать ошибку.
Очень просто ошибиться в | или ||, а еще более страшно в условии сделать ошибку = вместо ==. И долго удивляться почему результат другой.
4) Не явные задача параметра в цикле for.
5) Строки в Си являются не безопасными.
Большинство ошибок приходиться на этот пункт. Программист должен вычислить длину результирующей строки а только потом выполнять операции.
В Си++ эта болезнь вылечена.
В паскале такого нет.
6) Динамические параметры в функции. В Си их количество не котролируются.
Из за чего возможен элементарный выход за приделы массива.
printf scanf — поэтому считаются не безопасными функциями.
В Си++ симтомы вылечены.
На самом деле тут больше интересно а был ли мальчик? А был ли реальный взлом пароля из-за не правильной работай со строками в printf и scanf?
7) Я привел только 2 не безопасные функции на самом деле их гораздо больше.
8) Стоит отметить простоту грамматики паскаля. Она одно проходная в отличии от Си.

1) Отсутствие константных указателей в паскале. Правда в Си они тоже сделаны через левое плечё.

Цитата:
Структурное программирование — в Паскале изначально было то, что затем появилось только в С++?

Структурированое программирование появилась за долго до Паскаля и Си. Когда были введены современные циклы и условные операторы.
Что касается структур данных. То они были и в Си изначально. А вот в Паскаль был примитивным языком. Без указателей, структур и строк. Пока его не расширили до Extended Pascal — что является современным стандартом.

Поэтому именно последний и рассматриваю в качестве Паскаля, да и в школе и в вузе говорят Паскаль имеют в виду именно Extended Pascal.

В Си++ работа со структурами расширилась. В ведение шаблонов, ООП, дженерики.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 12:47
Alexu007 в сообщении #824024 писал(а):
говнокод как и хороший код

! Alexu007 , предупреждение за сквернословие.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 12:54

Читайте также:
Программа для подготовки схемы расположения земельного участка на кадастровом плане территории

Последний раз редактировалось Taus 08.02.2014, 12:55, всего редактировалось 1 раз.

Pavia в сообщении #824064 писал(а):
2) Отсутствие явного булевого типа в Си.

Начиная со стандарта С99 он есть.
Цитата:
В Си++ работа со структурами расширилась. В ведение шаблонов, ООП, дженерики.

Дженериков в C++ нет. Некоторые операции с дженериками возможны только при наличии виртуальной машины.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 12:57

Если Паскаль это Extended Pascal, то может его правильнее сравнивать с Си++, который расширение Си? А почему быстродействие Си больше — сишные компиляторы круче?

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 13:02

Alexu007 , хорошие компиляторы С не однопроходные. Несколько обработок исходного кода позволяют построить максимально оптимизированный машинный код.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 14:14

Основное отличие имхо: Pascal — больше для прикладного программирования. Си — для системного.
Вообще сравнивать Паскаль и Си уже не очень актуально. Современные их ООП-реализации — это Делфи и С++.
В настоящее время Делфи используется там, где нужно по-быстрому набросать формы, ну еще для работы с базами данных. Для системных и алгоритмических задач — это очевидно C/C++. Да, код в С/C++ не безопасный, потому что изначально язык Си был разработан как замена ассемблеру, то есть основной упор на производительность. Естественно, там отсутствовала проверка типов, выход указателей за пределы массива и т.п. Библиотека STL во многом решила эту проблему.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 14:35

Стабильно пишут, что С уже не актуален, и стабильно это вызывает удивление. Складывается ощущение, что авторы подобных заявлений ни на чем кроме ПК не программируют, и либо путают С и С++, либо считают последний полноценной заменой первого.
Шуточный ответ на вопрос заголовка темы — принципиально существуют компиляторы С для микроконтроллеров (по понятным причинам лучшего перевода в ассемблер), а паскалевских — пока не встречал.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 15:12

Си++ — не расширение Си, они ни в какую сторону не совместимы. Те же правила неявных приведений указателей в них разные.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 20:57

Последний раз редактировалось Alexu007 08.02.2014, 20:58, всего редактировалось 1 раз.

По быстрому набросать формы можно в Qt С++. Можно так же в С++ builder, но он платный и вроде как больше не развивается.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 21:09

Последний раз редактировалось x51 08.02.2014, 21:40, всего редактировалось 1 раз.

Паскаль удобен тем, что позволяет сконцентрироваться именно на алгоритме, не отвлекаясь на всевозможные низкоуровневые моменты вроде работы с указателями и т.п., да и синтаксис вроде как попроще для тех, кто впервые с программированием сталкивается.

Но код на С более компактен, быстрее работает, откомпилированные программы занимают меньше места. А главное для меня язык С является очень похожим на остальные языки, например Фортран, Перл и Ада. Если человек научился программировать на С, то он без большого труда выучится и на Паскале, на С++ и на всем таком прочем.

Вообще C или Pascal это знаменитый холивар. Я вам одно скажу: программист знающий паскаль может найти только одну специальность: учитель информатики. И то, если осилит педагогический.

P.S. паскаля не знаю, и не знал никогда. да и не узнаю видимо.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 21:31

Последний раз редактировалось bin 08.02.2014, 21:51, всего редактировалось 1 раз.

Pavia в сообщении #824064 писал(а):

Что касается структур данных. То они были и в Си изначально. А вот в Паскаль был примитивным языком. Без указателей, структур и строк. Пока его не расширили до Extended Pascal — что является современным стандартом.

Поэтому именно последний и рассматриваю в качестве Паскаля, да и в школе и в вузе говорят Паскаль имеют в виду именно Extended Pascal.

Pavia
Выше Вы написали много верного про недостатки Си, но применительно к цитированному «хвосту» Вашего сообщения вынужден выразить недоумение. Без указателей? — Посмотрите Йенсен, Вирт, Паскаль, Руководство для пользователей, М.: Финансы и статистика, 1982 г., С. 54, Ссылочные типы. Без строк? — Посмотрите ту же книгу, С. 37 — строки. Без структур? — См. Комбинированные типы, С.38.

Слово record уже тогда было зарезервированным.

Про Extended Pascal:

Цитата:
In 1990, an extended Pascal standard was created as ISO/IEC 10206. (Википедия, Pascal)

Я принимал участие в первой реализации компилятора (Dr. Pascal’s Extended Pascal Compiler -См. там же). Но ранее стараниями Borland и Microsoft появились компиляторы ОО Паскаля — см.

Jon Udell, Crash of the Object-Oriented Pascals, BYTE, July, 1989, заодно можете посмотреть и мое письмо редактору M.I.Trofimov, The End of Pascal?, BYTE, March, 1990, p.36, где уже тогда я ставил вопрос о надежности и высказывал опасения в отношении излишней переусложненности Extended Pascal не ОО, Дельфи — ОО. На мой взгляд, оптимальный на сегодняшний день язык — Дельфи-7. Про С++: там действительно была попытка улучшения, но язык стал слишком сложным, сохранились и добавились неоднозначности, из-за которых на сегодняшний день мы имеем очень ненадежный софт, от ОС и библиотек и до прикладных программ.

В отношении неэффективности — это в прошлом, мои программы на Дельфи с применением многопоточности на международном соревновании, проведенном компанией Интел, не отставали по скорости от программ на Intel-C++, при этом в С++ для поддержки многопоточности приходилось применять костыль в виде TBB

В общем случае: самый эффективный код может быть получен только на ассемблере, все другие языки — его ограничение. Кому нужно, может писать критические участки кода на ассемблере и вставлять в код на Дельфи, там есть все возможности для этого.

— Сб фев 08, 2014 21:51:30 —

Alexu007 в сообщении #824097 писал(а):
А почему быстродействие Си больше — сишные компиляторы круче?

Про компиляторы С++ интересное свидетельство есть в книге Крис Касперски, Фундаментальные основы хакерства, М.:Солон-пресс, 2004, С. 142, где автор утверждает, что все известные ему реализации генерируют «ну очень кривой и тормозной код». Может, Си (без плюсов) делает исполняемый код лучше, но ведь Си не ОО. Неужели сейчас кто будет тратить время на написание GUI без OOP?

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 23:16
spyphy в сообщении #824114 писал(а):
Pascal — больше для прикладного программирования. Си — для системного.

Я бы сказал грубее: Паскаль — для человека, Си — для программера. (хотя, конечно, драйверов на Паскале не напишешь)

x51 в сообщении #824251 писал(а):
Но код на С более компактен, быстрее работает,

Сильно сомневаюсь, что сильно быстрее. Я в своё время развлекался выжиманием из Паскаля всех соков ассемблерными вставками. И ускорения более чем втрое ( да и то в лучшем случае) как-то не наблюдал. Ну, допустим, Си (как промежуточный вариант) обгонит Паскаль раза в полтора. А оно нам нужно — за такую-то цену.

bin в сообщении #824265 писал(а):
На мой взгляд, оптимальный на сегодняшний день язык — Дельфи-7.

Это ровно Паскаль и есть. Только усложнённый за счёт ОО и визуализации; что, конечно, есть благо — но с точки зрения собственно языка не более чем усложнение.

Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 23:25
ewert в сообщении #824312 писал(а):
Это ровно Паскаль и есть. Только усложнённый за счёт ОО и визуализации;
Тут есть некоторые тонкости. Object Pascal и Delphi — немножко разные языки.
Re: В чём принципиальная разница между языками С и Паскаль?
08.02.2014, 23:26
ewert в сообщении #824312 писал(а):

x51 в сообщении #824251 писал(а):
Но код на С более компактен, быстрее работает,

Сильно сомневаюсь, что сильно быстрее. Я в своё время развлекался выжиманием из Паскаля всех соков ассемблерными вставками. И ускорения более чем втрое ( да и то в лучшем случае) как-то не наблюдал. Ну, допустим, Си (как промежуточный вариант) обгонит Паскаль раза в полтора. А оно нам нужно — за такую-то цену.

Читайте также:
Необходимость оптимизации производственной программы при заданном объеме ресурсов это модель

Когда каждый килобайт на счету и нет возможности использовать ассемблер, то очень даже влияет. А цена затрат на разработку потом сильно окупается экономией на обслуживании оборудования по причине сбоя ПО, ибо оно меньше сбоит, особенно при пересборке «на лету» в самой машине, непосредственно на объекте.

Страница 1 из 4 [ Сообщений: 54 ] На страницу 1 , 2 , 3 , 4 След.

Источник: dxdy.ru

Приложения технологии языка программирования Паскаль в прикладной механике (стр. 1 из 8)

Информатика — научная дисциплина, изучающая структуру и общие свойства информации, а также закономерности всех процессов обмена информацией при непосредственном устном и письменном общении специалистов до формальных процессов обмена посредством различных носителей информации. Значительную часть этих процессов составляет научно-информационная деятельность по сбору, переработке, хранению, поиска и распространению информации.

Актуальностькурсового проекта на тему «Приложения технологии языка программирования паскаль в прикладной механике» обусловлена широким внедрением компьютерных технологий во все сферы деятельности человека.

Объектом курсовой работы служит процесс внедрения новых информационных технологий в сферу науки и образования.

Предметомкурсового исследования является освоение процесса решения задач прикладной механики посредством языка программирования высокого уровня Паскаль.

Цельюкурсового проектирования является изучение полного спектра функциональных возможностей языка программирования Паскаль для решения задач прикладной механики.

Гипотезакурсового проектирования заключается в следующем. Овладение полным спектром функциональных возможностей языка программирования Паскаль способствует повышению эффективности решения задач прикладной механики.

Задачами курсовой работы являются:

1) освоение полного спектра функциональных возможностей языка программирования Паскаль;

2) постановка и решение задач прикладной механики традиционным способом;

3) решение задач механики в среде языка программирования Паскаль.

Методами, которыми решаются задачи курсового исследования, являются:

1) теоретический анализ научно-технической литературы по языку программирования Паскаль;

2) математическое моделирование задач прикладной механики;

3) компьютерное решение задач прикладной механики.

Практическая значимость выполненной курсовой работы на тему «Приложения технологии языка программирования паскаль в прикладной механике» заключается в том, что каждый пользователь компьютера, решая задачи статики, кинематики и динамики сможет пользоваться свободно предложенными в работе методиками.

ГЛАВА I. ОСНОВНЫЕ ЛОГИЧЕСКИЕ КОНСТРУКЦИИ В СИСТЕМЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

1.1. КРАТКАЯ ИСТОРИЯ СТАНОВЛЕНИЯ ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

Язык Pascal был создан как учебный язык программирования в 1968 – 1971 году Никлаусом Виртом. В настоящее время этот язык имеет более широкую сферу применения, чем предусматривалось при его создании.

Язык программирования Pascal (назван в честь выдающегося французского математика и философа Блеза Паскаля (1623 – 1662)), разработан в 1967 – 1971гг. Никлаусом Виртом, профессором, директором института информатики Швейцарской высшей политехнической школы. Язык Pascal, созданный первоначально для обучения программированию как систематической дисциплине, скоро стал широко использован для разработки программных средств в профессиональном программировании.

Широкой популярностью Pascal среди программистов способствовали следующие причины:

· благодаря своей компактности, удачному первоначальному описанию Паскаль оказался достаточно лёгким для обучения.

· язык программирования Pascal, отображает фундаментальные и наиболее важные идеи алгоритмов в очевидной и легко воспринимаемой форме, что предоставляет программисту средства, помогающие проектировать программы.

· язык Pascal позволяет чётко реализовать идеи структурного программирования и структурной организации данных.

· он сыграл большую роль в развитии методов аналитического доказательства правильности программ и позволил реально перейти от методов отладки программ к системам автоматической проверки и правильности программ.

· применения языка Pascal значительно подняло «планку» надёжности разрабатываемых программ за счёт требований Pascal, к описанию используемых в программе переменных при компиляции без её выполнения, использование в Паскале простых и гибких структур управления: ветвлений, циклов.

1.2. ОСНОВНЫЕ КОМАНДЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ

Условные операторы предназначены для выбора к исполнению одного из возможных действий (операторов) в зависимости от некоторого условия (при этом одно из действий может быть пустым, т.е. отсутствовать) В качестве условий выбора используется значение логического выражения. В TurboPascalимеются два вида условных операторов: if и case.

Оператор условия if. Оператор условия if является одним из самых

популярных средств, имеющих естественный порядок выполнения операторов программы.

Операторы условия if выполняются следующим образом. Сначала выражается выражение, записанное в условии. В результате его вычисления получается значение булевского типа. В первом случае, если значение выражения есть true (истина), выполняется, указанный после слова then (то).

Условный оператор позволяет осуществить ветвление программы только по двум направлениям, одно из которых соответствует выполнению проверяемого условия. Если для переменной необходимо осуществить ряд действий, зависящих от других условий, то надо записывать, либо вложенные условные операторы, либо несколько операторов подряд. Для такой операции удобно использовать оператор варианта.

Вход в структуру содержит вычисление или ранее полученное значение переменной (индекса варианта). Это значение может совпасть с меткой, стоящей перед оператором на одной из ветвей переключаются. В таком случае выполняется оператор, помеченный этой меткой, и происходит выход из структуры.

Оператор бывает простым или составным, ограниченным операторными скобками begin … end; Если значение индекса варианта не совпало ни с одной из меток, то выполняется оператор с номером n + 1 из строки else. Если оператор варианта содержит строку else , то это — полная форма оператора, если такой строки нет, то используется сокращённая форма оператора варианта. Метки оператора варианта могут быть константами любого типа. Их тип должен совпадать с переменной индекса варианта. Возможно, чтобы индекс варианта должен быть как именем переменной, так и выражением соответствующего типа.

Существуют задачи в которых по одной из ветки ветвления нужно рассмотреть ещё одно условие.

Рассмотрим задачу: сравнить 3 целых числа и вывести на печать максимальное.

Program chisla;

Var a, b, c: integer;

Writeln (‘Введите три числа’);

If ac then writeln (‘ максимальночисло ’, a)

Else if b>c then writeln (b максимальночисло’, b)

Else writeln (‘c максимальное число’, c);

1.3. ИСПОЛЬЗОВАНИЕ ФУНКЦИЙ И ПРОЦЕДУР ЯЗЫКА ПАСКАЛЬ

1.3.1. Алгоритм.

Слово алгоритм происходит от algorithmic – латинской формы написания имени латинского математика IX в. Аль-Хорезми, который сформулировал правила выполнения четырёх арифметических действий над многозадачными числами. В дальнейшем алгоритм стали называть описание любой последовательности действий, которую следует выполнить для решения заданной задачи.

Алгоритм может быть ориентирован на исполнение его человеком или автоматическим устройством. Алгоритмы, предназначены для выполнения компьютерами, обычно называют компьютерными программами или просто программами.

Алгоритмом называется точное предписание, определяющее последовательность действий исполнителя, направленных на решение поставленной задачи. В роли исполнителя алгоритмов могут выступать люди, роботы, компьютеры.

Используются разные способы записи алгоритмов. Широко распространенный словесный способ записи: это записи рецептов приготовления различных блюд в кулинарной книге, инструкции по использованию технических устройств, правила правописания и многие другие. Наглядно представляется алгоритм языком блок-схем.

Свойства алгоритма. При составлении алгоритма необходимо обеспечить, чтобы он обладал рядом свойств.

Однозначность алгоритма, под которой понимается единственность толкования исполнителем правил выполнения действий и порядка их выполнения. Чтобы алгоритм обладал этим свойством, он должен быть записан командами из системы команд исполнителя.

Для нашего примера исполнитель алгоритма должен понимать такую запись действий, как сложность числа А и В. Конечность алгоритма – обязательность завершения каждого из действий, составляющих алгоритм, и конец выполнения каждого алгоритма в целом.

Результативность алгоритма, предполагающая, что выполнение алгоритма должно завершится получением определенных результатов.

Массовость, т.е. возможность применения данного алгоритма для решения целого класса задач, отвечающих общей постановки задачи. Так как алгоритм, показанный на рисунке, позволяет правильно подсчитать сумму не только чисел 2 и 3, но любой другой пары целых чисел, он обладает свойством массовости.

Для того чтобы алгоритм обладал свойством массивности, следует составлять алгоритм, используя обозначения величин и избегая конкретных значений. Правильность алгоритма, под которой понимается способность алгоритма давать правильные результаты решения поставленных задач. Представленный в примере алгоритм обладает свойством правильности, так как в нём использована правильная формула сложения целых чисел, и для любой пары целых чисел результат выполнения алгоритма будет равен их сумме.

Источник: smekni.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru