Лабораторная работа №1.  Операции и операторы. Массивы.

  1. Написать программу, которая находит наибольший общий делитель двух целых чисел, не превышающих 232. Для нахождения  используйте Алгоритм Эвклида вычитанием
  2. Написать программу, которая выводит большее из двух чисел с плавающей точкой.
  3. Написать программу, которая создаёт массив из 20 элементов, представляющих собой Последовательность Фибоначчи.
  4. Написать программу, которая создаёт двумерный квадратный массив строк. Строки представляют собой латинские буквы B и W, идущие в шахматном порядке. (Ограничьте массив размерностью 8*8)
  5. * Написать программу, которая создаёт треугольный массив целых чисел, представляющий собой Треугольник Паскаля. (Ограничьте массив 10 первыми строками)

 Лабораторная работа №2. Функции

Напишите функции делающие следующее:
  1.  Найти в массиве те элементы, значение которых меньше среднего арифметического, взятого от всех элементов массива. 
  2. Сжать массив, удалив из него все элементы, величина которых находится в интервале [а, b]. Освободившиеся в конце массива элементы заполнить нулями.
  3. Сжать массив, удалив из него все элементы, величина которых находится в интервале [а, b]. Освободившиеся в конце массива элементы заполнить нулями.
  4. Найти сумму всех цифр целочисленного массива. Например, если дан массив [12, 104, 81], то сумма всех его цифр будет равна 1 + 2 + 1 + 0 + 4 + 8 + 1 = 17.
  5. Переставить элементы заданного массива в обратном порядке, то есть произвести реверс массива.

 Лабораторная работа №3. Строки

  1. Дано целое число N (> 0) и символ C. Вывести строку длины N, которая состоит из символов C.
  2. Дана строка. Вывести строку, содержащую те же символы, но рас- положенные в обратном порядке.
  3. Дана строка. Преобразовать в ней все буквы в прописные.
  4. Даны строки S и S0. Проверить, содержится ли строка S0 в строке S. Если содержится, то вывести TRUE, если не содержится, то вывести FALSE.
  5. Даны строки S и S0. Удалить из строки S последнюю подстроку, совпадающую с S0. Если совпадающих подстрок нет, то вывести строку S без изменений.
  6. Дана строка, содержащая по крайней мере один символ пробела. Вывести подстроку, расположенную между первым и вторым пробелом исходной строки. Если строка содержит только один пробел, то вывести пустую строку
  7. Дана строка, состоящая из слов, разделенных пробелами (одним или несколькими). Найти длину самого длинного слова.
  8. * Дана строка-предложение. Зашифровать ее, поместив вначале все символы, расположенные на четных позициях строки, а затем, в обратном порядке, все символы, расположенные на нечетных позициях (например, строка «Программа» превратится в «ргамамроП»). 
  9. * Дано предложение, зашифрованное по правилу, описанному в задании 8. Расшифровать это предложение.

 Лабораторная работа №4. Классы

  1. Определить систему из 4-х классов: "Точка, "Прямоугольник", "Треугольник", "Изображение".

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

    Прямоугольник и Треугольник должны наследовать Точке.

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

     

 Лабораторная работа №5. Исключения

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

    Примеры

    1. "fsdsf23.232sdfsdf344.223" => 23.232

    2. "sfdsdfs-3.44dfbfd" => -3.44

    3. "sfsdfsdf" => Exception

Лабораторная работа №6. Контейнерные классы

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

1. Добавления студента.

2. Добавления оценки указанному  студенту. Осуществить проверку, что указанная оценка лежит в диапазоне [0;5]

3. Подсчёт среднего балла студента. В случае отстутствия  студента сгенерировать своё собственное исключение.

4.  Вывод ведомости по всем студентам: в формате
Студент => средний балл.

5. Удаление студента. Метод не  должен генерировать исключений в  случае отсутствия студента.

Предусмотреть обработку  всех исключений, кроме  генерируемых вашим  классом.

Лабораторная работа №7. Файлы и потоки

  1. Создайте статический метод для копирования файла с двумя параметрами: имя оригинального файла и имя файла-копии.
  2. Скопируйте содержимое одного символьного потока в другой поток, попутно делая замену символов. Правила замены указать самостоятельно.
  3. Выведите на экран имена файлов, которые находятся в заданом каталоге и всех его подкаталогах.
  4. Написать программу, которая создаст текстовый файл и запишет в него список файлов (путь, имя, дата создания) из заданного каталога.
  5. Дан текстовый файл. Вывести количество содержа- щихся в нем символов и строк.
  6. Дан текстовый файл, содержащий более трех строк. Удалить из него последние три строки.
  7. Создать бинарный файл, который хранит последовательность 100 целых чисел. Последовательность задаётся в консоли 2 числами. Начальным значением и шагом. Так, если было введено "5 7", то последовательность выглядит, как 5 12 19 26 ...
  8. Заменить числа в файле, созданном в пункте 7 их квадратами.

Лабораторная работа №8. LINQ

  1. Дана целочисленная последовательность, содержащая как положительные, так и отрицательные числа. Вывести ее первый положительный элемент и последний отрицательный элемент.
  2. Дан символ С и строковая последовательность A. Найти количество элементов A, которые содержат более одного символа и при этом начинаются и оканчиваются символом C
  3. Дана целочисленная последовательность. Найти количество ее отрицательных элементов, а также их сумму. Если отрицательные элементы отсутствуют, то дважды вывести 0. 
  4. Дана целочисленная последовательность. Извлечь из нее все нечетные числа, сохранив их исходный порядок следования и удалив все вхождения повторяющихся элементов, кроме первых. 
  5. Дана строковая последовательность. Строки последовательности содержат только заглавные буквы латин- ского алфавита. Отсортировать последовательность по возрастанию длин строк, а строки одинаковой длины — в лексикографическом порядке по убыванию. Лексиграфический порядок == алфавитный.
  6. Дана целочисленная последовательность. Обра- батывая только положительные числа, получить последовательность их последних цифр и удалить в полученной последовательности все вхождения одинаковых цифр, кроме первого. Порядок полученных цифр должен соответствовать порядку исходных чисел. 
  7. Дана последовательность непустых строк. Среди всех строк, начинающихся с одного и того же символа, выбрать наиболее длинную. Если таких строк несколько, то вы- брать первую по порядку их следования в исходной последовательности. Полученную последовательность строк упорядочить в алфавитном порядке

Лабораторная работа №9. Подключение БД

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

Доступ к БД:

https://samantsov.kh.ua/phpmyadmin

БД: employees
User: employees
Pass: employees

Table: test