diff --git a/IvanZlobinHW3.cpp b/IvanZlobinHW3.cpp new file mode 100644 index 0000000..e7f22fb --- /dev/null +++ b/IvanZlobinHW3.cpp @@ -0,0 +1,52 @@ +//Reverse// +#include +#include +#include + +int main() { + std::string line; + std::cout << "Enter in the line" << std::endl; + std::cin >> line; + int i = line.length() - 1; + do { + std::cout << line[i]; + i--; + } while (i > -1); + return 0; +} + +//Include// +#include + +int main() { + int arrlength; + std::cout << "Enter a length of the array: "; + std::cin >> arrlength; + int *arr = new int[arrlength]; + int f; + int tmp; + + for (int i = 0; i < arrlength; i++) { + std::cout << "Enter a number: "; + std::cin >> f; + if (i == 0) { + arr[i] = f; + } + if (f > arr[i - 1]) { + arr[i] = f; + } else { + tmp = arr[i - 1]; + arr[i - 1] = f; + arr[i] = tmp; + } + + std::cout << "array["; + for (int i = 0; i < arrlength; i++) { + std::cout << arr[i] << ","; + } + std::cout << "]" << std::endl; + } + + delete[] arr; + return 0; +} diff --git a/IvanZlobinHomeWork3.cpp b/IvanZlobinHomeWork3.cpp new file mode 100644 index 0000000..e7f22fb --- /dev/null +++ b/IvanZlobinHomeWork3.cpp @@ -0,0 +1,52 @@ +//Reverse// +#include +#include +#include + +int main() { + std::string line; + std::cout << "Enter in the line" << std::endl; + std::cin >> line; + int i = line.length() - 1; + do { + std::cout << line[i]; + i--; + } while (i > -1); + return 0; +} + +//Include// +#include + +int main() { + int arrlength; + std::cout << "Enter a length of the array: "; + std::cin >> arrlength; + int *arr = new int[arrlength]; + int f; + int tmp; + + for (int i = 0; i < arrlength; i++) { + std::cout << "Enter a number: "; + std::cin >> f; + if (i == 0) { + arr[i] = f; + } + if (f > arr[i - 1]) { + arr[i] = f; + } else { + tmp = arr[i - 1]; + arr[i - 1] = f; + arr[i] = tmp; + } + + std::cout << "array["; + for (int i = 0; i < arrlength; i++) { + std::cout << arr[i] << ","; + } + std::cout << "]" << std::endl; + } + + delete[] arr; + return 0; +} diff --git a/README.md b/README.md index b175733..e436bc9 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,73 @@ -# homework -Homework +# Домашнее задание +## Написать программу revers для строки(частая задача на собеседовании) +С клавиатуры необходимо ввести строку и переставить ее местами +Например +``` +HelloWorld + +dlroWolleW +``` + +## Написать программу вставки элемента в массив(задача сортировка при вводе элемента) +У вас есть массив фиксированого размера(размер выбираеться опционально). +Пользователь вводит число, ваша задача вставить элемнт в массив в возрастающем порядке, если массив пуст то вставляеться новое число в первый пустой(незаполненый) ячейку массива +Программа продолжаеться до тех пор пока массив не будет заполнен или пользователь не выйдит с программы. +``` +случай массив пустой + +array[0, 0, 0, 0, 0, 0] +> 2 - пользователь вводит число 2 + +так как массив пуст то вы вставляете элемент в начало массива(т.е. первую ячейку) + +array[2, 0, 0, 0, 0, 0] + +> 1 - пользователь вводит число 1 + +вы находите что занчение 1 меньше 2, то вы должны вставить 1 перед 2 + +array[1, 2, 0, 0, 0, 0] + +> 10 - пользователь вводит число 10 + +вы находите что занчение 10 больше 2, то вы должны вставить 10 после 2 +array[1, 2, 10, 0, 0, 0] + +и так пока массив не будет заполнен +``` + +**Ниже задачи есть опциональные** + +## Написать программу удаление элемента с массива +У вас есть массив фиксированого размера(размер выбираеться опционально). Значения для массива можно заполнять или вручную используя список инициализации, или случайным образом используя функцию (rand или есть более современные генераторы случайных чисел в библиотеке С++), или предложить пользователю заполнить массив вручную. Кто более знаком с языком С++ может реализовать все три случая +Пользователь вводит число для поиска элемента массива (желательно предложить диапазон чисел), если это число присутсвует в массиве то вы его должны удалить с массива. +Программа продолжаеться до тех пор пока массив не будет пустой или пользователь не выйдит с программы. + +## Написать программу перевода символов в верхний регист(аналог функции to_upper) +С клавиатуры необходимо ввести строку и перевести строку в верхний регист +Например +``` +HelloWorld1This + +HELLOWORLD1THIS +``` + +## Проверить являеться ли введеный символ числом(аналог функции is_diget) +С клавиатуры необходимо ввести строку и проверить являеться ли символ числом. +Например +``` +abfdc1k4l0 + +is diget 1, 4, 0 +``` + +## Написать программу перевода символов в верхний регист(аналог функции to_lower) +С клавиатуры необходимо ввести строку и перевести строку в нижний регист +Например +``` +HelloWorld1This + +helloworld1this +``` + +**Важно тот кто более знаком с языком и с понятиям указатели, то может выполнять обход массива и работу с массивами не в привыччной форме индексации, а через указатели** \ No newline at end of file