|
Лабораторная работа № 1. Реализация начального задания на языке С# и выполнение его в среде Visual Studio. Компиляция и выполнение консольного приложения начального задания на Java Standart Edition. Знакомство с интегрированной средой Eclipse и выполнение приложения начального задания в данной среде.
Цели и задачи работы: получение навыка реализация простейшего класса на языке C# и языке Java. Выполнение приложений в интегрированных средах Visual Studio и Eclipse.
Описание используемых средств для выполнения работы: операционная система Windows ХР/7, Visual Studio 2008-2010,Eclipse.
Методика выполнения работы:
5. Изучить этапы разработки исполняемого модуля в интегрированной среде.
6. Реализовать на С# и Java класс по варианту предложенного задания.
7. Выполнить откомпилированный вариант.
8. Продемонстрировать преподавателю работоспособный вариант программы.
Требования к отчету:
Отчет по лабораторной должен содержать титульный лист и этапы разработки программы в интегрированных средах.
Контрольные вопросы по лабораторной преподаватель задает в процессе демонстрации студентом полученных навыков работы в интегрированной среде.
Индивидуальные задания:
Реализовать класс с двумя полями first и second по вариантам. Реализовать методы: Put, GetFirst и GetSecond и метод, указанный в варианте.
1. Поле first — вещественное число - цена товара; поле second — целое число - количество единиц товара. Реализовать метод cost () — вычисление стоимости товара.
2. Поле first — целое число - номинал купюры; поле second — целое число, количество купюр данного достоинства. Реализовать метод summa() — вычисление денежной суммы.
3. Поле first — целое число - калорийность 100 г продукта; поле second — вещественное число - масса продукта в граммах. Реализовать метод kalorii() — вычисление общей калорийности продукта.
4. Поле first — целое число – дни от начала месяца; поле second — целое число – часы, прошедшие от начала текущих суток. Реализовать метод hours()— приведение времени в часах.
5. Поле first — целое число числитель; поле second — целое число - знаменатель. Реализовать метод ipart () — выделение целой части дроби first/second.
6. Линейная функция у = Ах + В. Поле first — вещественное число - коэффициент А; поле second — вещественное число, коэффициент В. Реализовать метод function()— вычисление для заданного х значения функции у.
7. Поле first — целое число - продолжительность телефонного разговора в минутах; поле second — вещественное число, стоимость одной минуты в рублях. Реализовать метод cost () — вычисление общей стоимости разговора.
8. Поле first — вещественное число - координата х точки на плоскости; поле second — вещественное число, координата у точки на плоскости. Реализовать метод distance() — расстояние точки от начала координат.
9. Поле first – координата x, second – y точки на плоскости, вещественные числа. Определить метод, вычисляющий угол в радианах отрезка (0,0 x,y) с осью OX.
10. Поле first — вещественное число - катет а прямоугольного треугольника; поле second — вещественное число - катет b прямоугольного треугольника. Реализовать метод hypotenuse()— вычисление гипотенузы.
11. Поле first — вещественное число – оклад (сумма денег за 30 дней); поле second — целое число, количество отработанных дней в месяце. Реализовать метод summa() — вычисление начисленной суммы за данное количество дней в 30 дневном месяце.
12. Линейное уравнение Ах + В=0. Поле first — вещественное число - коэффициент А; поле second — вещественное число - коэффициент В. Реализовать метод root()— вычисление корня линейного уравнения. Если A=0, корнем считать нуль.
13. Поле first – основание степени x, поле second – показатель степени y (вещественные числа). Реализовать метод power(), вычисляющий x^y=
exp(y*ln(x)).
14. Квадратное уравнение. X^2+px+q=0. Поле first – p, second – q (вещественные числа). Определить метод, вычисляющий дискриминант.
15. Поле first — вещественное число - левая граница диапазона; поле second — вещественное число, правая граница диапазона. Реализовать метод, вычисляющий длину интервала.
16. Парабола у =(x-A)^2+B. Поле first — вещественное число - коэффициент А; поле second — вещественное число, коэффициент В. Реализовать метод function()— вычисление для заданного х значения функции у.
17. Поле first вещественно– вещественная часть кмплексного числа, second – вещественное поле, мнимая часть комплексного числа. Реализовать метод вычисления модуля комплексного числа.
18. Поле first – координата x, second – y точки на плоскости, вещественные числа. Определить метод, результатом которого равно целое число, равное 1-4, в зависимости от того, в каком квадранте находится точка.
19. Парабола у =(x-A)^2+Bч+2. Поле first — вещественное число - коэффициент А; поле second — вещественное число, коэффициент В. Реализовать метод dist()— вычисление расстояния от вершины параболы до начала координат.
20. Квадратное уравнение. X^2+px+q=0. Поле first – p, second – q (вещественные числа). Определить метод, возвращающий целое число, равное 0, 1, 2 в зависимости от числа корней уравнени
Лабораторная работа № 2. Классы на С# и Java, инкапсуляция. Модификаторы private и public.
Цели и задачи работы: изучение состава классов С# и Java. Применение модификаторов public, private.
Теоретические сведения о работе и пример программы приведены в литературе [1-5] и конспекте лекций.
Задание к работе: Реализовать поля и методы класса по индивидуальному заданию. Продемонстрировать примеры использования объектов класса в функции main.
Описание используемых средств для выполнения работы: язык программирования С#, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу с вводом-выводом информации
3. Протестировать работу программы на различных исходных данных на Visual Studio и Eclipse.
требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению выражения, предложенного преподавателем.
Индивидуальные задания:
Во всех вариантах должны быть реализованы следующие методы:
□ метод инициализации Init;
□ ввод с клавиатуры Read;
□ вывод на экран Display;
Поля класса должны быть закрытыми private, доступ к ним при необходимости осуществляется через открытые методы public.
Добавить две функции по вариантам задания для обработки объектов введенных классов. Вторую функцию назвать add, у нее два аргумента типа названного класса и возвращает она объект того же класса. Что понимается под “сложением” поясняется в задании.
1. Класс отрезок состоит из начальной точки x1,y1 и конечной x2,y2 (вещественные числа), реализовать методы вычисления длины отрезка, и “сложение” двух отрезков, в результате которого получается отрезок, начальная точка которого совпадает с начальной точкой первого, а конечная – с конечной точкой второго (аргументы – 2 отрезка, результат – новый отрезок).
2. Класс дробь состоит из 2 целых полей, числителя и знаменателя. Реализовать методы выделения дробной части (9/4 – >0,25 вещественный результат) и метод сложения дробей, без сокращения (1/5 +2/3 -> 13/15 – результат новая дробь)
3. Класс вещественные положительные числа представлен в виде двух полей: целая часть (целое число) и дробная часть, положительное вещественное число меньше 1. Например, число 4,175 представлено (4 0,175). Реализовать методы округления числа до ближайшего целого, результат – целое число), и “сложение” таких чисел, в результате – новое число данного класса.
(3 0,7) (4 0,4)-> (8 0,1)
4. Класс circle представляет собой окружность на плоскости и содержит 3 вещественных поля: координаты и радиус. Реализовать методы, вычисляющий расстояние от центра окружности до начала координат, и “складывающий” две окружности. В итоговой окружности радиусы складываются, а в качестве координат центра вычисляются средние значения координат аргументов.
5. Класс прямоугольник на плоскости представлен координатами верхнего левого угла и координатами нижнего правого угла. Реализовать методы, вычисляющий площадь прямоугольника, и “сложение” двух прямоугольников – результат - левый верхний угол из первого прямоугольника, правый нижний из второго.
6. Класс интервал содержит два вещественных поля x1, x2, определяющие интервал [x1,x2] на числовой оси. Реализовать методы, вычисляющий длину интервала, и “суммирующий” два интервала – итоговый интервал представлен из левого конца первого и правого конца второго.
7. Класс угол для работы с углами на плоскости, определяется тремя вещественными параметрами: градусы, минуты и секунды. Должны быть реализованы методы: округление до градусов и сложение углов.
8. Класс Point для работы с точками на плоскости. Реализовать вычисление расстояния до точки, симметричной относительно оси OY (x,-y), определение точки, лежащей на середине отрезка, соединяющего две точки.
9. Класс треугольник на плоскости задан 6 числами (координаты трех точек x1,y1,x2,y2,x3,y3). Реализовать методы, вычисляющие периметр треугольника и выполняющего суммирования двух треугольников, путем суммирования соответствующих координат.
10. Небольшие положительные целые числа <1000 представлены тремя целочисленными полями (первая цифра, вторая цифра и третья цифра). Реализовать методы, переводящий число в обычное положительное целое и складывающий два таких числа. При переполнении сложения должен получаться нуль.
11. Класс money содержит три поля: количество купюр по 10, 50 и 100 рублей. Реализовать методы вычисляющий целое число – сумму денег в рублях и выполняющий сложение два объекта класса.
12. Класс Point для работы с точками в пространстве. Реализовать вычисление расстояния до начала координат, определение точки, лежащей на середине отрезка, соединяющего две точки.
13. Создать класс Date для работы с датами из целых полей «месяц день». Реализовать метод, вычисляющий количество дней от начала данного года и метод, складывающий две даты. В результате получается новая дата.
14. Вектор на плоскости представлен парой координат. Реализовать методы, вычисляющие длину вектора и сложения векторов.
15. Класс комплексных чисел состоит из двух вещественных полей (вещественной и мнимой части). Реализовать методы, вычисляющие модуль комплексного числа и сложения комплексных чисел.
16. Класс отрезок в пространстве состоит из начальной точки x1,y1,z1 и конечной x2,y2,z2(вещественные числа), реализовать методы вычисления длины отрезка, и “сложение” двух отрезков, в результате которого получается отрезок, начальная точка которого совпадает с начальной точкой первого, а конечная – с конечной точкой второго (аргументы – 2 отрезка, результат – новый отрезок).
17. Класс сумма представляет собой два целых поля: количество рублей и количество копеек. Реализовать метод, округления до рублей и вычисляющий сумму двух объектов классов.
18. Класс координаты точки на карте состоит из трех вещественных полей (градусы, минуты и секунды). Реализовать метод округления до градусов и вычисления координат точки, находящейся на середине отрезка, соединяющего две другие точки.
19. Класс точки на плоскости представлен полярными координатами r,fi (два поля). Написать метод, вычисляющий расстояние от точки до оси OX и метод, сложения точек, путем сложения их соответствующих полярных координат, в результате чего получается новая точка. (Учесть при этом, что 0<=fi<2*PI)
20. Класс квадрат представлен тремя полями, координатами центра и длиной стороны. Реализовать метод, вычисляющий расстояние от центра квадрата до начала координат и метод, определяющий «средний” квадрат от двух квадратов. Вычисляются средние арифметические координаты двух аргументов и средняя длина стороны.
Лабораторная работа № 3. Статические и динамические объекты. Указатель this. Возвращаемые параметры методов.
Цели и задачи работы: изучение указателей в C+ и Java и методов с возвращаемыми параметрами.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Задание к работе: Реализовать расширение класса лабораторной 2 в соответствии с индивидуальным вариантом.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу решения задачи.
3. Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Индивидуальные задания:
Выполнить несколько модификаций программы лабораторной 1 в соответствии с темами лекции 2
1. Задать дополнительный указанный метод, при реализации которого должен вызываться метод, построенный в лабораторной 1. (см. S() и P() класса treug лекция 2). Метод должен быть реализован 3 способами, результат возвращается через функцию или через дополнительный параметр в виде указателя или ссылки. [см. пример из 4) лекции 2] Три варианта метода располагаются в одном классе (перегрузка) и в вызывающей функции или main продемонстрировать вызов этих методов.
В 1 Метод вычисления квадрата расстояния между начальной и конечной точкой.
В 2 Метод округления дробной части до 0,1 (0,36 -> 0,4; 0, 33333 ->0,3 и т.д.)
В 3 Метод возвращает отношение целого числа после округления и исходной дробной части. (4 0,75 -> 5/0,75 = 0,6666 – вещественное число)
В 4 Метод вычисления расстояния от начала координат до ближайшей точки.
В 5 Метод вычисления квадрата площади прямоугольника.
В 6 Метод вычисляющий квадрат длины интервала
В 7 Метод вычисления количества минут после округления до градусов. Полученное число после округления переводится в минуты.
В 8 Вычисление половины расстояния до симметричной точки (до начала координат)
В 9 Вычисление полупериметра треугольника.
В 10 Вычисление квадрата числа после его получения из трех цифр.
В 11 Метод округления суммы денег до сотен. (354 -> 300 473 -> 500)
В 12 Вычисление расстояния до симметричной точки (-x –y –z)
В 13 Вычисление количества дней до конца года, считая год не високосным.
В 14 Метод вычисления квадрата длины вектора.
В 15 Метод вычисления квадрата модуля комплексного числа
В 16 Вычисление квадрата длины отрезка
В 17 Полученную сумму после округления еще раз округлить до десятков рублей (246 -> 250; 382-> 380)
В 18 Полученное число после округления в градусах перевести в секунды.
В 19 Метод вычисления квадрата расстояния
В 20 Куб расстояния от центра квадрата до начала координат.
2. Метод add, реализованный в лабораторной 1, реализовать используя один аргумент [см. 2) лекция 2] Оба метода разместить в одной программе (перегрузка) и в main продемонстрировать обращение к обеим методам.
3. В функции main продемонстрировать использование одного статического и динамического объекта, а также статического и динамического массива объектов. [см. 6) лекция 2].
Размер массива указать через const.
Лабораторная работа № 4. Конструкторы объектов в С# и Java. Перегрузка бинарного оператора «+” для объектов класса.
Цели и задачи работы: изучение конструкторов с параметрами и без параметров, их применение при разработке приложений. Перегрузка бинарных операторов.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Задание к работе: Реализовать расширение класса лабораторной 2 в соответствии с индивидуальным вариантом.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу решения задачи.
3. Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Индивидуальные задания:
Выполнить несколько модификаций программы лабораторной 2 в соответствии с темами лекции 3
1. Заменить метод Init из task1 на три варианта конструктора: со всеми необходимыми параметрами, с одним параметром и без параметров. В main продемонстрировать обращение ко всем конструкторам статического объекта и к конструктору со всеми параметрами для динамического объекта. Инициализировать небольшой статический массив конструктором с одним параметром.
2. Метод Add заменить на оператор + [в соответствии с 1) перегрузки операторов лекции 3.] Определить оператор + для сложения объектов класса и целого или вещественного числа слева и справа по варианту задания [2) и 3) перегрузка операторов лекция 3]
В 1 В результате сложения отрезка и вещественного числа получается отрезок в котором к x2,y2 добавляется это число.
В 2 Добавление к дроби целого числа выполняется по правилу сложения дробей (без сокращения)
¾ + 1 = 7/4
В 3 При сложении объекта и целого числа, оно добавляется к полю целой части объекта.
В 4 При сложении окружности и вещественного числа получается окружность со смещенным центром на это вещественное число.
В 5 При сложении прямоугольника с вещественным числом получается прямоугольник со смещенным правым нижнем углом на это число.
В 6 При сложении интервала с вещественным числом получается интервал от левого конца отнимается данное число, а к правому прибавляется.
В 7 При сложении угла и вещественного числа оно добавляется к минутам (учесть перенос, аналогично примеру из лекции для Record)
В 8 При сложении точки и вещественного числа получается точка, в которой от x отнимается число, а к y прибавляется.
В 9 При сложении треугольника и вещественного числа получается треугольник к каждой из 6 координат которого добавлено это число
В 10 При сложении объекта и целого числа (предполагается, что оно всегда меньше 100) первая цифра добавляется ко второму полю, вторая цифра к третьему.
В 11 При сложении объекта и целого числа оно добавляется к количеству пятидесяти рублевых купюр.
В 12 При сложении точки и вещественного числа получается точка, к координатам которой добавлено это число.
В 13 Кроме сложения двух дат, аналогично Record из лекции, определить оператор сложения даты и целого числа, добавляющего его к дням
В 14 При сложении вектора и вещественного числа получается вектор к координатам которого добавлено это число.
В 15 При сложении комплексного и вещественного числа оно добавляется к вещественной части (соответствующему полю)
В 16 при сложении отрезка и вещественного числа оно добавляется ко всем трем координатам и получается новый отрезок.
В 17 При сложении объекта и целого числа оно добавляется к копейкам и получается новый объект. Учесть переполнение копеек (>99)
В 18 При сложении объекта и целого числа оно добавляется к минутам и получается новый объект. Учесть перенос, аналогичный Record из лекции
В 19 При сложении точки и вещественного числа оно добавляется к углу и получается новая точка (учесть диапазон угла от 0 до 2Pi)
В 20 При сложении квадрата и вещественного числа получается квадрат обе координаты центра которого смещены на это вещественное число.
Лабораторная работа № 5. Производные классы в С# и Java. Модификатор protected.
Цели и задачи работы: изучение наследования классов в С# и Java.
Теоретические сведения о работе и примеры программ приведены в литературе [1-7] и конспекте лекций.
Задание к работе: Реализовать расширение класса лабораторной 2 в соответствии с индивидуальным вариантом.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу решения задачи.
3. Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Индивидуальные задания:
На основе класса из варианта задания лабораторной 2 создать производный класс и выполнить действия по варианту.
1. В производном классе добавляется поле private и 3 метода public по варианту, типа Get, Put, Display(через printf) для работы с этим полем.
2. Исходные поля базового класса остаются private, (например, int x;) к ним добавляются protected методы доступа к ним (например, int Getx();)
3. Указанная функция базового класса перегружается для производного с учетом нового поля, при этом базовая функция не вызывается, а доступ к полям базового класса выполняется protected методами из пункта 2.
4. Выполняется перегрузка функции Init для производного класса с вызовом функции базового [ см 5) лекции 4].
5. В main создать статические и динамические объекты базового и производного классов, продемонстрировать работу public методов классов, а также вызов объектом производного класса метода базового класса (::)
В 1.
1 Отрезок на плоскости параллельной X0Y. Добавлено вещественное поле z – расстояние между плоскостями.
3 Длина отрезка производного класса – длина отрезка на параллельной плоскости плюс расстояние z между плоскостями.
В 2.
1 В производном классе добавлен знак числа – поле char znak, принимающее значения '+' '-'
3 При выделении дробной части объекта производного класса, она может быть отрицательной.
В 3.
1 В производный класс включен знак числа, поле char.
3 При округлении до ближайшего целого может получиться в результате отрицательное число.
В 4.
1 Производным является класс цилиндр, содержащий кроме окружности также длину стороны z.
3 Расстояние от цилиндра до начала координат измеряется от точки центра окружности и середины стороны z.
В 5.
1 Производный класс – прямоугольник на плоскости, параллельной X0Y на расстоянии z.
3 Под “площадью” такого прямоугольника понимается объем соответствующего параллелепипеда.
В 6.
1 Производным классом является прямоугольник, к интервалу добавлено значение стороны y по вертикали
3 Под «длиной” такого интервала понимается площадь прямоугольника.
В 7.
1 Производный класс – угол, расположенный на плоскости, параллельной оси X0Y на расстоянии z.
3 При округлении до градусов величина z округляется до ближайшего целого и добавляется к округленному значению по градусам.
В 8.
1 Производным классом является точка в пространстве.
3 Расстояние вычисляется до точки (x –y –z).
В 9.
1 Производным является класс треугольников, находящихся на плоскости, параллельной X0Y на расстоянии z.
3 “Периметр” такого треугольника – периметр треугольника на X0Y плюс z.
В 10.
1 В производном классе добавлено поле char, принимающее значения '+' '-'
3 При переводе в обычное целое учитывается знак числа.
В 11.
1 В производном классе добавлено число купюр по 500 рублей.
3 При вычислении общей суммы денег учитываются такие купюры.
В 12.
1 Производный класс - отрезок по лучу, начальная точка с координатами x,y,z, конечная точка находится на расстоянии A от начальной по лучу, проходящему через начало координат и начальную точку.
3 Расстояние от отрезка до начала координат – это расстояние от середины отрезка.
В 13.
1 В производном классе имеется поле год
3 При вычислении числа дней считаются дни от даты 00.00.0000
В 14.
1 Производным классом являются вектора на плоскости, параллельной X0Y на расстоянии z.
3 При вычислении длины такого вектора к длине на плоскости добавляется z.
В 15.
1 Производный класс – пространственные комплексные числа – добавлена вещественная координата z.
3 При вычислении модуля пространственных чисел добавляется модуль координаты z.
В 16.
1 Производный класс – мировая линия в пространстве-времени. Добавлена величина T – промежуток между начальной и конечной точкой.
3 При вычислении длины (интервала) квадрат T добавляется к квадрату пространственного отрезка и от суммы извлекается квадратный корень.
В 17.
1 В производный класс добавлено поле «гроши” – число десятых долей копейки [0-9]. При крупных партиях дорогих лекарств так определяется оптовая цена.
3 При округлении до рублей учитываются гроши.
В 18.
1 В производный класс добавлено целое (или булевское) поле, равное 1 (северной широты) или -1 (южной долготы).
3 При округлении до градусов (целое число) учитывается расположении точки на полушариях.
В 19.
1 Производный класс – цилиндрические пространственные координаты. К полярным координатам добавлена вещественная z.
3 Расстояние от точки в цилиндрических координатам вычисляется с учетом z.
В 20.
1 Производным является класс прямоугольник, в котором добавлено вещественное поле отношение длины стороны по OX к длине по OY (длина по OX задана в базовом как длина квадрата).
3 Для производного класса вычисляется расстояние от ближайшей точки до начала координат.
Лабораторная работа № 6. Виртуальные функции языка С#
Цели и задачи работы: Изучение понятия позднего связывания, модификатор virtual языка C#
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Задание к работе: Реализовать расширение класса лабораторной 2 в соответствии с индивидуальным вариантом.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу решения задачи.
3. Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Индивидуальные задания:
Задать виртуальную функцию по варианту задания. Вызов виртуальной функции продемонстрировать через ее вызов функцией базового класса и через динамические объекты базового и производного классов, при вводе признака Pr [лекция 5 2), 3) ]. Продемонстрировать изменение работы программы, если определяемая функция не виртуальная.
В 1. Виртуальная функция – длина отрезка. Функция, вызывающая виртуальную – увеличивает координаты x2, y2 на длину отрезка, умноженную на Z – заданное вещественное (аргумент функции).
В 2. Виртуальная функция – дробная часть числа. Функция, вызывающая виртуальную – увеличение числа на kZ – k – заданное целое (аргумент функции), Z – дробная часть.
В 3. Виртуальная функция – округление до ближайшего целого. Функция, вызывающая виртуальную – увеличение числа на xZ, Z – результат округления, x – заданное вещественное число [0,1].
В 4. Виртуальная функция – расстояние до начала координат. Функция, вызывающая виртуальную – смещение центра по оси ОХ на xZ, Z – расстояние, x – заданное вещественное число.
В 5. Виртуальная функция – площадь прямоугольника. Функция, вызывающая виртуальную смещает координаты левого верхнего угла на величину xS, S – площадь, x – заданное вещественное число – аргумент функции.
В 6. Виртуальная функция – длина интервала. Функция, вызывающая виртуальную смещает левый конец интервала на величину xL, L – длина, x – заданное вещественное число, аргумент функции.
В 7. Виртуальная функция – округление до градусов. Функция, вызывающая виртуальную увеличивает угол на величину aZ, Z – округленное значение, a – целое число, количество секунд, аргумент функции.
В 8. Виртуальная функция – расстояние до симметричной точки. Функция, вызывающая виртуальную смещает точку по оси ОХ на половину этого расстояния.
В 9. Виртуальная функция – периметр объекта. Функция, вызывающая виртуальную смещает координаты x1,y1 на величину aP, P – периметр, a-заданное вещественное число, аргумент функции.
В 10. Виртуальная функция – перевод в обычное целое. Функция, вызывающая виртуальную меняет первую цифру числа на цифру, равную разности обычного числа и 7. Если получается отрицательное, взять единицу.
В 11. Виртуальная функция – вычисление общей суммы денег. Функция, вызывающая виртуальную вычисляет сумму в долларах. Аргумент – курс, вещественное число.
В 12. Виртуальная функция – вычисление до начала координат. Функция, вызывающая виртуальную смещает координату x на величину aR, R – расстояние, a – аданное вещественное, аргумент функции.
В 13. Виртуальная функция – количество дней от начала года. Функция, вызывающая виртуальную вычисляет количество прошедших выходных дней.
В 14. Виртуальная функция – длина вектора. Функция, вызывающая виртуальную умножает координату x на длину вектора.
В 15. Виртуальная функция – вычисление модуля объекта. Функция, вызывающая виртуальную увеличивает координату x на величину модуля.
В 16. Виртуальная функция – вычисление длины объекта. Функция, вызывающая виртуальную увеличивает координату x на величину длины.
В 17. Виртуальная функция – округление до рублей. Функция, вызывающая виртуальную вычисляет количество долларов, округленное количество рублей умноженное на курс (вещественное число, аргумент функции).
В 18. Виртуальная функция – округление до градусов. Функция, вызывающая виртуальную меняет координаты градусов на величину [Z=Z-Z/5] целая часть.
В 19. Виртуальная функция – расстояние от объекта до оси ОХ. Функция, вызывающая виртуальную увеличивает r на это расстояние.
В 20. Виртуальная функция – расстояние от объекта до начала координат. Функция, вызывающая виртуальную смещает координату x центра на величину, равную расстоянию до начала координат.
Лабораторная работа № 7. Библиотека ввода-вывода iostream языка C#. Исключения.
Цели и задачи работы: Перегрузка операторов >>, << для классов. Файловый ввод-вывод в Java Standart Edition. Операторы try, catch
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Задание к работе: Реализовать расширение класса лабораторной 2 в соответствии с индивидуальным вариантом.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу решения задачи.
3. Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Индивидуальные задания:
1. Перегрузить операторы ввода, вывода для основного и производного класса и продемонстрировать их работу в main для статических и динамических объектов. Использовать width(), precision(), fixed.
2. Для указанной функции из задания 1 реализовать 2 исключения, аналогично вычислению факториала catch внутри функции и в main
В 1. Вычисление длины отрезка. Начало и конец совпадают отрезок лежит на оси OX.
В 2. Выделение дробной части. Знаменатель нуль и числитель и знаменатель совпадают.
В 3. Метод округления числа до ближайшего целого. Дробная часть равна нулю и целая часть равна нулю.
В 4. Вычисление расстояния от центра окружности до начала координат. Центр совпадает с началом координат и радиус равен нулю.
В 5. Метод, вычисляющий площадь прямоугольника. Вертикальный и горизонтальный отрезки.
В 6. Метод, вычисляющий длину интервала. Координаты равны и правая координата меньше левой.
В 7. метод округление до градусов. Минуты равны 60 и секунды равны 60.
В 8. Класс Point для работы с точками на плоскости. Реализовать вычисление расстояния до точки, симметричной относительно оси OY (x,-y). Точка на оси OY и точка в начале координат.
В 9. Класс треугольник на плоскости задан 6 числами (координаты трех точек x1,y1,x2,y2,x3,y3). Реализовать методы, вычисляющие периметр треугольника. Все точки на оси ОХ и ОY.
В 10. Метод переводящий число в обычное положительное целое. Первая цифра равна нулю и первые две цифры равны нулю.
В 11. Класс money содержит три поля: количество купюр по 10, 50 и 100 рублей. Реализовать методы вычисляющий целое число – сумму денег в рублях. Число купюр по 100 рублей равно нулю и каждых купюр по нулю.
В 12. расстояние до начала координат. Точка в начале координат и точка на одной из координатных осей.
В 13. Метод, вычисляющий количество дней от начала данного года. Число месяцев отрицательное и равное нулю.
В 14. Метод, вычисляющие длину вектора. Вектор с нулевой координатой x и нулевыми обеими координатами.
В 15. Метод, вычисляющие модуль комплексного числа. Нулевая вещественная часть и нуль.
В 16. Метод вычисления длины отрезка. Начальная точка совпадает с конечной и координаты x1,x2 находятся друг от друга на расстоянии, большем заданного числа (10000).
В 17. Метод, округления до рублей. Число копеек нуль и рублей отрицательное число.
В 18. Метод округления до градусов. Число градусов нуль и число секунд нуль.
В 19. Метод, вычисляющий расстояние от точки до оси OX. r=0, fi=0.
В 20. Метод, вычисляющий расстояние от центра квадрата до начала координат. Центр квадрата в начале координат и длина стороны отрицательна или равна нулю.
3. Организовать ввод/вывод всех значений полей заданного объекта на языке Java SE. Использовать класс и объекты класса лабораторной 2.
Лабораторная работа № 8.. Знакомство со средой Net Beans и Oracle Java Micro Edition jdk.
Цели и задачи работы: построение приложения на мобильных устройствах. Реализация ввода/вывода приложения с использованием RecordStore.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Задание к работе: Реализовать расширение класса лабораторной 2 в соответствии с индивидуальным вариантом.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
1. Разработать алгоритм решения задачи по индивидуальному заданию.
2. Написать и отладить программу решения задачи.
3. Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Индивидуальные задания:
Создать в приложении массив строк и целочисленный или вещественный по варианту задания. Выполнить обработку массивов по варианту и записать результат как запись в RecordStore, предварительно создав его.. Прочитать запись из RecordStore, вывести результат и удалить RecordStore.
Варианты строк:
В1. список сотрудников и год рождения
В2. список кредиторов и сумма долга (отрицательный – мне должен)
В3. список песен и год написания
В4. список деталей и их стоимость
В5. список блюд в кафе и их стоимость
В6. список валют и курс
В7. список президентов (царей) и срок правления
В8. список цехов предприятия и число работников
В9. список улиц в городе и число домов в них
В10. список городов и число жителей
В11. список фамилий и число людей с такой фамилией
В12. список продуктов в магазине и их цена
В13. список животных в зоопарке и их возраст
В14. список марок авто и их стоимость
В15. список пунктов назначения авиарейсов и дальность
В16. список маршрутов и время движения (автобус 15, 45)
В17. список Вузов и число студентов
В18. список картин в музее и год написания
В19. список аудиторий (203Г) и вместимость
В20. список предметов и баллы на экзамене
Варианты обработки исходных данных
В 1. В массиве названий выбрать самое короткое и самое длинное название. Из самого длинного удалить «ab”, если эта строка встречается. В самое короткое перед 5 символом вставить 2 первых символа этого элемента. Заменить нулевой элемент сцеплением преобразованного самого короткого и самого длинного имени.
Вещественный массив заменить: первый элемент без изменения, второй – сумма первого и второго, третий – сумма первых трех и т.д.
В 2. Сцепить в одну строку все имена, в которых есть подстрока «qwe” и длина которых меньше 5. Удалить символы с 4 по 6 и вставить перед 8 «123”. Заменить название a[1] этой строкой.
Вещественные числа расположить в обратном порядке.
В 3. Удалить в каждом названии «ab” если встречается “qabnm”. После этого в самом длинном названии перед 7 символом вставить «asd” и в начало добавить «qwe”. Заменить название a[2] полученной строкой.
В вещесвенном массиве расположить сначала все отрицательные, затем положительные.
В 4. Вычислить сколько элементов названий содержат «rew”. Если это количество меньше 5 в каждом таком названии удалить со 2 по 5 символ, иначе в каждое такое название перед 4 символом вставить «uio”. Потом к самому длинному названию добавить «asdf”
В вещественном массиве к каждому элементу добавить его номер
В 5. Сцепить в одну строку все названия длина которых больше 5. Удалить “iuy” если подстрока имеется или вставить “qwert” перед 7 символом. Заменить название a[1] данной строкой.
В вещественном массиве поменять местами первый с последним, второй с предпоследним и т.д.
В 6. Сцепить самое короткое название с самым длинным, удалив предварительно из самого длинного подстроку «fgh” если она есть и добавить в самое короткое название перед 4 символом “xcvb”. Заменить строкой название третьего элемента
В вещественном массиве поменять местами первый и второй, третий и четвертый и т.д.
В 7. Найти название у которого 3-7 символ равны 'a'. Если такое название есть, заменить эти символы на «bbb”, если нет к самому короткому названию добавить «ccc”.
К четным номерам элементов добавить их номер, нечетные умножить на их номер.
В 8. Из всех названий извлечь символы с 3 по 6 и сцепить их. Если в строке имеется «qwdf” удалить. Заменить название a[0] этой строкой.
Вещественные числа больше 5 заменить на 5, меньше 5 разделить на их номер.
В 9. В названии каждого элемента заменить символы со 2 по 5 на «aa”. Сцепить строки, в которых есть «ccc” и заменить название первого элемента на эту строку.
Четные элменты умножить на сумму положительных элементов.
В 10. В самом длинном названии заменить 2-6 символ на «aaa” и удалить “bbb”, если он встречается.
В вещественном массиве максимальный элемент заменить на его номер.
В 11. Найти название, в котором чаще всего встречается символ 'c'. Удалить из него «ff”, если такая подстрока есть. Заменить название a[2] полученной подстрокой.
Все положительные элементы заменить на произведение макссимального и минимального.
В 12. Найти самое длинное и короткое название. Из самого длинного названия удалить число символов, равных длине самого короткого, начиная с третьего символа самого длинного.
Все числа с нечетными номерами заменить на число, равное сколько раз встречается максимум.
В 13. Выделить первое название, в котором встречается «qwer”. Если такого названия нет, взять название последнего элемента. Удалить из выделенного названия «bbb”, если есть такая подстрока. Заменить название a[1] выделенным названием.
К четным номерам добавить максимум, к нечетным его номер.
В 14. В самом длинном названии переставить местами первые два символа и последние три.
В вещественном массиве максимальные элементы заменяются на произведение положительных.
В 15. Во все названия, где есть «abc” удалить последние три элемента. Сцепить после этого все такие измененные названия и заменить a[0] плученной строкой.
Сдвинуть элементы веественного массива влево. 2 -> 1 3->2... 1->последний
В 16. Найти первое название длиной более 5, в котором имеется подстрока «aaa”. Если такого нет, взять название последнего элемента. Заменить в полученной строке символы со 2 по 4 на «bbbbb”. Название у элемента a[1] заменить на полученную строку.
Все четные элементы заменить на сумму двух нечетных.
2->1+3 4-> 3+5 и т.д. Массив содержит нечетное количество элементов
В 17. Найти первое название, в котором имеется подстрока «zxc”. Если такого названия нет взять название последнего элемента. Удалить из выделенного названия подстроку и вставить ее перед последним символом. Заменить исходное название данной строкой.
В вещественном массиве переставить местами максимум и минимум.
В 18. Если самая длинное название начинается с «abc” переставить эти символы в конец строки, иначе вставить эти символы перед четвертым символом.
Все максимальные элементы вещественного массива заменить номером минимального.
В 19. Во все названия, где есть «aaa” удвоить последние три элемента. Сцепить после этого все такие измененные названия и заменить a[1] плученной строкой.
Сдвинуть элементы веественного массива влево. 2 -> 1 3->2... 1->последний
В 20. Выделить второе название, в котором встречается «123”. Если такого названия нет, взять название последнего элемента. Удалить из выделенного названия «333”, если есть такая подстрока. Заменить название a[2] выделенным названием.
К четным номерам добавить минимум, к нечетным его номер.
Лабораторная работа № 9. Построение многооконного приложения Windows Forms в среде Visual Studio.
Цели и задачи работы: Изучение принципов построения приложений Windows Form, построение многооконных приложений, связь регулируемых м нерегулируемых классов.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Задание к работе:
1) Реализация основного класса из лабораторной 2 в качестве основной формы приложения. 2 часа.
2) Дополнение к проекту нерегулируемого класса. 1 час.
3) Реализация производного класса из лабораторной 5 в качестве вызываемой формы приложения. 1 час.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, операционная система Windows ХР/7.
Методика выполнения работы:
Разработать алгоритм решения задачи по индивидуальному заданию.
Написать и отладить программу решения задачи.
Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Лабораторная работа № 10. Реализация линейного вычислительного процесса с использованием визуальных компонент Label, TextField, Button в среде Visual Studio, Java SE и Java ME.
Цели и задачи работы: Изучение свойств, методов и событий компонент и классов для решения задачи линейного вычислительного процесса.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Индивидуальные Задания:
Линейный алгоритм по варианту задания реализовать с использованием компонент Label (для вывода результата), нескольких TextField(ввод данных) и Button-вычислить. Представить варианты приложения для Windows Forms, Java SE, Java ME.
Для мобильного приложения заменить функции: ln(x) -> abs(x),
arctg(x) -> tg(x), exp(x) -> sqrt(x).
В 1. Даны стороны прямоугольника a и b. Найти его площадь S = a·b и периметр P = 2·(a + b).
В 2.Дан диаметр окружности d. Найти ее длину L = π·d. В качестве значения π использовать 3.14.
В 3. Дана длина ребра куба a. Найти объем куба V = a3 и площадь его поверхности S = 6·a2.
В 4. Даны длины ребер a, b, c прямоугольного параллелепипеда. Найти его объем V = a·b·c и площадь поверхности S = 2·(a·b + b·c + a·c).
В 5.Найти длину окружности L и площадь круга S заданного радиуса R:
L = 2·π·R,S = π·R2. В качестве значения π использовать 3.14.
В 6.Даны два числа a и b. Найти их среднее арифметическое: (a + b)/2.
В 7. Даны два неотрицательных числа a и b. Найти их среднее геометрическое, то есть квадратный корень из их произведения.
В 8. Даны два ненулевых числа. Найти сумму, разность, произведение и частное их квадратов.
В 9.Даны два ненулевых числа. Найти сумму, разность, произведение и частное их модулей.
В 10. Даны катеты прямоугольного треугольника a и b. Найти его гипотенузу c и периметр P.
В 11. Даны два круга с общим центром и радиусами R1 и R2 (R1 > R2).
Найти площади этих кругов S1 и S2, а также площадь S3 кольца, внешний радиус которого равен R1, а внутренний радиус равен R2:
S1 = π·(R1)2,S2 = π·(R2)2,S3 = S1 − S2.
В качестве значения π использовать 3.14.
В 12. Дана длина L окружности. Найти ее радиус R и площадь S круга, ограниченного этой окружностью, учитывая, что L = 2·π·R, S = π·R2. В качестве значения π использовать 3.14.
В 13. Дана площадь S круга. Найти его диаметр D и длину L окружности, ограничивающей этот круг, учитывая, что L = 2·π·R, S = π·R2. В качестве значения π использовать 3.14.
В 14. Найти расстояние между двумя точками с заданными координатами x1 и x2 на числовой оси: |x2 − x1|.
В 15. Даны три точки A, B, C на числовой оси. Найти длины отрезков AC и BC и их сумму.
В 16. Даны три точки A, B, C на числовой оси. Точка C расположена между точками A и B. Найти произведение длин отрезков AC и BC.
В 17.Даны координаты двух противоположных вершин прямоугольника: (x1, y1), (x2, y2). Стороны прямоугольника параллельны осям координат. Найти периметр и площадь данного прямоугольника.
В 18. Поменять местами содержимое переменных A и B и вывести новые значения A и B.
В 19.Даны переменные A, B, C. Изменить их значения, переместив содержимое A в B, B — в C, C — в A, и вывести новые значения переменных A,B, C.
В 20.Найти значение функции y = 3x6 − 6x2 − 7 при данном значении x.
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, Netbeans, операционная система Windows ХР/7.
Методика выполнения работы:
Разработать алгоритм решения задачи по индивидуальному заданию.
Написать и отладить программу решения задачи.
Протестировать работу программы на различных исходных данных.
Лабораторная работа № 11. Построение приложения разветвляющегося вычислительного процесса с использованием меню и стандартных диалогов.
Цели и задачи работы: Изучение применения меню и стандартных диалогов в приложениях, использование компонент RadioButton и CheckBox.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Индивидуальные Задания:
Создать несколько радиокнопок, по числу проверяемых условий. Данные вводятся через textfield, используя try-catch. При выходе из поля textfield, после проверки условия выполняются вычисления, и соответствующая радиокнопка становится выбранной. Результат выводится в Label. При выборе другой радиокнопки, выполняется пересчет результата с соответствующим условием. Программа завершается при нажатии кнопки. Добавить CheckBox – удвоить результаты, при выборе результаты умножается на 2.
1. Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число.
2. Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае вычесть из него 2. Вывести полученное число.
3. Дано целое число. Если оно является положительным, то прибавить к нему 1; если отрицательным, то вычесть из него 2; если нулевым, то заменить его на 10. Вывести полученное число.
4. Даны две переменные вещественного типа: A, B. Перераспределить значе- ния данных переменных так, чтобы в A оказалось меньшее из значений, а в B — большее. Вывести новые значения переменных A и B.
5. Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной сумму этих значений, а если равны, то присвоить переменным нулевые значения. Вывести новые значения переменных A и B.
6. Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной большее из этих значений, а если равны, то присвоить переменным нулевые значения. Вывести новые значения переменных A и B.
7. Даны три переменные вещественного типа: A, B, C. Если их значения упорядочены по возрастанию, то удвоить их; в противном случае заме- нить значение каждой переменной на противоположное. Вывести новые значения переменных A, B, C.
8. Даны три переменные вещественного типа: A, B, C. Если их значения упорядочены по возрастанию или убыванию, то удвоить их; в против- ном случае заменить значение каждой переменной на противоположное. Вывести новые значения переменных A, B, C.
9. Даны три целых числа, одно из которых отлично от двух других, равных между собой. Определить порядковый номер числа, отличного от остальных.
10. Даны четыре целых числа, одно из которых отлично от трех других, равных между собой. Определить порядковый номер числа, отличного от остальных.
11. На числовой оси расположены три точки: A, B, C. Определить, какая из двух последних точек (B или C) расположена ближе к A, и вывести эту точку и ее расстояние от точки A.
12. Даны целочисленные координаты точки на плоскости. Если точка совпа- дает с началом координат, то вывести 0. Если точка не совпадает с началом координат, но лежит на оси OX или OY, то вывести соответственно 1 или 2. Если точка не лежит на координатных осях, то вывести 3.
13. Даны координаты точки, не лежащей на координатных осях OX и OY. Определить номер координатной четверти, в которой находится данная точка.
14. Даны целочисленные координаты трех вершин прямоугольника, стороны которого параллельны координатным осям. Найти координаты его четвертой вершины.
15. Дано целое число. Вывести его строку-описание вида «отрицательное четное число», «нулевое число», «положительное нечетное число» и т. д.
16. Дано целое число, лежащее в диапазоне 1–999. Вывести его строку- описание вида «четное двузначное число», «нечетное трехзначное число» и т. д.
17.Даны три целых числа: A, B, C. Проверить истинность высказывания: «Хотя бы одно из чисел A, B, C положительное».
18. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно одно из чисел A, B, C положительное».
19. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно два из чисел A, B, C являются положительными».
20.Дано целое положительное число. Проверить истинность высказывания: «Данное число является четным двузначным».
Описание используемых средств для выполнения работы: язык программирования С, среда Visual Studio, Eclipse, Netbeans, операционная система Windows ХР/7.
Методика выполнения работы:
Разработать алгоритм решения задачи по индивидуальному заданию.
Написать и отладить программу решения задачи.
Протестировать работу программы на различных исходных данных.
Требования к отчету:
Отчет должен содержать титульный лист, задание, текст программы с комментариями, тесты.
Защита лабораторной, помимо теоретических вопросов, включает выполнение практического задания с написанием фрагмента кода по вычислению функции одной переменной, предложенной преподавателем, в зависимости от аргумента функции.
Лабораторная работа № 12. Реализация алгоритма обработки одномерного массива в виде приложения с использованием компонент ListBox и ComboBox.
Цели и задачи работы: Изучение компонент и классов ListBox и ComboBox в. Visual Studio, Java SE, Java ME и их использование для обработки одномерных массивов.
Теоретические сведения о работе и примеры программ приведены в литературе [1-5] и конспекте лекций.
Индивидуальные Задания:
Вещественные добавляются в ListBox через массив с инициализацией.
из ListBox строки переводятся в массив (целочисленный или вещественный), выполняется обработка массива по варианту и результат выводится в CmboBox.
В 1.Дан целочисленный массив A размера N. Переписать в новый целочисленный массив B все четные числа из исходного массива (в том же порядке) и вывести размер полученного массива B и его содержимое.
В 2. Дан целочисленный массив A размера N (≤ 15). Переписать в новый целочисленный массив B все элементы с нечетными порядковыми номерами (1, 3, ...) и вывести размер полученного массива B и его содержимое.
В 3. Дан целочисленный массив A размера N (≤ 15). Переписать в новый целочисленный массив B все элементы с порядковыми номерами, кратными трем (3, 6, ...), и вывести размер полученного массива B и его содержимое. Условный оператор не использовать.
В 4. Дан целочисленный массив A размера N. Переписать в новый целочисленный массив B того же размера вначале все элементы исходного массива с четными номерами, а затем — с нечетными:
A 2, A 4, A 6, ..., A 1, A 3, A 5, ....
В 5. Дан массив A размера N. Сформировать новый массив B того же размера по следующему правилу: элемент BK равен сумме элементов массива A с номерами от 1 до K.
В 6. Дан массив A размера N. Сформировать новый массив B того же размера по следующему правилу: элемент BK равен среднему арифметическому элементов массива A с номерами от 1 до K.
В 7. Дан целочисленный массив размера N. Увеличить все четные числа, содержащиеся в массиве, на исходное значение первого четного числа. Если четные числа в массиве отсутствуют, то оставить массив без изменений.
В 8. Дан целочисленный массив размера N. Увеличить все нечетные числа, содержащиеся в массиве, на исходное значение последнего нечетного числа. Если нечетные числа в массиве отсутствуют, то оставить массив без изменений.
В 9. Дан массив размера N. Поменять местами его минимальный и максимальный элементы.
В 10. Дан массив размера N (N — четное число). Поменять местами его первый элемент со вторым, третий — с четвертым и т. д.
В 11. Дан массив размера N (N — четное число). Поменять местами первую и вторую половины массива.
В 12.Дан массив размера N. Поменять порядок его элементов на обратный.
В 13. Дан массив A размера N и целые числа K и L (1 ≤ K < L ≤ N). Переставить в обратном порядке элементы массива, расположенные между элементами AK и AL, включая эти элементы.
В 14. Дан массив A размера N и целые числа K и L (1 ≤ K < L ≤ N). Переставить в обратном порядке элементы
Дата добавления: 2015-08-13; просмотров: 401 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Семестр | | | Б.1.3 Разработка программного продукта |