Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лекции по дисциплине Информатика и программирование Автор ~ Шульга Т.

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 25.11.2024

5

Лекции по дисциплине «Информатика и программирование»

Автор – Шульга Т.Э.

Лексические основы языка программирования

Языки программирования относятся к искусственным языкам.

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

В тексте на любом естественном языке можно выделить четыре основные структурные компоненты: символы, слова, словосочетания и предложения. Подобные элементы содержит и любой алгоритмический язык: символы, лексемы, выражения и операторы. Лексемы образуются из символов, выражения из лексем, а операторы из выражений и лексем. Объединенная единым алгоритмом совокупность операторов образует программу на алгоритмическом языке.

Алфавит языка (или его символы) – это основные неделимые знаки, с помощью которых пишутся все тексты на языке.

В алфавит языка С++ входят

  1. арабские цифры
  2. латинские буквы и знак подчеркивания
  3. специальные знаки: “ ‘ {} .  , & ? () [] < >  и т.д.
  4. пробельные символы (пробел, табуляция, символ перехода на новую строку)

Лексемы (или элементарные конструкции) – минимальная конструкция языка, имеющая самостоятельный смысл.

Из символов алфавита формируются следующие лексемы языка:

  1. идентификаторы;
  2. ключевые слова (служебные, зарезервированные);
  3. знаки операций;
  4. константы;
  5. разделители (скобки, точка, запятая, пробельные символы).

Границы лексем определяются другими лексемами, такими как разделители, знаки операций и комментариями.

Рассмотрим каждый из видов лексем подробно.

Идентификатор – это набор символов, представляющих имя программного объекта. Правила написания идентификаторов в конкретном языке программирования указываются в справочниках по этому языку. Например в С++ идентификатор представляет собой последовательность из букв латинского алфавита, десятичных цифр и символов подчеркивания, начинающуюся не с цифры, причем прописные и строчные буквы различаются. На длину различаемой части идентификатора в С++ различные реализации накладывают свои ограничения (по стандарту длина не ограничена). Задание для самостоятельной работы: в справочной системе MS Visual Studio найти каковы ограничения на длину идентификатора.

Ключевые слова – это идентификаторы, зарезервированные в языке для специального использования. Ключевые слова языка также перечисляются в справочнике по языку, но знакомится с ними имеет смысл по мере изучения конструкций языка программирования.

Пример ключевых слов в языке С++:

int – ключевое слово для описания переменных целого типа

if – ключевое слово для построения условной конструкции

Знаки операций - это один или более символов, определяющих действия над операндами. Знаки операций обеспечивают формирование и последующие вычисление выражений. Выражение задает правило для получения значения. Один и тот же знак операции может употребляться в различных выражениях и по-разному интерпретироваться в зависимости от контекста. (Например, унарный и бинарный минус). Для каждой операции задан тип операндов, над которыми может выполняться данная операция. Операндами могут быть выражения и их частные случаи – константы и переменные. Операции делятся на унарные, бинарные и тернарую по количеству операндов (1,2,3 соответственно).

Примеры унарных операций

-7    унарный минус

 a++ или ++a – операция инкремента (увеличения на единицу)

a-- или --a – операция декремента (уменьшения на единицу)

! a – операция отрицание

Все бинарные операции делятся на следующие основные группы:

  1. аддитивные (+,-);
  2. мультипликативные(*, /, %);
  3. поразрядные (&,|, ^);
  4. операции отношений (<, >, <=, >=, ==, !=);
  5. логические (&&, ||);
  6. присваивания (=, *=, );
  7. и др.

Рассмотрим тернарную условную операцию.

выражение1? выражение2: выражение3;   

Если истинно выржение1, то выполняется выражение2, иначе выполняется выражение3

Например,     a>0?b=1:b=-1

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

a==++b*c+d             (++        *            +      ==)

-!a        (-(!a))

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

Задание для самостоятельной работы: Изучить операции языка С (см. пособие) и их приоритеты.

Константа – это лексема, представляющая изображение фиксированного числового (целого или вещественного), строкового или символьного значения.

Например,

целые 10, 012(8), 0хА(16);

вещественная 78.8,  5., .09, 0.2E-3;

символьная – один  символ, заключенный в кавычки, например ‘a’, ‘\n’;

строковая  - последовательность символов, заключенная в кавычки “Hello, World”.

Последовательность символов, начинающаяся с обратной косой черты называется escape-последовательностями (управляющими последовательностями) и используются для представления

  1. кодов, не имеющих графического изображения;
  2. символов “ ‘ \ ?
  3. любого символа, с помощью его шестнадцатеричного и восьмеричного кода \141 \х61 =a (от 0 до 255).

Оператор задает законченное описание некоторого действия. (Существует путаница понятий, например, у Страуструпа оператор и операция – синонимы а для таких элементов языка, как if, for используются выражение statement – утверждение, предложение, инструкция). Каждый оператор в С заканчивается точкой с запятой.

Для описания сложного действия требуется последовательность операторов. Операторы могут быть объединены в составной оператор или блок с помощью инструктивных (операторных) скобок (например, в С инструктивными являются скобки {}).  В этом случае они рассматриваются как один оператор.

Операторы бывают исполняемые и не исполняемые. Исполняемые операторы задают действия над данными. Неисполняемые операторы служат для описания данных, поэтому их называют операторами описания или просто описаниями.

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




1. Тема урока- Семибоярщина
2. Политические партии 1951 Методы политической науки 1959 О диктатуре 1961 Социология политики 1966 Де
3. Тематика семинарских занятий ’ Тема семинарского задания
4. Статья 131 Государственная регистрация недвижимости 1
5.  Понятие законности
6. Документооборот общеобразовательного учреждения
7. Территория успеха Комитет по молодежной политике физической культуре и спорту администрации Чайковского
8. Реферат- Основные блоки и устройства компьютера
9. НА ТЕМУ ldquo;Технологическая революцияrdquo; как новейший этап современной НТР РУКОВОДИТЕЛЬ ПО КАФЕ
10. вступу до шлюбу. Державна реєстрація шлюбу та її правове значення
11. Предпринимательство в современной России
12. 2. Елементи системи оподаткування До елементів системи оподаткування відносяться - суб~єкт платни.html
13. тематический метод
14. практикум по модульной дисциплине Фитопатология для подготовки бакалавров по программе
15. Курсовая работа- Организация аттестации специалистов и руководителей
16. Правовое регулирование гражданства Республики Беларусь
17. Среди всех наиболее распространённых сегодня в мире слов нет пожалуй ни одного другого со столь же неопреде
18. тематические методы и модели в социальноэкономических исследованиях.html
19. Потребительская кооперация в годы Великой Отечественной войны
20. Методы фармакологической коррекции двигательноэвакуаторных нарушений желудка и двенадцатиперстной кишки