Главная » Все файлы » Просмотр файлов из архивов » Документы » Экзаменационные вопросы ОП

Экзаменационные вопросы ОП

2020-02-02СтудИзба

Описание файла

Документ из архива "Экзаменационные вопросы ОП", который расположен в категории "". Всё это находится в предмете "основы программирования" из 1 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .

Онлайн просмотр документа "Экзаменационные вопросы ОП"

Текст из документа "Экзаменационные вопросы ОП"

Экзаменационные вопросы по курсу «основы программирования»

  1. Основные стадии разработки программного продукта.

Постановка и анализ задачи, определение требований;

- Проектирование,

- Разработка, написание кода;

- тестирование, отладка

и оценка качества;

-документирование.

- внедрение и сопровождение.





  1. Стадии предпроектных исследований и технического задания.

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

  1. Стадия эскизного проектирования.

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

  1. Стадия технического проектирования.

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

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

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

  1. Стадия рабочего проектирования.

На стадии рабочего проектирования оформляется программная документация.

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

  1. Стадии испытаний и внедрения в производство.

Стадия испытаний

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

Стадия внедрения в эксплуатацию

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

  1. Понятие алгоритма. Свойства алгоритма.

Алгоритм — формально описанная последовательность действий‚ которые необходимо выполнить для получения требуемого результата.

Основные особенности алгоритма

  • конечность (алгоритм всегда должен заканчиваться после выполнения конечного числа шагов);

  • определенность (каждый шаг алгоритма должен быть точно определен);

  • ввод (алгоритм имеет некоторое‚ возможно равное нулю‚ число входных данных‚ т.е. величин‚ которые задаются до начала его работы или определяются динамически во время его работы);

  • вывод (у алгоритма есть одно или несколько выходных данных‚ т.е. величин‚ которые имеют вполне определенную связь с входными данными);

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

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

Различают последовательности действий линейной‚ разветвленной и циклической структуры.

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

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

Циклическая структура включает в себя многократно повторяющуюся последовательность операций.

Циклические структуры можно разделить следующим образом:

  • счетные циклы — циклические процессы, для которых количество повторений известно;

  • итерационные циклы — циклические процессы, завершающиеся по достижении или нарушении некоторых условий;

  • поисковые циклы — циклические процессы, из которых возможны два варианта выхода: выход по завершению процесса и досрочный выход по какому-либо дополнительному условию.

Формальное описание алгоритмов осуществляется с использованием схем алгоритмов и псевдокодов.

  1. Основные алгоритмические структуры.

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

  • следование (последовательное выполнение действий);

  • ветвление (выбор одного из двух вариантов действий);

  • цикл-пока (повторение действий, пока не будет нарушено условие, выполнение которого проверяется в начале цикла)

Помимо базовых структур существуют дополнительные структуры, производные от базовых:

  • выбор (выбор одного варианта из нескольких в зависимости от значения некоторой величины);

  • цикл-до (повторение действий, пока не будет нарушено условие, выполнение которого проверяется в конце цикла);

  • счетный цикл (цикл с заданным числом повторений).

  1. Схема и псевдокод алгоритма.

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

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

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

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

  1. Технология программирования.

  1. Структурное программирование.

  1. Понятие языка программирования.

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

Синтаксис языка — совокупность правил, определяющих допустимые конструкции (слова, предложения) языка, его форму.

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

  1. Характеристика языка программирования Си.

  1. Алфавит языка Си. Идентификаторы.

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

Алфавит языка Си включает:

строчные, прописные буквы латинского алфавита (a...z, A...Z) и символ подчеркивания _ (строчные и прописные буквы различаются)

цифры (0...9)

специальные знаки: . , ; + - * / = % & ! ( ) { } ^ | ? : [ ] ^ ~' " # \

служебные слова: char, short, int, long, float, double, enum, struct, union, signed, unsigned, void, auto, extern, register, static, break, case, continue, default, do, else, for, goto, if, return, switch, while, sizeof, typedef.

Идентификатор — это последовательность букв латинского алфавита (включая символ подчеркивания) и цифр, которая обязательно начинается с буквы.

  1. Основные типы данных языка Си.

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

В языке Си все переменные должны быть объявлены явно.

Объявление переменной — это оператор языка Си, который выглядит следующим образом:

тип идентификатор[=значение];

Тип задается соответствующим ключевым словом, например, int или char.

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

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

  1. Константы.

Константа — определенная в программе и неизменяемая величина.

В программе константа может использоваться как поименованная или как литерал.

Поименованная константа – константа, обращение к которой выполняется по имени.

Она описывается в разделе объявлений переменных и поименованных констант. Для объявления поименованной константы используется ключевое слово const.

  1. Понятия «выражение» и «оператор». Виды операторов в языке Си.

Оператор — это конструкция языка Си, которая вызывает выполнение действия.

В языке программирования Си существуют следующие операторы:

  • простые операторы;

  • блоки операторов (блоки, составные операторы);

  • управляющие операторы.

Выражение — это конструкция языка Си, имеющая значение.

  1. Арифметические операции.

Арифметические операции язык Си — операции, реализующие арифметические действия.

  • Аддитивные операции

    • сложение (+)

    • вычитание (-)

  • Мультипликативные операции

    • умножение (*)

    • деление (/)

    • получение остатка от деления (%)

  • Изменение знака (унарный минус) (-)

  1. Преобразования данных при выполнении арифметических операций.

  1. Операция присваивания. Составные операции присваивания. Операция простого присваиванияиспользуется для замены значения левого операнда, значением правого операнда. При присваивании производится преобразование типа правого операнда к типу левого операнда по правилам, упомянутым раньше. Левый операнд должен быть модифицируемым.

Кроме простого присваивания, имеется целая группа операций присваивания, которые объединяют простое присваивание с одной из бинарных операций. Такие операции называются составными операциями присваивания и имеют вид:

(операнд-1) (бинарная операция) = (операнд-2).



Составное присваивание по результату эквивалентно следующему простому присваиванию:

(операнд-1) = (операнд-1) (бинарное операция) (операнд-2) .



Отметим, что выражение составного присваивания с точки зрения реализации не эквивалентно простому присваиванию, так как в последнем операнд-1 вычисляется дважды. Каждая операция составного присваивания выполняет преобразования, которые осуществляются соответствующей бинарной операцией. Левым операндом операций (+=) (-=) может быть указатель, в то время как правый операнд должен быть целым числом.

  1. Преобразования данных при выполнении операции присваивания.

Язык Си допускает выражения с операндами различных типов. Например, можно делить переменную типа float на константу типа int, прибавлять константу типа int к переменной типа char и т.д. Если выражение имеет операнды различных типов, низкий тип всегда преобразуется к более высокому. Один тип ниже другого, если он занимает меньше памяти

  1. Операция приведения типа.

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

  1. Операции инкрементации и декрементации.

операнд++

++операнд

Операция инкрементации ++ добавляет к операнду единицу.

операнд--

--операнд

Операция декрементации -- вычитает из операнда единицу.

Операндом может быть именующее выражение, например, имя переменной.

Приоритет этих операций определяется таблицей приоритетов языка Си

  1. Операции отношения.

Операции отношений — операции языка Си, которые используются для сравнения двух числовых значений.

Приоритет данных операций определяется таблицей приоритетов языка Си

  1. Логические операции.

 логические операции: логическое умножение И — коньюнкция (&&), логическое сложение ИЛИ — дизьюнкция(||), логическое отрицание НЕ (!).

  1. Побитовые операции.

Побитовые операции — это операции, работающие с отдельными битами операндов. Операнд должен быть целочисленным, т.е. иметь тип long long, long, unsigned, int, short или char.

  1. Управляющий оператор if-else. Условная операция.

Оператор if — управляющий оператор языка Си, реализующий ветвление алгоритма.

Условная операция- операция языка Си, которая по действию аналогична оператору if-else

  1. Управляющий оператор switch.

Оператор switch — управляющий оператор языка Си, реализующий алгоритмическую структуру выбор.

Синтаксис оператора switch определен следующим образом:

switch (выражение)

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
438
Средний доход
с одного платного файла
Обучение Подробнее