Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2022, 13:08   #1
Nan_
Новичок
Джуниор
 
Регистрация: 16.06.2022
Сообщений: 1
По умолчанию Программа по Паскалю (строки).

Составить программу, определяющую, сколько раз, каждая пара соседних символов в строке длинной< 100 встречается в этой строке. (пара символов не задана).
Nan_ вне форума Ответить с цитированием
Старый 16.06.2022, 13:51   #2
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Подход "влоб":

1) Создаете динамический массив из записей содержащих 2 символа или, если без записей, то строк
2) Задаете длину массива как длина исходной строки минус 1
3) В массив попарно вносите символы из строки (копируете в каждую строку массива подстроку из 2-х символов из исходной)
4) Сортируете массив любым алгоритмом
5) Считайте количество одинаковых пар символов (одинаковых подстрок) в массиве идущих последовательно

Последний раз редактировалось macomics; 16.06.2022 в 13:53.
macomics вне форума Ответить с цитированием
Старый 16.06.2022, 18:48   #3
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Задание неконкретное. "Пара соседних символов" - с учётом или без учёта их взаимного расположения? "РА" "АР" будут считаться идентичными? По идее - да, иначе формулировка была бы насчёт "подстроки длиной 2 символа" . От этого зависит и ход решения. Далее: к примеру "ААА" среднее А может учитывться второй раз - или оно уже "скомпроментировано" участием в первой паре?
Если бы мне стьюдент принёс эти сомнения вместо готовой проги - я бы ему поставил зачёт без дальнейших его телодвижений, ибо человек начал с анализа поставленнуой задачи, а это обязательное условие вместо тупо бросаться в кодирование "Вали кулём - потом разберём" .

Последний раз редактировалось digitalis; 16.06.2022 в 18:55.
digitalis вне форума Ответить с цитированием
Старый 16.06.2022, 18:59   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,219
По умолчанию

Еще непонятна суть пояснения в скобках: "(пара символов не задана)".
Arigato вне форума Ответить с цитированием
Старый 16.06.2022, 19:03   #5
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Вот это как раз и понятно: можно задать так, как задано, а можно предварительно "Введите пару символов" - и в один проход считать количество вхождений. Очевидно, второй вариант суперпростой и не достин названия "задача" .
digitalis вне форума Ответить с цитированием
Старый 16.06.2022, 19:17   #6
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

А ничего, что в условии
Цитата:
Сообщение от Nan_ Посмотреть сообщение
каждая пара соседних символов в строке длинной< 100 встречается в этой строке
Т. е. надо считать попарно символы в заданной строке. Но пары могу быть с перехлестом и без.

Для строки скажем "абракадабра" пары с перехлестом: "аб", "бр", "ра", "ак", "ка", "ад", "да", "аб", "бр", "ра"; без перехлеста: "аб", "ра", "ка", "да", "бр"

Последний раз редактировалось macomics; 16.06.2022 в 19:23.
macomics вне форума Ответить с цитированием
Старый 16.06.2022, 20:16   #7
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию


Я уже сел писать программу, и тестовой строкой у меня была.... "Абракадабраь" Мягкий знак в конце, не встречающийся ранее - для отработки последней пары.
Но что-то расхотелось. Лучше кофию дерябну на сон грядущий.
------------------------
А вообще - такие и д.быть задачки! Лучшие телепаты форума пытаются разгадать: "А что, собс-нно, требуется сделать в этой задаче?"

Последний раз редактировалось digitalis; 16.06.2022 в 20:19.
digitalis вне форума Ответить с цитированием
Старый 16.06.2022, 20:54   #8
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,219
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Вот это как раз и понятно: можно задать так, как задано, а можно предварительно "Введите пару символов"
Так до этого же сказано: "каждая пара соседних символов", то есть ни о каком вводе речи не идет. А потому пояснение в скобках лишено смысла.
Arigato вне форума Ответить с цитированием
Старый 17.06.2022, 10:51   #9
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Ну так это то же самое, во вторм чтении, чтоб надёжней дошло. Как в ГД
digitalis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа по паскалю Safronov Паскаль, Turbo Pascal, PascalABC.NET 0 27.12.2012 11:33
программа по паскалю,не знаю как ее делать Anerita Помощь студентам 0 05.12.2010 21:00
Задачка по Паскалю (Строки) Altavista Помощь студентам 2 07.12.2009 17:18
Задача по паскалю (строки). front Паскаль, Turbo Pascal, PascalABC.NET 1 05.12.2008 12:21