Материал: 406

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

int main(int argc, char* argv[])

{

setlocale(LC_CTYPE,"Russian");

double plus, minus, pow, div; // объявление переменных через запятую double a1; // отдельное объявление переменной a1

double a2; // отдельное объявление переменной a2 cout << "Введите первое число: ";

cin >> a1;

cout << "Введите второе число: "; cin >> a2;

plus = a1 + a2; // операция сложения minus = a1 - a2; // операция вычитания pow = a1 * a2; // операция умножения div = a1 / a2; // операция деления

cout << a1 << "+" << a2 << "=" << plus << endl; cout << a1 << "-" << a2 << "=" << minus << endl; cout << a1 << "*" << a2 << "=" << pow << endl; cout << a1 << "/" << a2 << "=" << div << endl; system("pause");

return 0;

}

Описание: простой калькулятор, который может: добавлять, вычитать, умножать и делить.

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

2.2 Лабораторная работа №2 «Рефакторинг программного кода»

Рекомендуемая литература: 1.

Перечень дополнительных ресурсов: 2, 3, перечень ресурсов в сети Интернет.

Цель: Изучить технологию рефокторинга программного кода

Задание: Задание 1:

В рамках лабораторной работы приведите примеры реализации рефакторинга в следующих системах:

Visual Studio.

Visual Assist X.

Refactor.

JustCode

ReSharper

CodeIt

Для поиска информации используйте сеть Интернет.

Задание 2:

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

Результаты работы представить в MS Word. Минимальное количество анализируемых систем – 5.

2.3 Лабораторная работа №3 «Оптимизация программного кода»

Рекомендуемая литература: 1, 2.

Перечень дополнительных ресурсов: 2, перечень ресурсов в сети Интернет.

Цель: Изучить технологию оптимизации программного кода

Задание:

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

Оптимизировать программу (можно использовать процедуры или функции).

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

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

Сравнить полученные результаты. Оформить результаты в таблицу. Сделать соответствующие выводы.

Расчет метрики Холстеда:

Метрика Холстеда относится к метрикам, вычисляемым на

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

Метрика Холстеда позволяет оценить размер (в словах) и объем в битах программы на стадии анализа требований. Используя нормы выработки операторов в день можно оценить время на разработку.

Основу метрики Холстеда составляют четыре измеряемые характеристики программы: n1 — число уникальных операторов

программы, включая символы-разделители, имена процедур и знаки операций (словарь операторов); n2 — число уникальных операндов программы (словарь операндов); N1 — общее число операторов в программе; N2 — общее число операндов в программе.

+, *, /, - это операторы

x, у, z, 999, -25, number1 - это операнды

На основании этих характеристик рассчитываются оценки:

Словарь программы (Halstead Program Vocabulary, HPVoc): n = n1 + n2;

Длина программы (Halstead Program Length, HPLen): N = N1 +

N2;

Объем программы (Halstead Program Volume, HPVol): V = N

log2 n;

Сложность программы (Halstead Difficulty, HDiff): D = (n1/2) × (N2 / n2);

На основе показателя HDiff предлагается оценивать усилия программиста при разработке при помощи показателя HEff (Halstead Effort): H = D × V.

Пример метрики:

2.4 Лабораторная работа №4 «Отладка программного кода»

Рекомендуемая литература: 1, 2.

Перечень дополнительных ресурсов: 2, перечень ресурсов в сети Интернет.

Цель: Изучить технологию отладки программного кода

Задание:

Задание 1. Проверка синтаксиса

1.Запустите среду VB.

2.Проверку синтаксиса можно включить или отключить с помощью опции Auto Syntax Checkвкладки Editor диалогового окна

Options меню Tools.

3.Зайдите в окно кода формы и напишите такой код: If X = 5. Нажмите Enter – сразу появляется сообщение об ошибке.

4.Теперь отключите проверку синтаксиса (уберите галочку напротив Auto Syntax Check) и повторите попытку.

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

6.Включите проверку синтаксиса.

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

Задание 2. Контекстная подсказка – QuickInfo

В Visual Basic встроены средства, которые позволяют обнаружить синтаксическую ошибку, но и избежать её при написании кода. Это, в частности, механизм контекстной подсказки или QuickInfo;

1.Напишите в окне кода текст – MsgBox и нажмите пробел:

2.У вас высветилось окно QuickInfo, в котором автоматически отображается полный синтаксис вводимого оператора.

При формировании вложенных вызовов функций вводимый аргумент для удобства всегда выделяется жирным шрифтом (на рис 7.1. показан момент редактирования аргумента Promt);

3.Если окно QuickInfo занимает много места и мешает при работе, режим отображения контекстной подсказки можно отключить с помощью опции Auto Quick Info вкладки Editorдиалогового окна

Options меню Tools.

Задание 3. Автоматическое отображение списка элементов Для уменьшения количества ошибок при написании имён,

свойств и методов объектов, Visual Basic автоматически отображает список доступных элементов. Содержимое списка зависит от типа объекта. Возьмём для примера надпись (Label).

1.Поместите на форму надпись и откройте окно кода для фор-

мы;

2.Напишите в окне кода следующий текст: Label1:

Пояснения

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

2)Выбрать нужный элемент в списке можно также с помощью клавиш управления курсором. Нажатием клавиши Tab выделенный элемент вводится в текущую строку, причём текстовый курсор оста-