ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.10.2023
Просмотров: 86
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Алгоритм и программа. Способы записи алгоритмов.
Общая характеристика языков программирования и их классификация
Основные конструкции языка програмирования.
Язык программирования Си-Шарп (C#). Структура программы в C#
Понятие величины. Оператор присваивания. Объявление переменной.
Линейные программы. Ввод и вывод данных
Арифметические и логические операции в Си-Шарп. Приоритет операций
Типы данных C#. Объявление и инициализация.
Алгоритм и программа. Способы записи алгоритмов.
Алгоритм — инструкция, включающая определенный четкий порядок действий, совершаемых для выполнения поставленной задачи. Число действий всегда конечно. Программа (компьютерная, прежде всего) — запись последовательности инструкций, исполняемых компьютером.
Выделяют следующие основные способы записи алгоритмов:
вербальный, когда алгоритм описывается на человеческом языке
символьный, когда алгоритм описывается с помощью набора символов
графический, когда алгоритм описывается с помощью набора графических изображений
Общая характеристика языков программирования и их классификация
Основными характеристиками, позволяющими сравнивать языки программирования и выбирать наилучшие для решения той или иной задачи, являются мощность, уровень и концептуальная целостность. Мощность языка характеризуется количеством и разнообразием задач, алгоритмы решения которых можно записать, используя данный язык. Уровень языка характеризуется сложностью решения задач с помощью этого языка.
Классификацию языков программирования можно вести по нескольким критериям: машинно-ориентированные (ассемблеры) и машинно-независимые, специализированные и универсальные. К специализированным языкам можно отнести язык АРТ (A utomatically P rogrammed T ools) — первый специализированный язык программирования для станков с числовым управлением.
Основные конструкции языка програмирования.
Процедурное (императивное) программирование
- это всегда описание порядка действий, которые необходимо выполнить вычислительной машине, чтобы достичь требуемого результата.
Есть еще и декларативное программирование, к которому относят функциональное и логическое описание решения задачи. Функциональное программирование основано на композиции и суперпозиции функций – декларативном описании всего решения или отдельного его шага. Декларативное программирование, в отличие от императивного, не описывает то, в каком порядке следует выполнять вычисления, а именно "декларирует" то, какие вычисления необходимы в принципе. Примером декларативного языка программирования можно назвать язык запросов к базе данных SQL: вы формулируете только суть запроса: указываете, какие данные выбрать, откуда их взять и какие критерии отбора использовать, но сам процесс обработки запроса вы не контролируете. Логическое программирование, в свою очередь, сводится к определению логических взаимосвязей между структурами данных и исчислению предикатов.
Наиболее известным логическим языком программирования является Prolog. Ни примеров, ни описаний из разряда “как работает” непроцедурное программирование здесь приведено не будет.
Выражения
Выражения не являются самостоятельными конструкциями языка программирования. Чаще всего, они являются аргументами оператора присваивания, условного оператора или цикла.
Математическое выражение
Назначение:
Описание выражения, результатом которого является числовое значение. В состав математического выражения могут входить константы (конкретные числовые значения), переменные элементарных типов и функции. Практически все языки программирования поддерживают основные математические операции: +(сложение),-(вычитание),*(умножение),/(деление). Некоторые также поддерживают на базовом уровне возведение в степень (^), остаток от деления и другие. Более сложные операции доступны, как правило, в виде встроенных функций, например, sqrt(x) – квадратный корень или exp(x) – значение экспоненты. Естественно, что синтаксис математических выражений поддерживает скобки и унарный минус.
Пример математического выражения:
(вычисление длины стороны треугольника по теореме косинусов)
SQRT(B^2 + C^2 - 2*B*C*COS(alpha))
Логическое выражение
Назначение:
Описание выражения, результатом которого является истина (true) или ложь (false). В состав логического выражения также могут входить константы, переменные, функции и скобки. Плюс ко всему, могут использоваться операции сравнения: “больше”, “меньше”, “равно”; и логические операции: “И” (AND), “ИЛИ” (OR) и “НЕ” (NOT).
Пример логического выражения:
(условие существования решения квадратного уравнения)
(A=0) ИЛИ (C=0) ИЛИ ((B^2-4*A*C)>=0)
C/C++,C#, Java
(A==0) || (C==0) || ((B*B-4*A*C)>=0)
Pascal/Delphi, Visual Basic/VB.NET
(A=0)or(C=0)or((B*B-4*A*C)>=0)
Строковое выражение
Назначение:
Манипуляция со строками. По виду напоминает математическое выражение, но результатом его является новая строка. Операция +(сложение) в контексте строкового выражения означает объединение (конкатенацию) двух и более строк
Операторы
Оператор – это основная конструкция в языке программирования, которая представляет собой команду вычислительной машине выполнить некоторое действие или организует выполнение других операторов в определенном порядке.
Составной оператор
Назначение
Организация других операторов в последовательность – конструкция следования.
Блок-схема конструкции следования.
В языках C/C++, C# и Java составной оператор заключается в фигурные скобки {}, В языке Pascal/Delphi составной оператор начинается ключевым словом begin и заканчивается ключевым словом end, а в Visual Basic/VB.NET начало и конец составного оператора могут выглядеть по-разному, например If/End If или Sub/End Sub.
Объявление переменной
Назначение:
Объявление и выделение памяти под переменную заданного типа. В случае с объектами, объявление и выделение памяти может выполняться отдельно. В случае с переменными элементарных типов и экземплярами структур память под них выделяется сразу по факту объявления. Объявление переменной, помимо типа и имени, может быть дополнено инициализирующим значением и модификатором константы. Наличие модификатора константы запрещает изменять
значение переменной после ее инициализации.
Оператор присваивания
Назначение:
Изменение значения переменной. Аргументом оператора присваивания может быть математическое, логическое, строковое выражение или функция. Во многих языках программирования оператор присваивания можно совместить с объявлением переменной.
Условный оператор или оператор IF
Назначение:
Организация ветвления хода вычислений в зависимости от условия. ЕСЛИ условие истинно, то выполняется основная часть условного оператора ТО. Также есть возможность определить альтернативный ход вычислений ИНАЧЕ, наличие которого не является обязательным.
Оператор выбора или оператор SELECT (SWITCH)
Назначение:
Организация ветвления хода вычислений в соответствии со значением критерия выбора. Оператор выбора предполагает передачу управления одному из вариантов выбора, с которым ассоциировано значение, равное заданному критерию.
Цикл с определенным количеством итераций или цикл FOR
Назначение:
Организация определенного заголовком цикла числа итераций. Чаще все число итераций задается начальным и конечным значением счетчика цикла и шагом его изм..html''я с каждой итерацией. Счетчик цикла – числовая переменная, значение которой может использоваться в теле цикла, например, в качестве индекса текущего элемента в массиве в задачах последовательной обработки массивов. Явное определение величины шага обязательным не является. Значением шага по умолчанию, обычно, является единица.
Блок-схема цикла FOR.
Цикл с предусловием или цикл WHILE
Назначение:
Организация повторения (зацикливания) определенной части программы. Условием выполнения тела цикла является истинность заданного логического выражения. Цикл с предусловием характерен тем, что сначала проверяется логическое выражение и только потом выполняется тело цикла. Таким образом, тело цикла с предусловием имеет все шансы не выполниться ни одного раза.
Блок-схема цикла с предусловием.
Цикл с постусловием или цикл DO (UNTIL)
Назначение:
Все аналогично циклу с предусловием с той лишь разницей, что сначала всегда выполняется тело цикла, а потом проверяется условие..html''орного его выполнения. Цикл с постусловием выполняется минимум один раз! С помощью цикла с постусловием, к примеру, программируют всем известную задачу “угадай число”, критерием завершения цикла в которой является факт совпадения введенного пользователем варианта с “загаданным” машиной значением. Существует две разновидности цикла с постусловием: цикл выполняется ПОКА условие истинно или цикл выполняется ПОКА НЕ условие истинно, т.е. цикл завершается, как только условие становится истинным и выполняется, пока оно ложно.
Блок-схема цикла с постусловием.
Цикл перебора элементов в коллекции или цикл FOR EACH
Назначение:
Избавить программиста от самостоятельного перебора элементов в массиве или коллекции. Количество итераций соответствует числу элементов в заданном множестве.
Выход из подпрограммы или оператор RETURN/EXIT
Назначение:
Досрочный выход из процедуры или функции. В языках C/C++, C#, Java и VB.NET оператор return в контексте процедуры просто досрочно завершает ее работу, а в контексте функции еще и определяет ее значение: return result_value;. В языках Pascal/Delphi оператор exit просто завершает выполнение и процедуры и функции, а значение функции присваивается по ее имени: function_name:=result_value;.
Выход из составного оператора или операторы BREAK и CONTINUE
Назначение:
Досрочный выход из составного оператора, например, досрочное завершение цикла. В языках C/C++, C#, Java и Pascal/Delphi оператор break позволяет завершить работу текущего цикла или оператора switch. В Visual Basic/VB.NET для этих целей используются инструкции Exit For, Exit While, Exit Do и т.п. В языках C/C++, C#, Java и Pascal есть еще и оператор continue, который в отличие от break не выходит совсем из цикла, а завершает только текущую итерацию, т.е. переходит к анализу заголовка цикла.
Метка и переход к метке или операторы LABEL и GOTO