Здравствуйте!
Здесь содержится описание домашних заданий а также их решения for c++ base (itea).
Домашние задания ко 2-й лекции.
Многие знают, что уравнение вида ax2 + bx + c = 0, где a не равно 0, называют квадратным уравнением. Надо решить квадратное уравнение через дискриминант D = b^2 — 4 * a * c Если D >= 0, то вычесляються корни для x1 и x2 для квадратного корня используеться стандартная библиотечная функция std::sqrt из стандартного заголовочного файла #include https://en.cppreference.com/w/cpp/numeric/math/sqrt Идея этого легкого домашнего задания это поработать с типами данных, получить переполнения, обработать возможные ошибки переполнения, расмотреть возможность деления на ноль. Ипользуйте вместо констант 4 и 2 константные переменные.
https://github.com/vikavl/c-base/blob/master/second_lesson.cpp
Домашние задания к 3-й лекции.
С клавиатуры вводите 6ти значное число. Необходимо определить счастливый это билет или нет. Счастливым считаеться тот билет у которого сумма трех первых цифр номера равна сумме трех последних.
Например 621333 - суммы совпадают 662999 - суммы не совпадают.
https://github.com/vikavl/c-base/blob/master/lucky%20ticket.cpp
Необходимо ввести с клавиатуры 32х разрядное знаковое число, необходимо сделать reverse(обратное) этого числа.
На экране необходимо ввести список элемнтов, и необходимо посчитать сумму только нечетных элементов, четные надо отбрасывать. Требования Максимальный количество вводимых элементов 1..50 Каждый элемент должен находиться в диапазоне -60 <= x <= 90.
https://github.com/vikavl/c-base/blob/master/sum%20of%20not%20paired.cpp
С клавиатуры вводиться два числа, первое это 32-х разрядное безнаковое целое, а второе число значение проверяющее установлен ли бит в этом числе. На экран должно быть выведено Yes или No.
Дано положительное число, необходимо найти сумму цифр которая будет больше чем все возможные суммы цифр этого числа.
Вам данно не отрицательные целые числа, вам необходимо попытаться постоить новое число используя все цифры этих чисел, так чтобы новое число делилось на 3. На экран должно быть выведено Yes или No, т.е. делиться или нет соответственно.
https://github.com/vikavl/c-base/blob/master/build%20number.cpp
Возможность поработать с циклами и с условными операторами. На экране должно быть выведена следующего вида ёлочка состоящая из символов * и пробелов.
Т.е. на экране или в коде мы вводим число. например 12345, и мы должны вывести сумму цифвр в этом числе и их средне арифмитическое:
1 + 2 + 3 + 4 + 5 = 15
15 / 5 = 3
https://github.com/vikavl/c-base/blob/master/sum%20and%20average%20of%20digits.cpp
Домашние задания к 4-й лекции.
С клавиатуры необходимо ввести строку и проверить являеться ли символ числом.
https://github.com/vikavl/c-base/blob/master/is_digit.cpp
С клавиатуры необходимо ввести строку и перевести строку в верхний регист.
https://github.com/vikavl/c-base/blob/master/to_upper.cpp
С клавиатуры необходимо ввести строку и перевести строку в нижний регист.
https://github.com/vikavl/c-base/blob/master/to_lower.cpp
С клавиатуры необходимо ввести строку и переставить ее местами.
https://github.com/vikavl/c-base/blob/master/revers_str.cpp
Написать два алгоритма сортировки один простой сортировка пузырьком, а второй quicksort, и сравнить их производительность по времени выполнения при разных наборах данных. Алгоритм реализовать с помощью указателей.
##Реализовать текстовый редактор с примитивными операциями Идея реализовать простой редактор текста На вход подаеться команда и набор чисел относящийся к команде Например:ввод пользователя наш внутрений буфер Положение курсора print abc -> abc -> 3 print hello -> abchello -> 8 select 3 5 -> выделяем hello -> 8 copy -> abchello -> 8 paste -> abchellohello -> 13 move left 5 -> abchellohello -> 8 print test -> abchellotesthello -> 12 select 3 5 -> выделяем hello -> 12 cut -> abctesthello -> 7
select -> это начиная с какой позиции выделять и сколько move - перемещение в лево и в право Главное условие не использовать функции стандартной библиотеки, т.е. самим реализовать strlen, strcpy и т.д. Если возникнут трудности то можно использовать и библиотечные функции.
##Написать функцию сложения больших чисел С клавиатуры происходит ввод двух чисел, и на экран необходимо вывести суму эти двух чисел Число может быть больше 8 байт. Т.е. необходимо реализовать арифметику для больших чисел.