Вопрос задан 21.02.2019 в 22:24. Предмет Информатика. Спрашивает Лавров Кирилл.

Дана строка, состоящая из слов. Вывести слова, которые повторяются хотя бы один раз.Паскаль

0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Миронов Олег.
Решение в прикрепленном файле.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи в Паскале можно использовать следующий алгоритм:

1. Создать переменную-счетчик для подсчета количества повторяющихся слов. 2. Создать массив (или список) для хранения уникальных слов. 3. Разделить исходную строку на слова, используя пробел как разделитель. 4. Пройти в цикле по всем словам из полученного массива слов. 5. Для каждого слова проверить, есть ли оно уже в массиве уникальных слов. 6. Если слово уже есть в массиве, увеличить значение счетчика на 1. 7. Если слова нет в массиве, добавить его в массив уникальных слов. 8. После прохода по всем словам, вывести все слова, у которых значение счетчика больше 1.

Пример кода на Паскале:

```pascal program RepeatWords;

var inputString: string; words: array of string; uniqueWords: array of string; counter: integer; i, j: integer;

begin // Ввод строки writeln('Введите строку:'); readln(inputString);

// Разделение строки на слова words := inputString.Split(' ');

// Поиск повторяющихся слов SetLength(uniqueWords, 0); counter := 0;

for i := 0 to Length(words) - 1 do begin // Проверка наличия слова в массиве уникальных слов for j := 0 to Length(uniqueWords) - 1 do begin if words[i] = uniqueWords[j] then begin counter := counter + 1; Break; end; end;

// Добавление слова в массив уникальных слов, если оно не найдено if j = Length(uniqueWords) then begin SetLength(uniqueWords, Length(uniqueWords) + 1); uniqueWords[Length(uniqueWords) - 1] := words[i]; end; end;

// Вывод повторяющихся слов writeln('Повторяющиеся слова:'); for i := 0 to Length(uniqueWords) - 1 do begin if counter > 0 then begin writeln(uniqueWords[i]); end; end;

readln; end. ```

После ввода строки программа разделит ее на слова и найдет повторяющиеся слова. Затем она выведет все повторяющиеся слова.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос