Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/103: Рейтинг темы: голосов - 103, средняя оценка - 4.85
 Аватар для Сиба
0 / 0 / 0
Регистрация: 20.09.2020
Сообщений: 20

Определить символ, который чаще всего встречается в файле между двумя одинаковыми символами

05.02.2021, 20:03. Показов 19749. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана задача, условие которой Текстовый файл содержит только заглавные буквы латинского алфавита
(ABC…Z). Определите символ, который чаще всего встречается в файле
после двух одинаковых символов.
Например, в тексте CCCBBABAABCC есть комбинации CCC, CCB, BBA
и AAB. Чаще всего – 2 раза – после двух одинаковых символов стоит B,
в ответе для этого случая надо написать B.
вот код на паскале, но работает очень медленно и долго запускается, текстовый файл в той же папке, что и файл, в котором писался код, как его переписать, чтобы он работал быстро?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
var s:string;
symbol: char;
count, i, j, max: integer; 
f: text;
begin
max := 0;
assign(f, '24.txt');
reset(f);
while not eof(f) do
begin
readln(f,s);
end;
for i := 2 to length(s) - 1 do begin
count := 0;
for j := i + 1 to length(s) do begin
if ((s[i] = s[j]) and (s[i - 1] = s[i +1])) then
count := count + 1;
end;
if (count > max) then begin
max := count;
symbol := s[i];
end;
end;
write(s[i]);
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.02.2021, 20:03
Ответы с готовыми решениями:

Определить, какой символ в файле встречается чаще всего
С файла вводится набор символов(текст). Вывести на экран символ который встречается чаще всего.

Файлы Определить символ, который чаще всего встречается в качестве первой и последней буквы слова
Файлы(результат обработки строк файла записать во второй текстовый файл) Определить символ, который чаще всего встречается в качестве...

Найти символ который чаще всего встречается
Дано строку А, которая содержит не менее 4-х слов. Необходимо найти символ который чаще всего встречается. Вывести этот символ и слово, где...

8
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
05.02.2021, 22:12
Может так написать?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
var a,b,c,cmx: char;
    max: integer;
    f: text;
    s:array['A'..'Z'] of integer;
begin
for a:='A' to 'Z' do s[a]:=0;
assign(f, '24.txt');
reset(f);
read(f,a,b,c);
if a=b then inc(s[c]);
while not seekeof(f) do
 begin
  a:=b;
  b:=c;
  read(f,c);
  if not(c in [#13,#10])and(a=b) then inc(s[c]);
 end;
 close(f);
 max:=0;
 for a:='A' to 'Z' do
 if s[a]>max then
  begin
   max:=s[a];
   cmx:=a;
  end;
 write(cmx)
 end.
0
 Аватар для Сиба
0 / 0 / 0
Регистрация: 20.09.2020
Сообщений: 20
05.02.2021, 22:18  [ТС]
спасибо большое, теперь работает
0
 Аватар для Сиба
0 / 0 / 0
Регистрация: 20.09.2020
Сообщений: 20
06.02.2021, 18:52  [ТС]
Дана задача Текстовый файл содержит только заглавные буквы латинского алфавита
(ABC…Z). Определите символ, который чаще всего встречается в файле
между двумя одинаковыми символами.
Например, в тексте CBCABABACCC есть комбинации CBC, ABA (два раза),
BAB и CCC. Чаще всего – 3 раза – между двумя одинаковыми символами
стоит B, в ответе для этого случая надо написать B., вот код на паскале, но он работает очень медленно, как его исправить, чтобы он работал с нормальной скоростью?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var s:string;
symbol: char;
count, i, j, max: integer;
begin
max := 0;
s := 'sasbsascfcacaaabab';
for i := 2 to length(s) - 1 do begin
count := 0;
for j := i + 1 to length(s) do begin
if ((s[i] = s[j]) and (s[i - 1] = s[i +1])) then
count := count + 1;
end;
if (count > max) then begin
max := count;
symbol := s[i];
end;
end;
write(s[i]);
end.
0
 Аватар для Сиба
0 / 0 / 0
Регистрация: 20.09.2020
Сообщений: 20
06.02.2021, 19:15  [ТС]
только имелось в виду это условие задачи Текстовый файл содержит только заглавные буквы латинского алфавита
(ABC…Z). Определите символ, который чаще всего встречается в файле
между двумя одинаковыми символами.
Например, в тексте CBCABABACCC есть комбинации CBC, ABA (два раза),
BAB и CCC. Чаще всего – 3 раза – между двумя одинаковыми символами
стоит B, в ответе для этого случая надо написать B., а не то, что в вопросе
0
Злостный нарушитель
 Аватар для Verevkin
10238 / 5667 / 1260
Регистрация: 12.03.2015
Сообщений: 26,261
06.02.2021, 19:19
Цитата Сообщение от Сиба Посмотреть сообщение
Определите символ, который чаще всего встречается в файле
между двумя одинаковыми символами.
Если таких символов больше одного окажется, тогда чо?
0
 Аватар для Сиба
0 / 0 / 0
Регистрация: 20.09.2020
Сообщений: 20
06.02.2021, 19:37  [ТС]
по идее один должен получиться, там задание так предусмотрено
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
06.02.2021, 19:41
Сиба, У Вас в той теме
Программа на Паскале, ответ выдаёт неверный, что не так
задание такое

Текстовый файл состоит из не более, чем 1000 строк, каждая из которых состоит не более чем из 10**6 символов A, B, C.
Найдите количество строк, где количество букв B не менее,
чем на 5% больше количества букв A. В качестве ответа приведите количество найденных строк. ОТВЕТ:3.
Вы меня уже запутали, до свидания.
0
Злостный нарушитель
 Аватар для Verevkin
10238 / 5667 / 1260
Регистрация: 12.03.2015
Сообщений: 26,261
06.02.2021, 19:43
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
program Shit666;
 
const 
  s: ansistring = 'sasbsascfcacaaabab';
  
var 
  counts: array[ansichar] of int32;
  idx, max_count: int32;
  symbol: ansichar;
  
begin
  fillchar(counts, sizeof(counts), #0); // не обязательно
  max_count:= 0; // не обязательно
  
  // подсчёт символов в середине троек xyx
  for idx:= 2 to length(s) - 1 do
    if (s[idx - 1] = s[idx + 1])
      then inc(counts[s[idx]]);
      
  // поиск максимально встречающихся последовальностей xyx    
  for symbol in ['a'..'z'] do
    if counts[symbol] > max_count
      then max_count:= counts[symbol];
  
  // вывод символов, которых найдено максимальное кол-во   
   Write('# маскимум: ', max_count, '. Символ(ы) --->');
  for symbol in ['a'..'z'] do
    if counts[symbol] = max_count  
      then Write(' ', symbol);
    
  readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.02.2021, 19:43
Помогаю со студенческими работами здесь

Ввести строку, найти символ который чаще всего встречается
Добрый день. Необходимо ввести строку с клавиатуры. Определить, какой символ чаще всего встречается. Я написал программу, однако она...

Строка: Найти символ, который встречается чаще всего в тексте
Может найдется добрый человек и накидает кода даже не рабочего нужно очень сделать курсовой на минимальную оценку вот такая вот задача...

В текстовом файле найти символ, встречается чаще всего
Помогите пожалуйста! В текстовом файле найти символ, который встречается чаще всего.

Как посчитать/распознать символ, который встречается в строке чаще всего
Как посчитать/распознать символ, который встречается в строке чаще всего?

Определить, какой символ встречается в строке чаще всего
Помогите пожалуйста написать эту программу.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru