0 / 0 / 1
Регистрация: 29.06.2016
Сообщений: 110
1

Вывести латинскую букву, встречающуюся во входной последовательности наибольшее число раз

14.05.2018, 17:54. Показов 2179. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На вход программе подаётся последовательность символов, заканчивающаяся символом "#". Другие символы "#" во входной последовательности отсутствуют.
Программа должна вывести на экран латинскую букву, встречающуюся во входной последовательности наибольшее кол-во раз и число этих раз(во второй строке).
Если таких букв во входной последовательности окажется несколько, программа должна вывести на экран всех их, через пробел, в алфавитном порядке.
Строчные и прописные буквы не различаются.
Пример входных данных:
Day, mice. "Year" - a mistake#
Пример выходных данных:
А
4
Другой вариант:
Пример входных данных:
ABCD ABCE ABCF#
Пример выходных данных:
A B C
3
Пожалуйста, напишите, как работает ваша программа(по желанию).
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.05.2018, 17:54
Ответы с готовыми решениями:

Определить во вновь полученной строке букву, встречающуюся большее число раз
Здравствуйте, помогите пожалуйста написать программу или часть программы: Две строки...

Выведите число, которое встретилось в последовательности наибольшее число раз
Задача для С++: Дано число n - чётное. Далее идут n натуральных чисел, каждое из которых не...

Найти слова, начинающиеся и оканчивающиеся на одну и ту же букву; слова, содержащие букву, встречающуюся N раз
Пусть задано множество строк. Вывести: а) слова, начинающиеся и оканчивающиеся на одну и ту же...

Напечатать (в цикле) на экране латинскую букву А много раз (с паузой между выводами символов)
Напишите программу, которая печатает (в цикле) на экране латинскую букву А много раз. После печати...

3
5059 / 2633 / 2346
Регистрация: 10.12.2014
Сообщений: 9,996
15.05.2018, 06:16 2
Pascal
1
2
3
4
begin
  var u:=ReadLnString.ToUpper.Where(c->Char.IsLetter(c)).GroupBy(c->c).OrderBy(v->v.count).Last;
  WriteLn(u.Key,NewLine,u.Count);
end.
0
Эксперт Pascal/Delphi
2385 / 1297 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
15.05.2018, 08:18 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
  a:array[char] of integer;
  c:char;
  m:integer;
begin
  write('>');
  m:=0;
  repeat
     read(c);
     c:=uppercase(c);
     if c in ['A'..'Z'] then inc(a[c]);
     if a[c]>m then m:=a[c];
  until c='#';
  for c:='A' to 'Z' do if a[c]=m then write(c,' ');
  writeln;
  writeln(m);
end.
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32584 / 21054 / 8133
Регистрация: 22.10.2011
Сообщений: 36,327
Записей в блоге: 8
15.05.2018, 09:48 4
Лучший ответ Сообщение было отмечено Fossil121 как решение

Решение

JuriiMW, твой вариант нерабочий, он не выдает ВСЕ буквы "A B C" на втором тесте, выдает только "C"

Вот так на обоих приведенных тестах и на десятке других выдало правильный результат:
Pascal
1
2
3
4
5
begin
  var u := ReadlnString.ToUpper.Where(c -> Char.IsLetter(c)).
    GroupBy(c -> c).GroupBy(g -> g.Count).OrderBy(v -> v.First.Count).Last;
  WriteLn(u.Select(t -> t.First).JoinIntoString(' '), NewLine, u.First.Count);
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2018, 09:48
Помогаю со студенческими работами здесь

Найти число, которое встречается в последовательности наибольшее количество раз
Задана последовательность, содержащая n целых чисел. Необходимо найти число, которое встречается в...

Определить число, встречающееся в последовательности наибольшее количество раз (массивы)
Определить,какое число в последовательности встречается наибольшее кол-во раз. Если таких элементов...

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

Вывести латинскую букву, которая встречается чаще других
вывести латинскую букву, куоторая встречается чаще других в 3 и 4 строках


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru