Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/26: Рейтинг темы: голосов - 26, средняя оценка - 5.00
3 / 3 / 7
Регистрация: 03.11.2010
Сообщений: 33
1

Вывести в алфавитном порядке все буквы, которые встречаются в тексте

03.11.2010, 18:27. Показов 4853. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задан текст из латинских букв. Вывести в алфавитном порядке все буквы, которые встречаются в тексте
Вот мои наработки, но почету-то не все повторяющиеся символы удаляются и видимо в сортировке я с begin что-то напутал.
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
program pochti;
 
{$APPTYPE CONSOLE}
uses
  SysUtils;
 
var
s: string;
CurChar: Char;
 // c: Word;
  a: array [1..30] of string;
  r,p,n,o:integer;
  t:string;
begin
  Write('Vvedite stroky:  ');
   readln(s);
     while Length(s)>0 do
begin
  CurChar := s[1]; {Получаем первый символ строки}
  //  c:= 0;
 while (pos(CurChar,s) > 0)  do //Пока в строке встречается данный символ
   begin
   writeln(CurChar);
       delete(s,pos(CurChar,s),1);   //удаляем символ
           end;
   //  write(CurChar);
       if (CurChar <>'') and (CurChar <>' ')   then
       begin
      inc(r);
      a[r]:=CurChar;
    end;
    for p:=1 to r-1 do
       for n:=p+1 to r do
  if a[p]>a[n] then
      begin
        t:=a[p];
        a[p]:=a[n];
          a[n]:=t;
         end;
     writeln(' po alfavitu');
         for o:=1 to r do
   write(a[o]);
        end;
          readln; {Программа ожидает нажатия какой-нибудь клавиши}
      { TODO -oUser -cConsole Main : Insert code here }
end.
Помогите
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2010, 18:27
Ответы с готовыми решениями:

Вывести все гласные буквы встречающиеся в тексте в алфавитном порядке
дан текст за которым следует точка. вывести все гласные буквы встречающиеся в тексте в алфавитном...

Множества. Вывести на экран в алфавитном порядке все буквы, встречающиеся в тексте
1.Задан текст, состоящий из латинских букв, в конце идет точка. Вывести на экран все буквы в...

Вывести в алфавитном порядке все буквы,которые встречаются в тексте только один раз
Задан текст из латинских букв .Вывести в алфовитном порядке все буквы,которые встречаются в тексте...

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

10
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
03.11.2010, 21:21 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Можно так.


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
uses crt;
const alf:string[52]='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz';
var s:string;
    i,j:byte;
begin
clrscr;
writeln('Введите строку из латинских символов');
readln(s);
writeln('Символы по алфавиту');
for i:=1 to length(alf) do
for j:=1 to length(s) do
if alf[i]=s[j] then write(alf[i]);
readln
end.
0
3 / 3 / 7
Регистрация: 03.11.2010
Сообщений: 33
03.11.2010, 21:53  [ТС] 3
Спасибо, как сортировать теперь понятно.
А как удалить все повторяющиеся символы?
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
03.11.2010, 21:57 4
Я думал все нужно, а по одному так.
Pascal
1
2
for i:=1 to length(alf) do
if pos(alf[i],s)>0 then write(alf[i]);
0
3 / 3 / 7
Регистрация: 03.11.2010
Сообщений: 33
03.11.2010, 22:06  [ТС] 5
символы убираются, но не все.
Нужно чтобы было так например: вводится слово abadc, обе 'a' должны удалиться т.е. выводиться только bcd.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
03.11.2010, 22:08 6
ДмитрийТ, Ты можешь мозг не парить, а сразу все писать по человечески?
0
3 / 3 / 7
Регистрация: 03.11.2010
Сообщений: 33
03.11.2010, 22:12  [ТС] 7
Я тоже сначала как Вы думали надо сделать, но потом в условие вчитался повнимательнее, надо полностью удалить повторяющиеся символы.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
03.11.2010, 22:12 8
Вот функция удаления одинаковых.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
function Del(s:string):string;
var i,j:byte;
begin
i:=1;
while i<=length(s)do
 begin
  for j:=length(s) downto i do
  if s[j]=s[i] then delete(s,j,1);
  inc(i);
 end;
Del:=s;
end;
0
3 / 3 / 7
Регистрация: 03.11.2010
Сообщений: 33
03.11.2010, 22:26  [ТС] 9
Проверил функцию удаления, если я ввожу 'abadc' то 'd' тоже удаляется.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
03.11.2010, 22:50 10
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Ты как-то сам чуть думай, мало ли что напишут, попробуй так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function Del(s:string):string;
var i,j:byte;
begin
i:=1;
while i<=length(s)do
 begin
  k:=0; 
  for j:=length(s) downto i+1 do
  if s[j]=s[i] then 
   begin
    k:=1;
    delete(s,j,1);
   end;
  if k=1 then delete(s,i,1)   
  else inc(i);
 end;
Del:=s;
end;
1
3 / 3 / 7
Регистрация: 03.11.2010
Сообщений: 33
03.11.2010, 23:00  [ТС] 11
Puporev, спасибо огромное, я бы долго над этим думал бы.
0
03.11.2010, 23:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2010, 23:00
Помогаю со студенческими работами здесь

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

Вывести на экран все буквы в алфавитном порядке, встречающиеся в тексте не менее двух раз
2.Задан текст, состоящий из латинских букв, в конце идет точка. Вывести на экран все буквы в...

Вывести в алфавитном порядке все согласные буквы, которые не входят ни в одно слово
Помогите решить задачу написать программу в Паскале ABC, пожалуйста. За ранее спасибо. Дан текст...

Вывести в алфавитном порядке все буквы, которые входят в текст по одному разу
Программа на тему регулярные типы: векторы. Дан текст из малых латинских букв, за которым...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru