Строковый тип данных
Объектно-ориентированное программирование. Характеристика популярных универсальных языков программирования: Basic; Pascal; C++; Java. Разработка программы, которая в веденной с клавиатуры строке преобразует строчные буквы русского алфавита в прописные.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 28.05.2008 |
Размер файла | 23,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
2
СОДЕРЖАНИЕ
- ВВЕДЕНИЕ 4
- 1. ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ ЗАДАЧИ 7
- 1.1 Строковый тип данных в языке Pascal 7
- 1.2 Тип string и стандартный тип char 8
- 1.3 Функция Copy 9
- 1.4 Функция Concat 9
- 1.5 Функция Length 9
- 1.6 Процедура Delete 10
- 2. ОСНОВНАЯ ЧАСТЬ 11
- 2.1 Постановка задачи 11
- 2.3 Обоснование выбранного языка программирования 12
- 2.4 Листинг программы 14
- 2.5 Инструкция программиста 15
- 2.6 Инструкция пользователя 16
- 2.7 Контрольный пример 17
- ЗАКЛЮЧЕНИЕ 18
- СПИСОК ЛИТЕРАТУРЫ 19
ВВЕДЕНИЕ
Программа - это детальное и законченное описание алгоритма средствами языка программирования. Исполнителем программы является компьютер. Для выполнения компьютером программа должна быть представлена в машинном коде - последовательности чисел, понимаемых процессором. Написать программу в машинных кодах вручную достаточно сложно. Поэтому сегодня практически все программы создаются с помощью языков программирования, которые по синтаксису и семантике приближены к естественному человеческому языку. Это снижает трудоемкость программирования. Однако, текст программы, записанный с помощью языка программирования, должен быть преобразован в машинный код. Эта операция выполняется автоматически с помощью специальной служебной программы, называемой транслятором.
Трансляторы делятся на два типа: интерпретаторы и компиляторы.
Интерпретатор переводит в машинный код и выполняет очередной оператор (команду) программы. Если команда повторяется, то интерпретатор рассматривает ее как встреченную впервые.
Компилятор переводит в машинный код исходный текст программы целиком. Поэтому достоинство компиляторов - быстродействие и автономность получаемых программ. Достоинство интерпретаторов - их компактность, возможность остановить в любой момент выполнение программы, выполнить различные преобразования данных и продолжить работу программы.
Примерами служебных программ - интерпретаторов являются GW Basic, Лого, школьный алгоритмический язык, многие языки программирования баз данных. Компиляторами являются Turbo Pascal, С++, Delphi.
В общем случае для создания программ нужно иметь следующие компоненты:
- текстовый редактор - для набора исходного текста программы;
- компилятор - для перевода текста программы в машинный код;
- редактор связей - для сборки нескольких откомпилированных модулей в одну программу;
- библиотеки функций - для подключения стандартных функций к программе.
Современные системы программирования включают в себя все указанные компоненты и называются интегрированными системами.
Исходный текст программы можно получить без записи его вручную в текстовом редакторе. Существуют системы визуального программирования - RAD-среды (Rapid Application Development), которые, не исключая возможности записи программы вручную, позволяют создавать текст программы автоматически, путем манипуляций со стандартными элементами управления, включенными в RAD-среду. Поэтому для RAD-среды понятие «программирование» часто заменяют понятием «проектирование».
По способу разработки программ можно выделить два подхода:
- процедурное программирование - это программирование, при котором выполнение команд программы определяется их последовательностью, командами перехода, цикла или обращениями к процедурам;
- объектно-ориентированное программирование - программирование, при котором формируются программные объекты, имеющие набор свойств, обладающие набором методов и способные реагировать на события, возникающие как во внешней среде, так и в самом объекте (нажатие мыши, срабатывание таймера, превышение числовой границы и т.д.).
Таким образом, выполнение той или иной части программы зависит от событий в программной системе.
Объектно-ориентированное программирование (ООП) не исключает, а охватывает технологию процедурного программирования.
Из универсальных языков программирования наиболее популярны следующие: Basic; Pascal; C++; Java.
Для языка Basic существует много версий, реализованных и как интерпретаторы и как компиляторы. В России Basic традиционно используется в курсе информатики средней школы. Среда визуального программирования Microsoft Visual Basic используется как программная поддержка приложений MS Office.
Язык Pascal является компилируемым и широко используется как среда для обучения программированию в ВУЗах. RAD-средой, наследующей его основные свойства, является среда Borland Delphi.
Для языка C++ RAD-средой является Borland C++ Builder. Этот компилируемый язык часто используется для разработки программных приложений, в которых необходимо обеспечить быстродействие и экономичность программы.
1. ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ ЗАДАЧИ
1.1 Строковый тип данных в языке Pascal
Познакомимся с типом данных, который относится к числу структурированных. Это строковый тип данных (строка). Строка - это последовательность символов. Каждый символ занимает 1 байт памяти (код ASCII). Количество символов в строке называется ее длиной. Длина строки может находиться в диапазоне от 0 до 255. Строковые величины могут быть константами и переменными. Особенностью строки в Turbo Pascal является то, что с ней можно работать как с массивом символов, с одной стороны, и как с единым объектом, - с другой. За счет этого обработка строк достаточно гибка и удобна. Строковая константа есть последовательность символов, заключенная в апострофы. Например: «это строковая константа», «272». Строковая переменная описывается в разделе описания переменных следующим образом:
Var <идентификатор> : string[<максимальная длина строки>];
Например:
Var Name : string [20].
Параметр длины может и не указываться в описании. В таком случае подразумевается, что он равен максимальной величине - 255. Например: Var slovo : string.
Строковая переменная занимает в памяти на 1 байт больше, чем указанная в описании длина. Дело в том, что один (нулевой) байт содержит значение текущей длины строки. Если строковой переменной не присвоено никакого значения, то ее текущая длина равна нулю. По мере заполнения строки символами ее текущая длина возрастает, но она не должна превышать максимальной по описанию величины.
Символы внутри строки индексируются (нумеруются) от единицы. Каждый отдельный символ идентифицируется именем строки с индексом, заключенным в квадратные скобки. Например: N[5], S[i], slovo[k+l]. Индекс может быть положительной константой, переменной, выражением целого типа. Значение индекса не должно выходить за границы описания.
1.2 Тип string и стандартный тип char
Тип string и стандартный тип char совместимы. Строки и символы могут употребляться в одних и тех же выражениях.
Строковые выражения строятся из строковых констант, переменных, функций и знаков операций. Над строковыми данными допустимы операции сцепления и операции отношения.
Операция сцепления (конкатенации) (+) применяется для соединения нескольких строк в одну результирующую строку. Сцеплять можно как строковые константы, так и переменные.
Пример: 'Мама ' + 'мыла ' + 'раму'. В результате получится строка: 'Мама мыла раму'. Длина результирующей строки не должна превышать 255.
Операции отношения: =, <, >, <=, >=, <>. Позволяют произвести сравнение двух строк, в результате чего получается логическое значение (true или false). Операция отношения имеет приоритет более низкий, чем операция сцепления. Сравнение строк производится слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в таблице символьной кодировки. Если строки имеют различную длину, но в общей части символы совпадают, считается, что более короткая строка меньше, чем более длинная. Строки равны, если они полностью совпадают по длине и содержат одни и те же символы.
Пример:
Выражение |
Результат |
|
`True1'<'True2' |
True |
|
`Mother'>'MOTHER' |
True |
|
`Мама ` <> `Мама' |
True |
|
`Cat'='Cat' |
True |
1.3 Функция Copy
Функция Copy(S, Pozition, N) выделяет из строки S подстроку длиной N символов, начиная с позиции Pozition. Здесь N и Pozition - целочисленные выражения.
Пример:
Значение S |
Выражение |
Результат |
|
`Мама мыла раму' |
Copy(S, 6, 4) |
`мыла' |
|
`Маша ела кашу' |
Copy(S, 1, 8) |
`Маша ела' |
1.4 Функция Concat
Функция Concat(S1, S2, …, SN) выполняет сцепление (конкатенацию) строк S1, S2, …, SN в одну строку.
Пример:
Выражение |
Результат |
|
Concat('Маша ', 'ела ', 'кашу') |
'Маша ела кашу' |
1.5 Функция Length
Функция Length(S) - определяет текущую длину строки S. Результат - значение целого типа.
Пример:
Значение S |
Выражение |
Результат |
|
'test-5' |
Length(S) |
6 |
|
'(A+B)*C' |
Length(S) |
7 |
1.6 Процедура Delete
Процедура Delete(S, Poz, N) - удаление N символов из строки S, начиная с позиции Poz.
Пример:
Исходное значение S |
Оператор |
Конечное значение S |
|
'abcdefg' |
Delete(S, 3, 2) |
'abefg' |
|
'abcdefg' |
Delete(S, 2, 6) |
'a' |
В результате выполнения процедуры уменьшается текущая длина строки в переменной S.
2. ОСНОВНАЯ ЧАСТЬ
2.1 Постановка задачи
Написать программу, которая в веденной с клавиатуры строке преобразует строчные буквы русского алфавита в прописные (учтите что функция UPCASE с символами русского алфавита не работает). Рекомендуемый вид экрана во время работы приведен ниже (см. рис. 1):
(Введите строку текста и нажмите < ENTER>)
2.2 Блок-схема алгоритма решения задачи
2
Рис. 1. Блок-схема решения задачи
2.3 Обоснование выбранного языка программирования
Borland Pascal with Objects (Паскаль с объектами фирмы Borland) предназначен для всех тех пользователей, которые хотят разрабатывать прикладные программы для операционной системы DOS или операционной среды Windows. Так же можно создавать прикладные программы, работающие в реальном режиме DOS, Windows или прикладные программы для защищенного режима DOS или Windows. Borland Pascal предлагает богатую среду программирования, которая делает разработку программного обеспечения более производительной и более приятной. Используя структурированный язык высокого уровня Паскаль можно писать программы для приложений любого типа и размера. Borland Pascal 7.0 оставаясь совместимым с программным кодом, написанным для Turbo Pascal или Turbo Pascal for Windows, предоставляет вам новые возможности. Исследуя эти возможности следует учитывать, что этот компилятор Паскаля является быстрым и эффективным компилятором и принят в качестве общемирового стандарта. В 1992 году фирма Borland International выпустила два пакета программирования, основанные на использовании языка Паскаль - Borland Pascal 7.0 и Turbo Pascal 7.0. Система программирования Turbo Pascal разработанная американской корпорацией Borland остается одной из самых популярных систем программирования в мире. Этому способствует, с одной стороны, простота лежащего в ее основе языка программирования Паскаль, а с другой - труд и талант сотрудников Borland во главе с идеологом и создателем Turbo Pascal Андерсом Хейлсбергом, приложившим немало усилий к ее совершенствованию. Придуманный швейцарским ученым Никласом Виртом как средство для обучения студентов программированию, язык Паскаль стараниями А. Хейлсберга превратилась в мощную современную профессиональную систему программирования, которой по плечу любые задачи - от создания простых программ, предназначенных для решения несложных вычислительных задач, до разработки сложнейших реляционных систем управления базами данных.
Появление Windows и инструментальных средств Borland Pascal with Object и Delphi для разработки программ в среде Windows лишний раз показало, какие поистине не исчерпывающие возможности таит он в себе : и Borland Pascal, и используемый в Delphi язык Object Pascal основываются на Турбо Паскале и развивают его идеи. Пакет Turbo Pascal включает в себя как язык программирования - одно из расширений языка Паскаль для ЭВМ типа IBM, так и среду, предназначенную для написания, отладки и запуска программ. Язык характеризуется расширенными возможностями по сравнению со стандартом, хорошо развитой библиотекой модулей, позволяющей использовать возможности операционной системы, создавать оверлейные структуры, организовывать ввод - вывод, формировать графические изображения и т.д. Среда программирования позволяет создавать тексты программ, компилировать их, находить и справлять ошибки, компоновать программы из отдельных частей (включая стандартные модули), отлаживать и выполнять отлаженную программу. Пакет представляет пользователю большой объем справочной информации, позволяет применять объектно-ориентированное программирование, обладает встроенным ассемблером, имеет инструментальное средство для создания интерактивных программ - Turbo Vision и т.д.
Достоинства и недостатки Turbo Pascal.
Достоинства:
1. Качественная среда разработки, включающая мощный отладчик.
2. Удачная система помощи - язык можно изучить лишь по справочным статьям, без посторонних книг.
3. Высокая скорость компиляции, высокая скорость выполнения откомпилированных программ.
4. Качественно реализованное объединение Паскаля и ассемблера.
Недостатки:
1. Компилятор рассчитан на реальный режим DOS, который сейчас практически не используется.
2. Недостаточно полно реализовано объектно-ориентированное программирование.
2.4 Листинг программы
Program z1; uses crt;
var s:string;
i:integer;
begin
clrscr;
Writeln('Введите строку и нажмите <Enter> ');
readln(s);
for i:=1 to length(s) do
case s[i] of
'а': s[i]:='А';
'б': s[i]:='Б';
'в': s[i]:='В';
'г': s[i]:='Г';
'д': s[i]:='Д';
'е': s[i]:='Е';
'ё': s[i]:='Ё';
'ж': s[i]:='Ж';
'з': s[i]:='З';
'и': s[i]:='И';
'й': s[i]:='Й';
'к': s[i]:='К';
'л': s[i]:='Л';
'м': s[i]:='М';
'н': s[i]:='Н';
'о': s[i]:='О';
'п': s[i]:='П';
'р': s[i]:='Р';
'с': s[i]:='С';
'т': s[i]:='Т';
'у': s[i]:='У';
'ф': s[i]:='Ф';
'х': s[i]:='Х';
'ц': s[i]:='Ц';
'ч': s[i]:='Ч';
'ш': s[i]:='Ш';
'щ': s[i]:='Щ';
'ъ': s[i]:='Ъ';
'ы': s[i]:='Ы';
'ь': s[i]:='Ь';
'э': s[i]:='Э';
'ю': s[i]:='Ю';
'я': s[i]:='Я';
else s[i]:=UpCase(s[i]);
end;
Writeln(s);
readln
end.
2.5 Инструкция программиста
Для работы с данной программой необходимо иметь на компьютере операционную систему MS-DOS, Windows 9x или XP, а также компилятор Turbo Pascal 7.0 или Borland Pascal 7.1.
1. Запустить Turbo Pascal 7.0 или Borland Pascal 7.1
2. Открыть программу командой File -> Open в контекстном меню Turbo Pascal. Запуск программы осуществляется нажатием комбинации клавиш [Ctrl+F9], а если программа скомпилирована в исполняемый файл расширением *.exe, то нужно пропустить пункты 1-2 и запустить двойным щелчком или клавишей ввода.
3. Что бы проверить задачу на ошибки, необходимо нажать клавиши [Alt+F9].
4. Чтобы покинуть Turbo Pascal, в контекстном меню компилятора, нужно выбрать пункт File -> Exit или нажатием клавиш [alt+x].
2.6 Инструкция пользователя
Program - заголовок программы (пишется имя программы).
Var - используется для описания переменных.
Begin - раздел операторов (тело программы) здесь выполняются какие-либо действия. Основной блок программ.
If then else - условный оператор. Условные операторы предназначены для выбора на исполнение одного из возможных действий (операторов) в зависимости от некоторого условия (при этом одно из действий может быть пустым или отсутствовать).
UpCase - позволяет преобразовывать символ любой литеры из строчного в прописной. (Русские литеры не могут обрабатываться этой функцией).
Write - оператор вывода.
Readln - оператор ввода.
ClrScr - Оператор очистки экрана. Очищает окно в текстовом режиме.
End - конец программы.
2.7 Контрольный пример
ЗАКЛЮЧЕНИЕ
В данной работе необходимо было написать программу, которая в веденной с клавиатуры строке преобразует строчные буквы русского алфавита в прописные. Данная программа написана на современном языке Turbo-Pascal версии 7.1, который позволил наиболее просто представить эту работу. В ходе выполнения курсового проекта я ознакомился с новыми приемами программирования и особенностями языка Turbo-Pascal.
СПИСОК ЛИТЕРАТУРЫ
1. Абель П. Язык ассемблера для IBM PC и программирования / Пер. с англ. Ю.В. Сальникова. - М.: Высш.шк.,1992.-447с.
2. Юров В., Хорошенко С. Ассемблер (учебный курс). - С-Пб.: Питер, 1999.-672с.
3. Зубков С.В. Assembler, DOS, Windows и Unix. - М.: ДМК, 1999.-640с.
4. Глушков В.Н. Основы безбумажной информатики Изд. 2-е, испр. - М: Наука, 1987. 552с.
5. Фигурнов В.Э. IBM PC для пользователя - М.: ИНФРА М, 1997, 475с.
6. Михаил Гук Процессоры Pentium II, Pentium Pro и просто Pentium. - С-Пб: Питер, 1999, 283с.
7. Корнеев В.В., Киселев А.В. Современные микропроцессоры. - М.: Нолидж, 1998,-240с.
8. Довгаль С.И., Литвинов Б.Ю., Сбитнев А.И., Персональные ЭВМ: Турбо-Паскаль V6.0, Объектное программирование, Локальные сети. (учебное пособие). - Киев: Информсистема сервис, 1993. 440с.
9. Перминов О.Н. Программирование на языке Паскаль. - М.: Радио и связь, 1988, 219с.
10. Рыбкин Е.Н., Юдин А.Ю.: Программные средства ПЭВМ; Операционная система MS_DOS. - М.: Финансы и статистика, 1991, 112с.
11. Фаронов В.В. Delphi 3. Учебный курс. - М.: Нолидж, 1998, 400с.
12. Фаронов В.В. Delphi 4. Учебный курс. - М.: Нолидж, 1998, -464с.
13. Прайс Д. Программирование на языке Паскаль: Практическое руководство. Пер. с англ. - М.: Мир, 1987, 232с.
14. Джордейн Р. Справочник программиста персональных компьютеров типа IBM PC, XT и AT: Пер. с англ./ Предисл. Н.В. Гайского.
15. Марков А.С., Милов М.П., Пеледов Г.В.: Программное обеспечение ЭВМ. кн.11, Перспективы развития вычислительной техники, в 11 книгах, Спр. пособие / Под ред. Ю.М. Смирнова. - М.: Высшая школа, 1990, 127с.
16. Офицеров Д.В., Старых В.А. Программирование в интегрированной среде Турбо-Паскаль: Справ. пособие. - Мн.: Беларусь, 1992, 240с.
Подобные документы
Язык программирования как формальная знаковая система, предназначенная для записи программ, его отличие от естественных языков. Прописные и строчные буквы латинского алфавита. Ключевые слова языка программирования. Классическая схема создания программы.
презентация [1,2 M], добавлен 19.02.2014Понятие объектно-ориентированного программирования, общая характеристика языков высокого уровня. Разработка программного обеспечения для реализации компьютерной игры "пинбол" с помощью императивного программирования в среде Microsoft Visual Basic.
курсовая работа [428,9 K], добавлен 19.09.2012Разработка приложения "Калькулятор с переходом в строковый калькулятор" с применением объектно-ориентированного программирования. Концепция и понятия объектно-ориентированного программирования. Язык программирования Java. Листинг программы "Калькулятор".
курсовая работа [966,9 K], добавлен 11.02.2016Характеристики и свойства языков программирования. Исследование эволюции объектно-ориентированных языков программирования. Построение эволюционной карты механизмов ООП. Разработка концептуальной модели функционирования пользовательского интерфейса.
курсовая работа [2,6 M], добавлен 17.11.2014Методология объектно-ориентированного программирования в Java. Понятия класса, объекта и объектной переменной. Динамическая и статическая объектные модели. Логическое структурирование приложения. Наследование в Java. Отличия интерфейсов от классов.
курс лекций [547,2 K], добавлен 01.05.2014Разработка программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С средствами Microsoft Visual Studio 2010. Построение алгоритма реализации. Класс программы, инструкция по использованию программы.
курсовая работа [1,0 M], добавлен 26.12.2013Почему C++. Возникновение и эволюция языка C++. Сравнение языков С++ и С. Эффективность и структура. Процедурное программирование. Модульное программирование. Абстракция данных. Объектно-ориентированное программирование. Улучшенный С.
реферат [26,4 K], добавлен 03.06.2004Основы учебной системы на языке программирования Java. Регистрация, раздача учебного материала, проверка знаний, способы выдачи и принятия информации. Базовые характеристики системы, инструкция использования, некоторые особенности поведения программы.
курсовая работа [1,0 M], добавлен 07.05.2009Выполнение Java-программы. Набор программ и классов JDK. Объектно-ориентированное программирование в Java. Принципы построения графического интерфейса. Компонент и контейнер графической системы. Апплеты как программы, работающие в среде браузера.
курсовая работа [42,3 K], добавлен 08.02.2011Обзор основных используемых языков программирования (С++, Java, Pascal). Анализ существующих методов шифрования паролей. Основные понятия объектно-ориентированного программирования. Реализация приложения для генерирования паролей на языке Object Pascal.
курсовая работа [822,4 K], добавлен 07.07.2012