Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 25
Записей в блоге: 1
1

Найти и напечатать все слова строки, в которые заданный символ входит наибольшее количество раз

29.06.2015, 12:22. Показов 998. Ответов 5
Метки нет (Все метки)

Задано текст, слова в котором разделены пробелами и разделительными
знаками, и символ. Разработать программу, которая находит и
печатает все слова, в которые входит заданный символ наибольшее количество
раз.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.06.2015, 12:22
Ответы с готовыми решениями:

Напечатать те слова, которые удовлетворяют условию: "каждая буква входит в него более двух раз"
Данная последовательность слов , напечатать те слова которые удовлетворяют условию: каждая буква...

Напечатать те слова, в которые не входит ни одна из букв первого слова
Пусть дан текст, заканчивающийся точкой. Текст состоит из слов, разделённых пробелами. Слово...

Найти все слова, в которые заданный символ входит не менее двух раз
Написать 2 программы 1) 2) Для каждой программы написать 2 варианта: 1 вариант - работа со...

Найти слова в которые заданный символ входит не менее двух раз
Очень срочно нужен код пожалуйста! Сижу на ГОСах! помогите Дан текст! Найти слова в которые...

5
4 / 4 / 1
Регистрация: 28.06.2015
Сообщений: 13
29.06.2015, 14:01 2
Собственно - в чем вопрос? Как в принципе решить данную задачу? Или в чём-то конкретно загвоздка?

Задачка довольно тривиальная, имхо. И вы её в целом описали. Так и делать - в 3 этапа.
- разбили текст на слова
- подсчитали для каждого кол-во искомых символов
- распечатали те слова, в коих кол-во наибольшее
0
Эксперт Pascal/Delphi
2371 / 1287 / 1487
Регистрация: 29.08.2014
Сообщений: 4,617
29.06.2015, 14:14 3
andriy1048, приложение консольное?
0
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 25
Записей в блоге: 1
29.06.2015, 15:03  [ТС] 4
Нет, у форме нужно)

Добавлено через 23 секунды
Нет, у форме нужно)
0
Эксперт Pascal/Delphi
2371 / 1287 / 1487
Регистрация: 29.08.2014
Сообщений: 4,617
29.06.2015, 15:10 5
Лучший ответ Сообщение было отмечено andriy1048 как решение

Решение

на форме memo1, button1, listbox1
код:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Memo1: TMemo;
    Button1: TButton;
    ListBox1: TListBox;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
var
  c:char;
  l:TStringList;
  t,s:string;
  i,j,k,m:integer;
function csimv(s:string;c:char):integer;
var
  i,j:integer;
begin
  j:=0;
  for i:=1 to length(s) do
    if s[i]=c then j:=j+1;
  result:=j;
end;
begin
  c:=inputbox('Введите','символ:','a')[1];
  l:=TStringList.Create;
  l.Clear;
  t:='';
  s:=Memo1.Text+' ';
  for i:=1 to length(s) do
    if pos(s[i],' ,.:!?-')=0 then t:=t+s[i] else
      if t<>'' then begin
        l.Add(t);
        t:='';
      end;
     m:=0;
   for i:=0 to l.Count-1 do begin
     j:=csimv(l[i],c);
     if m<j then m:=j;
   end;
   ListBox1.Clear;
   if m=0 then ShowMessage('Нет слов, содержащих букву "'+c+'"') else
     for i:=0 to l.Count-1 do if csimv(l[i],c)=m then ListBox1.Items.Add(l[i]);
   l.free;
end;
 
end.
1
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 25
Записей в блоге: 1
29.06.2015, 16:43  [ТС] 6
Большое спасибо ))) Всё работает )))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.06.2015, 16:43

Дан текст. Найти слова, в которые заданный символ входит не менее двух раз
Дан текст. Найти слова, в которые заданный символ входит не менее двух раз.

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

Найти в тексте слова, в которых некоторый заданный символ встречается наибольшее число раз
1. Дан текст. Найти в нем слова, в которых некоторый заданный символ встречается наибольшее число...

Напечатать те слова, которые отличны от первого слова и предпоследняя буква слова входит в в него еще раз
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.