СТРАННАЯ ЗАДАЧА, помогите упростить плз |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
СТРАННАЯ ЗАДАЧА, помогите упростить плз |
Element |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Вобщем задачу то я решил ... всё вроде работает... но вот чёто преподу не понравилось что то типа упростить !!(((
дана непустая последовательность слов из строчных латинских букв; слова разделяются запятыми, за последним словом точка Среди всех пар аi и bi(где ai первая и bi последние буквы итого слова последовательности) определить наиболее часто встречающуюся пару program Project1; {$APPTYPE CONSOLE} var s,max : string; dl,n,dlk,dln: integer; i,j,M: integer; kk: array[1..100] of char; nn: array[1..100] of char; z: array[1..100] of integer; begin writeln('BBedite ctroky'); readln(s); dlk:=-1; dln:=0; s:=','+s+','; j:=2; for i:=1 to Length(s) do if (s[i]=',') then begin kk[j-1]:=s[i-1]; nn[j]:=s[i+1]; j:=j+1; end; for i:=1 to Length(s) do begin if s[i]=',' then dlk:=dlk+1; end; writeln(dlk); // for i:=2 to dlk+1 do // begin writeln(nn[i],kk[i]); // end; for j:=2 to dlk+1 do for i:=2 to dlk+1 do begin if kk[j]=kk[i] then if nn[j]=nn[i] then z[j]:=z[j]+1; // writeln ('proxodi'); // writeln(z[2],z[3]); end; M:=z[2]; for i:=2 to dlk+1 do begin if z[i]>M then M:=z[i] end; Writeln(M); for i:=2 to dlk+1 do begin if z[i]=M then writeln('4awe povtoraetc9 ',nn[i],kk[i],' kol-vo povtorenii ',M); end; readln end. |
volvo |
Сообщение
#2
|
Гость |
Во-первых, пользуйся тегами...
А во-вторых... Работает, говоришь? Введи строку aga,ugu,ege,agaga,wow,egege,ehe. и посмотри, КАК оно у тебя работает... Тема о разбиении строк на слова уже была - в поиск, ссылка - у меня в подписи... в частности - тебе сюда: Разбиение на слова. Все способы. |
Element |
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
подскажите почему он ведёт неправильный подсчёт максимального количества повторений |
Element |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
разобрался ) надо было z обнулять)
Добавлено через 13 мин. program Project2; Кому интересно помоему итоговый правильный текст решения задачи |
Текстовая версия | 11.09.2024 4:11 |