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

Распечатайте буквы, которые встречаются в каждом слове текста только один раз

28.03.2014, 10:47. Показов 1669. Ответов 2
Метки нет (Все метки)

Пусть дан текст. Распечатайте те буквы, которые встречаются в каждом слове текста только один раз.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.03.2014, 10:47
Ответы с готовыми решениями:

Определить буквы, которые встречаются только в первом и во втором слове
Даны 4 слова, определить те буквы, которые встречаются только в первом и во втором слове Заранее...

Выбрать из файла те символы, которые встречаются в нем только один раз
11 Дан файл, содержащий текст на русском языке. Выбрать из него те символы, которые встречаются в...

Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз
Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, в том...

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

2
Фрилансер
3417 / 2814 / 3000
Регистрация: 08.02.2012
Сообщений: 8,496
Записей в блоге: 1
29.03.2014, 11:26 2
Лучший ответ Сообщение было отмечено Chowder как решение

Решение

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
Const mn=[' ',',','.','?','!'];
Var A:array[1..30] of string;
    i,j,k,r,n:byte;
    s,sl:string;
    f:boolean;
Begin
    write('Текст: ');readln(s);
    s:=s+' ';
    For i:=1 to Length(s) do
     if not(s[i] in mn) then sl:=sl+s[i]
     else
     Begin
       if sl<>'' then
       Begin
         inc(n);
         A[n]:=sl;
       End;
       sl:='';
     End;
    For i:=1 to Length(A[1]) do
    Begin
      f:=true;
      For j:=2 to n do
      Begin
        k:=0;
        For r:=1 to Length(A[j]) do
         if A[1][i]=A[j][r] then
         Begin
           k:=1;
           break;
         End;
        if k=0 then 
        Begin
          f:=false;
          break;
        End;
      End;
      if f then write(A[1][i]);
    End;
    if n=1 then writeln(A[1]);
    readln;
End.
Как-то так...

Добавлено через 43 секунды
Можешь добавить подсчёт количества повторяющихся букв,чтобы,в случае когда нету таких букв,вывести сообщение об этом

Добавлено через 1 минуту
Ой не много не так условие прочитал,сек исправлю

Добавлено через 5 минут
Как-то так
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
Const mn=[' ',',','.','?','!'];
Var A:array[1..30] of string;
    i,j,k,r,n:byte;
    s,sl,t:string;
    f:boolean;
Begin
    write('Текст: ');readln(s);
    s:=s+' ';
    For i:=1 to Length(s) do
     if not(s[i] in mn) then sl:=sl+s[i]
     else
     Begin
       if sl<>'' then
       Begin
         inc(n);
         A[n]:=sl;
       End;
       sl:='';
     End;
    For i:=1 to Length(A[1]) do
    Begin
      t:=A[1];k:=0;
      While Pos(A[1][i],t)>0 do
      Begin
        inc(k);
        Delete(t,Pos(A[1][i],t),1);
      End;
      if k>1 then Continue;
      f:=true;
      For j:=2 to n do
      Begin
        k:=0;t:=A[j];
        While Pos(A[1][i],t)>0 do
        Begin
          inc(k);
          Delete(t,Pos(A[1][i],t),1);
        End;
        if k<>1 then 
        Begin
          f:=false;
          break;
        End;
      End;
      if f then write(A[1][i]);
    End;
    readln;
End.
0
228 / 225 / 220
Регистрация: 03.07.2012
Сообщений: 466
29.03.2014, 11:37 3
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
uses
  crt;
const zn_prep = [' ', ',', '.', '?', '!', ':', ';'];  
var
  s, w : string;
  i, j, k : byte;
  bukv : set of char;
begin
  clrscr; 
  write('Enter text : '); readln(s);
  w := ''; bukv := [];
  for i := 1 to length(s) do begin
    If s[i] in zn_prep then begin 
      for j := 1 to length(w)-1 do begin
       for k := j+1 to length(w) do
        If w[j] = w[k] then bukv := bukv + [w[j]];
      end;
      w := '';
    end else w := w + s[i];
  end;
  for i := 128 to 241 do 
    if (pos(chr(i),s)<>0) and (not (chr(i) in bukv)) then write(chr(i),' ');
  readln;
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.03.2014, 11:37
Помогаю со студенческими работами здесь

Вычеркните из слова X те буквы, которые встречаются в слове Z
Вычеркните из слова X те буквы, которые встречаются в слове Z

Определить какие буквы встречаются только в одном слове
Слова в тексте разделены пробелами. определить какие буквы встречаются только в одном слове этого...

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

Вывести буквы строки, которые встречаются 1 раз
Подскажите идею по строкам. Дан текст надо найти те буквы которые в данном тексте встречаются 1...


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

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

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