31 lines
3 KiB
Markdown
31 lines
3 KiB
Markdown
# CbgrPractice
|
||
cbgr c# small practice tasks
|
||
|
||
## Task1
|
||
|
||
Написать консольное приложение, вычисляющие квадратный корень из введённого пользователем числа.</br>
|
||
Если пользователь ввел не число а текст, выводить сообщение "Ошибка: {введённый текст} не является числом".</br>
|
||
Если пользователь ввёл отрицательное число - выводить сообщение "Ошибка: корень отрицательного числа вычислить невозможно".
|
||
|
||
## Task2
|
||
|
||
Написать библиотеку классов, содержащий метод для нахождения среднего арифметического из трёх чисел двойной точности (double).</br>
|
||
В этом же решении добавить консольное приложение, которое:
|
||
|
||
- запрашивает у пользователя 3 числа
|
||
- вызывает созданный метод в библиотеке классов (использует 3 числа полученные от пользователя на предыдущем этапе как параметры метода)
|
||
- выводит результат консоль
|
||
|
||
## Task3
|
||
|
||
Необходимо написать небольшое консольное приложение (.NET, C#) которое:
|
||
|
||
- Подсчитывает количество слов в тексте
|
||
- Имеет 2 варианта ввода данных: консоль, файл.
|
||
- Имеет 2 варианта вывода результата: консоль, файл.
|
||
- Имеет 2 варианта (метода) подсчёта слов - один из них рассчитан на подсчёт слов в больших текстах и ведётся многопоточно, а в другом подсчёт ведётся в одном потоке (для небольших текстов)
|
||
|
||
<sup>\* Архитектура должна быть гибкой и поддерживать добавление других типов ввода, вывода и обработки текста, без внесения изменения в уже сформированные реализации.</sup></br>
|
||
<sup>\* Также необходимо протестировать реализованные методы подсчётов текста с помощью любого Unit framework'a</sup></br>
|
||
<sup>\* Можно использовать любые сторонние библиотеки, какие посчитайте нужным.</sup></br>
|
||
<sup>\*\*\* Программа не должна расходовать много памяти при чтении больших файлов, размер одновременно читаемых данных должен конфигурироваться в настройках приложения</sup>
|