Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
cpp2_2008.doc
Скачиваний:
18
Добавлен:
04.11.2018
Размер:
201.73 Кб
Скачать

Примечания:

  1. Ввод строк должен быть организован с помощью метода cin.getline(куда, максимум_сколько). Метод cin >> куда не использовать!

  2. Логически-законченные части алгоритма программы оформлять функциями с параметрами (например, пропуск разделителей, построении списка, вывод списка, удаление списки и др.).

Вариант 19

Из входного потока вводится произвольное число строк, состоящих из последовательности слов, разделённых одним или несколькими пробелами и/или знаками табуляции. Длина каждой строки не превышает 80 символов. Конец ввода определяется концом файла.

При обработке каждой строки сформировать две новые, поместив в первую слова исходной строки, из которых исключены группы повторяющихся символов (подряд расположенных одинаковых символов), а во вторую – исключённые группы символов. Слова в образованных строках должны быть разделены только одним пробелом. Полученные строки вывести на экран.

Разработать следующие варианты программы:

  1. каждая строка представлена массивом символов, доступ к элементам массива осуществляется с помощью указателей;

    1. при обработке строки (строк) использовать библиотечные функции (<string.h>);

    2. библиотечные функции обработки строки не использовать.

  2. каждая строка представлена списком; первое поле элемента списка - символ строки; второе - указатель на следующий элемент списка или NULL в конце списка;

    1. при обработке исходного списка (исходных списков) формировать новый список (списки);

    2. список результата формировать, модифицируя исходный список.

Примечания:

  1. Ввод строк должен быть организован с помощью метода cin.getline(куда, максимум_сколько). Метод cin >> куда не использовать!

  2. Логически-законченные части алгоритма программы оформлять функциями с параметрами (например, пропуск разделителей, построении списка, вывод списка, удаление списки и др.).

Вариант 18

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

При обработке каждой строки сформировать две новые, поместив в первую числа, а во вторую – слова. Числа и слова в образованных строках должны быть разделены только одним пробелом. Полученные строки вывести на экран.

Разработать следующие варианты программы:

  1. каждая строка представлена массивом символов, доступ к элементам массива осуществляется с помощью указателей;

    1. при обработке строки (строк) использовать библиотечные функции (<string.h>);

    2. библиотечные функции обработки строки не использовать.

  2. каждая строка представлена списком; первое поле элемента списка - символ строки; второе - указатель на следующий элемент списка или NULL в конце списка;

    1. при обработке исходного списка (исходных списков) формировать новый список (списки);

    2. список результата формировать, модифицируя исходный список.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]