русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Тема 2.3. Методика Джексона


Дата добавления: 2014-02-04; просмотров: 2062; Нарушение авторских прав


Задания на закрепление изученного материала

Й этап состоит в анализе получаемых результатов и корректировке исследуемой модели.

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

Таким образом, программист должен обладать следующими знаниями и навыками:

· Уметь строить алгоритмы;

· Знать языки программирования;

· Уметь работать в соответствующей системе программирования.

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

1. Дано: , g=9,8 м/с2

Найти: S, t

2. ,

3. 1. Ввести ,g=9,8

2. Если  0 то вывод «Недопустимое значение скорости» и перейти к п.1

3. Вычислить t по формуле

4. Вычислить S по формуле

5. Вывести S, t

4, 5, 6 этапы выполняются на ПК.

 

Выделить три этапа при решении задач.

1. Дан прямоугольный треугольник с катетами а и в, найти гипотенузу с?

2. Найти сумму членов бесконечной геометрической прогрессии, если , .

3. В треугольники ABC известны стороны a, b, c. Вычислить площадь треугольника по формуле Герона.

4. Боковая сторона трапеции, равна а=40 см, образует с большим основанием угол . Вычислить площадь трапеции, если основания ее равны 24см и 60 см.

5. Найти сумму 26-ти первых членов арифметической прогрессии -12, -9,5, … используя две формулы.

Основой программистской грамотности является развитое алгоритмическое мышление. Одним из фундаментальным понятием в информатике является понятие алгоритма, с которым мы познакомились на прошлом занятии. Алгоритм – это последовательность команд управления каким-либо исполнителем. В школьном курсе информатики с понятием алгоритма знакомятся на примерах таких исполнителей как Робота, Черепахи, Чертежника и т.п. Эти исполнители нечего не вычисляет. Они создают рисунки на экране, перемещаются в лабиринтах, перетаскивают предметы с места на место. Таких исполнителей принято называть исполнителями, работающими в обстановке.



В разделе информатики под названием «Программирование» изучаются методы программного управления работой ЭВМ. Следовательно, в качестве исполнителя выступает компьютер. компьютер работает с величинами – различными информационными объектами: числами, символами, кодами и т.п. Поэтому алгоритмы, предназначенные для управлением компьютером, принято называть алгоритмами работы с величинами.

2. Данные и величины

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

Например, при решении квадратного уравнения ax2+bx+c=0

исходными данными являются коэффициенты a, b, c;

результатами – корни уравнения x1, x2;

промежуточным данным — дискри­минант уравнения D = b2 — 4ас.

Для успешного освоения программирования необходимо ус­воить следующее правило: всякая величина занимает свое опреде­ленное место в памяти ЭВМ (иногда говорят — ячейку памяти). Хотя термин «ячейка» с точки зрения архитектуры современных ЭВМ несколько устарел, однако в учебных целях его удобно ис­пользовать.

У всякой величины имеются три основных свойства: имя, зна­чение и тип. В алгоритмах и языках программирования величины де­лятся на константы ипеременные. Константа — неизменная величина, и в алгоритме она представляется собственным значе­нием, например: 15, 34.7, k, true и т.д. Переменные величины мо­гут изменять свои значения в ходе выполнения программы и пред­ставляются символическими именами — идентификаторами, на­пример: X, S2, codlS.

Теперь о типах величин — типах данных. С понятием типа дан­ных вы уже, возможно, встречались, изучая в курсе информати­ки базы данных и электронные таблицы. Это понятие является фундаментальным для программирования. В каждом языке программирования существует своя концеп­ция типов данных, своя система типов. Тем не менее, в любой язык входит минимально необходимый набор основных типов дан­ных, к которому относятся: целый, вещественный, логический и сим­вольный типы. С типом величины связаны три ее характеристики: множество допустимых значений, множество допустимых опера­ций, форма внутреннего представления. В табл. 1.1 представлены эти характеристики основных типов данных.

 

Тип Значения Операции Внутреннее представление
Целый Целые положительные и отрицательные числа в некотором диапазоне. Примеры: 23, —12, 387 Арифметические операции с целыми числами: +, -, •, целое деление и остаток от деления. Операции отношений (<, >, = и др.) Формат с фиксированной точкой
Вещест­венный Любые (целые и дробные) числа и некотором диапа0зоне. Примеры: 2,5,-0,01, 45,0, 3,6-105 Арифметические операции: +, —, •, /. Операции отношений Формат с плавающей точкой
Логичес­кий True (истина), False (ложь) Логические опера­ции: И (and), ИЛИ (or), HE (not). Операции отношений 1 бит: 1 - true; 0 - false
Символь­ный Любые символы компьютерного алфавита. Примеры: 'а, '5', '+','$ Операции отношений Коды табли­цы символь­ной кодиров­ки. 1 символ — 1 байт

Типы констант определяются по контексту (т.е. по форме за­писи в тексте), а типы переменных устанавливаются в описаниях переменных.

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

ЭВМисполнитель алгоритмов.Как известно, всякий алго­ритм (программа) составляется для конкретного исполнителя в рамках его системы команд. О каком же исполнителе идет речь при обсуждении вопроса о программировании для ЭВМ? Ответ очевиден: исполнителем является компьютер. Точнее говоря, ис­полнителем является комплекс ЭВМ + Система программирова­ния (СП). Программист составляет программу на том языке, на который ориентирована СП. Иногда в литературе такой комплекс называют виртуальной ЭВМ.

Входным языком такого исполнителя является язык програм­мирования Паскаль.

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

• присваивания;

• ввода;

• вывода;

• обращения к вспомогательному алгоритму;

• цикла;

• ветвления.

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

 

Перечень источников:

1. Кинг Д. Создание эффективного программного обеспечения. –М.: мир, 1991 – 284с.

4. Немнюгин С.А. Turbo Pascal: учебник – СПб «Питер», 2007.- 455с.

 

 

Тема 2.2 Программа на языке высокого уровня.

Тип лекции: текущая

План:

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

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

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

Примеры: C, C++, Java, Python, PHP, Ruby, Perl, PureBasic, Delphi, Lisp. Языкам высокого уровня свойственно умение работать с комплексными структурами данных. В большинстве из них интегрирована поддержка строковых типов, объектов, операций файлового ввода-вывода и т. п.

Первым языком программирования высокого уровня считается компьютерный язык Plankalkül, разработанный немецким инженером Конрадом Цузе ещё в период 1942—1946 гг. Однако транслятора для него не существовало до 2000 г. Первым в мире транслятором языка высокого уровня является ПП (Программирующая Программа), он же ПП-1, успешно испытанный в 1954 г. Транслятор ПП-2 (1955 г., 4-й в мире транслятор) уже был оптимизирующим и содержал собственный загрузчик и отладчик, библиотеку стандартных процедур, а транслятор ПП для ЭВМ Стрела-4 уже содержал и компоновщик (linker) из модулей. Однако, широкое применение высокоуровневых языков началось с возникновением Фортрана и созданием компиляторадля этого языка (1957).

Распространено мнение, что программы на языках высокого уровня можно написать один раз и потом использовать на компьютере любого типа. В действительности же это верно только для тех программ, которые мало взаимодействуют с операционной системой, например, выполняют какие-либо вычисления или обработку данных. Большинство же интерактивных (а тем более мультимедийных) программ обращаются к системным вызовам, которые сильно различаются в зависимости от операционной системы. Например, для отображения графики на экране компьютера программы под Microsoft Windows используют функции Windows API, которые отличаются от используемых в системах, поддерживающих стандарт POSIX. Чаще всего для этих целей в них используется программный интерфейс X-сервера.

К настоящему времени создан целый ряд программных библиотек (например, библиотека Qt или wxWidgets), скрывающих несоответствия системных вызовов различных операционных систем от прикладных программ. Однако такие библиотеки, как правило, не позволяют полностью использовать все возможности конкретных операционных систем. Для некоторых языков (к примеру, PureBasic ), существуют кроссплатформенные библиотеки функций, позволяющие обеспечить переносимость программ на уровне исходного текста, то есть, для того, чтобы перенести программу, например с Windows, на Linux, либо MacOS X, достаточно выполнить компиляцию программы на требуемом компиляторе.

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

Перечень источников:

1. Кинг Д. Создание эффективного программного обеспечения. –М.: мир, 1991 – 284с.

5. Немнюгин С.А. Turbo Pascal: учебник – СПб «Питер», 2007.- 455с.

 

 

Тип лекции: текущая

План:



<== предыдущая лекция | следующая лекция ==>
Этапы решения задач | Шаг объект-действие


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.125 сек.