|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.03.2013, 22:48 | #1 |
Пользователь
Регистрация: 14.03.2013
Сообщений: 10
|
Задачи по паскалю!
Нужна помощь по паскалю,буду рад получить правильные варианты)
Составить подпрограмму, которая в произвольной строке символов находит наиболее часто повторяющееся сочетание (из двух) символов. В головной программе вызвать эту подпрограмму для различных значений строк. и ещё... В больнице имеется общий список больных, каждый из которых характеризуется записью: struct ZAP { char FIO[25]; int NP; char SEX[5], DGN[20]; } где FIO - фамилия и инициалы больного, NP -номер палаты, SEX -пол (мужской или женский), DGN - диагноз. Написать программу для хранения и корректировки списка больных. Программа должна позволять вводить данные о новых больных, размещать их по палатам с учетом диагноза, выводить по запросам пользователя информацию о бальных по палатам, находить номер палаты, в которой лежит нужный больной. По запросу пользователя файл, в котором хранится вся эта информация, должен обновляться путем удаления информации об уже выписавшихся больных. |
15.03.2013, 22:54 | #2 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
По поводу первой:
- без указания кодировки эта задача некорректна. - ну и хотелось бы знать ограничения на длину строки. |
17.03.2013, 22:30 | #3 |
Пользователь
Регистрация: 14.03.2013
Сообщений: 10
|
А по поводу второй?
|
17.03.2013, 22:37 | #4 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
А в формулировке второй я проблем не вижу.
|
18.03.2013, 00:23 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
а я и в первой задаче не вижу никаких проблем и противоречий.
Строка всегда состоит из символов, вне зависимости от кодировки! Чтобы определить, какая пара символов встречается наиболее часто, знать в какой кодировке строка, совершенно необязательно! |
18.03.2013, 07:32 | #6 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
А можно вопрос по задаче#1?
Как еще решать ?) У меня есть такой вариант Код:
Код:
|
18.03.2013, 09:01 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Poma][a , вполне себе нормальное решение. Не очень эффективное (лишнее постоянно будет перебираться), но вполне себе рабочее!
из других решений (исключительно алгоритмически) я вижу ещё: - решение с матрицей N x N - где N - это число различных символов в строке, элемент на пересечении I-й строки и J-го столбца означает частоту появления сочетания двух символов: chr(I)+chr(J) - динамическая структура (связанный список, например), куда помещаем найденные сочетания и счётчик их появления в строке. (ищем сочетания в списке, если нет, добавляем с счётчиком = 1, если нашли, наращиваем счётчик на единичку). Но я бы оставился именно на вашем решении с поиском подстроки в строке - это просто, минимум кода, нет требований и затрат по памяти и достаточно быстро (подозреваю, что автора строки до 255 символов максимум, они обработаются быстрее, чем будет позже вывод результата в консоль осуществляться! ) |
18.03.2013, 09:12 | #8 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Код:
I'm learning to live...
|
|
18.03.2013, 11:20 | #9 | |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
Цитата:
Как можно это узнать, не зная кодировки текста? |
|
18.03.2013, 11:29 | #10 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Сколько занимает char - один байт, два или 4 - об этом пусть думает компилятор! главное, чтобы s[i] (которое char) возвращало нам нужный символ строки. И всё. Вы, наверное, рабочее решение от Poma][a проглядели... Цитата:
Потому что, так, как Вы решили, так проще? Кроме того, "часто повторяющееся сочетание" это два символа, стоящии рядом, которые встречаются наибольшее число раз. С чего Вы (ошибочно) решили, что это "if a[i]=a[i+1] " - ОДИНАКОВЫЕ символы?!! Последний раз редактировалось Serge_Bliznykov; 18.03.2013 в 11:33. |
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
задачи по паскалю | alexrazor9 | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 18.01.2012 17:45 |
2 задачи по паскалю | ИЛЬЯ17 | Помощь студентам | 13 | 14.12.2011 11:53 |
задачи по паскалю!!!! | *Марусенька* | Помощь студентам | 13 | 15.01.2010 00:22 |
Задачи по Паскалю. | cone4ka | Помощь студентам | 6 | 30.10.2009 20:06 |
Задачи по Паскалю | koshkarjov | Помощь студентам | 2 | 02.02.2009 18:06 |