Росдистант - Практикум по программированию на C# 1

Раздел
Программирование
Предмет
Просмотров
6
Покупок
0
Антиплагиат
Не указан
Размещена
21 Ноя в 01:55
ВУЗ
Не указан
Курс
3 курс
Стоимость
1 500 ₽
Демо-файлы   
1
png
preview preview
6 Кбайт 6 Кбайт
Файлы работы   
6
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
docx
Практическое задание 1
335.4 Кбайт 250 ₽
docx
Практическое задание 2
39.6 Кбайт 250 ₽
docx
Практическое задание 3
84.5 Кбайт 250 ₽
docx
Практическое задание 4
72.9 Кбайт 250 ₽
docx
Практическое задание 5
121.4 Кбайт 250 ₽
docx
Практическое задание 6
54.1 Кбайт 250 ₽
Всего 6 файлов на сумму 1500 рублей
Описание

Тольяттинский государственный университет (Росдистант), ТГУ

Практикум по программированию на C# 1

Практические задания 1–6. Решения

Оглавление

Проверяемые задания

Практическое задание 1

Тема 1. Введение в .NET Framework

Цель работы:

Сформировать навыки создания на языке программирования C# в среде Visual Studio приложений .NET Framework, познакомиться с типами и шаблонами проектов Visual Studio, научиться документировать приложение и выполнять отладку кода исходного документа.

Задание

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

23.8976,12.3218

25.76,11.9463

24.8293,12.2

В отформатированном виде данные могут выглядеть следующим образом:

X: 23,8976 Y: 12,3218

X: 25,76 Y: 11,9463

X: 24,8293 Y: 12,2

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

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

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

Использовать Visual Studio отладчик для пошагового выполнения кода и изучения работы приложения.

                                                                                                                                                                                     

Практическое задание 2

Тема 2. Основные программные конструкции C#

Цель работы:

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

 

Задание 1

Разработать тип, позволяющий вычислять корень n-ой степени из числа методом Ньютона с заданной точностью.

Предусмотреть в нем возможность сравнения полученного результата со значением, рассчитываемым с помощью метода Math.Pow библиотеки классов .NET Framework.

Обязательно должны быть «приглашения для ввода» и отображение результата – так, чтобы пользователю было понятно, что отображается.

В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.

 

Задание 2

Разработать тип, позволяющий конвертировать неотрицательное десятичное значение целого числа в строку, содержащую двоичное представление этого значения.

Нужно реализовать два варианта:

использовать стандартные классы и методы для конвертирования;

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

Обязательно должны быть «приглашения для ввода» и отображение результата – так, чтобы пользователю было понятно, что отображается.

 В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.


Практическое задание 3

Тема 3. Определение и вызов методов

Цель работы:

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

 

Задание

Разработать тип, реализующий алгоритм Евклида для вычисления НОД двух целых чисел (http://en.wikipedia.org/wiki/Euclidean_algorithm).

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

Добавить к разработанному типу метод, реализующий алгоритм Стейна (бинарный алгоритм Евклида) для расчета НОД двух целых чисел (http://en.wikipedia.org/wiki/Binary_GCD_algorithm).

Сделать «обертку для метода», которая принимает выходной параметр, содержащий значение времени, необходимое для выполнения расчетов.

Сделать «метод-обёртку» для метода, реализующего алгоритм Евклида вычисления НОД двух параметров, добавив аналогичную функциональность.

Создать unit-тесты для тестирования разработанных методов.

В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.

Практическое задание 4

Тема 4. Создание новых типов в С#

Цель работы:

Сформировать навыки создавать и использовать перечисления, структуры и классы.

 

Задание

Разработать класс «треугольник» для работы с треугольником, заданным на плоскости сторонами a, b, c.

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

В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.

Создать unit-тесты для тестирования методов разработанного типа.

 

Практическое задание 5

Тема 5. Инкапсуляция данных и методов

Цель работы:

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

Задание «Вектор»

Разработать класс «вектор» для работы с трехмерными векторами.

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

Создать unit-тесты для тестирования разработанных методов.

В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.

Задание «Многочлен»

Разработать класс «многочлен» для работы с многочленами от одной переменной.

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

Создать unit-тесты для тестирования разработанных методов.

В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.

 

Рекомендации по выполнению задания

Важно (!):

Вектор задаётся одной точкой, то есть он с началом в начале координат.

Нельзя изменять координаты вектора после создания «вектора».

Тип «вектор» не должен ничего выводить на «экран» и ничего считывать с «экрана».

Тип «вектор» должен корректно переопределить метод для формирования строкового представления «вектора».

Обязательно должны быть «приглашения для ввода» и отображение результата – так, чтобы пользователю было понятно, что отображается.

Убрать подключение пространств имён, которые не используются в коде.

 

Практическое задание 6

Тема 6. Наследование. Интерфейсы и абстрактные классы

Цель работы:

Сформировать понимание концепции наследования и навыки определять и реализовывать интерфейсы, абстрактные классы и абстрактные методы.

 

Задание 1

Определить интерфейс IConvertible, указывающий, что реализующий его класс может конвертировать блок кода в С# или VB-код. В интерфейсе определить два метода ConvertToCSharp и ConvertToVB, каждый из которых принимает и возвращает строку.

Создать класс ProgramHelper, реализующий интерфейс IConvertible. При написании методов вместо преобразования строки использовать простые строковые сообщения для имитации преобразования.

Создать новый интерфейс ICodeChecker, определив в нем метод CheckCodeSyntax, принимающий две строки: строка для проверки и используемый язык. Метод должен возвращать тип bool. Добавить в класс ProgramHelper функциональность нового интерфейса IСodeChecker.

Создать класс ProgramConverter, реализующий интерфейс IConvertible. Изменить класс ProgramHelper, наследуя его от класса ProgramConverter и интерфейса ICodeChecker.

Протестировать класс, создав массив объектов ProgramConverter, одни из которых имеют тип ProgramConverter, а другие – тип ProgramHelper. Для каждого элемента массива проверить, что он реализует интерфейс IСodeChecker (или нет). Если реализует интерфейс IСodeChecker, то вызвать метод проверки кода  и соответствующий метод преобразования. Если не реализует интерфейс IСodeChecker, то вызвать два метода преобразования кода.

Добавьте в проект диаграмму классов с использованием средств Visual Studio. Задайте диаграмме понятное имя.

 

Задание 2

Написать программу, которая декорирует класс Stream и показывает, какая часть файла была прочитана, используя полосу прокрутки.

При выполнении нужно применить шаблон проектирования Декоратор.

 

Задание 3

Напишите программу, которая декорирует класс Stream и спрашивает пароль, прежде чем позволяет продолжить чтение.

При выполнении нужно применить шаблон проектирования Декоратор.

 

Вам подходит эта работа?
Похожие работы
C#
Дипломная работа Дипломная
3 Ноя в 17:01
23
0 покупок
C#
Дипломная работа Дипломная
3 Ноя в 16:20
17
0 покупок
C#
Лабораторная работа Лабораторная
2 Ноя в 14:17
27
0 покупок
C#
Контрольная работа Контрольная
7 Сен в 20:07
34
0 покупок
Темы журнала
Показать ещё
Прямой эфир