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

Дана строка, состоящая из слов, разделенных пробелами. Если встречаются слова из 2 букв то заменить их *

02.11.2012, 11:05. Показов 1746. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
ребята, помогите напишите код
даны строка s состоящая из слов разделенных пробелами, если встречаются слова из 2 букв то заменить их *. Написать с использованием стандартных подпрограм и без них.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.11.2012, 11:05
Ответы с готовыми решениями:

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

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

Дана строка, состоящая из слов, разделенных пробелами. Вывести слова этой строки, которые отличны от последнего слова
ана строка, состоящая из слов, разделенных пробелами. Вывести слова этой строки, которые отличны от...

Дана строка, состоящая из слов разделенных пробелами. Вывести на экран порядковый номер слова максмимальной дл
Подскажите как сделать. Дана строка, состоящая из слов разделенных пробелами. Вывести на экран...

1
13106 / 5887 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
02.11.2012, 13:58 2
Лучший ответ Сообщение было отмечено maks_lin как решение

Решение

С применением стандартных процедур ( процедура Delete() ).
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
//С применением стандартных процедур.
procedure TForm1.Button1Click(Sender: TObject);
const
  D = [#9, #10, #13, #32]; //Множество разделителей.
var
  S : String;
  i, Len, LenW : Integer;
begin
  S := Memo1.Text;
  Len := Length(S);
  LenW := 0;
  for i := Len downto 1 do //Перебор символов строки справа-налево.
    if not (S[i] in D) then begin //Если символ не является разделителем.
      Inc(LenW); //Учитываем символ в длине слова.
      if (i = 1) or (S[i - 1] in D) then begin //Если найдено начало слова.
        if LenW = 2 then begin //Если длина слова оказалась равной 2.
          Delete(S, i, LenW - 1);
          S[i] := '*';
        end;
        LenW := 0;
      end;
    end;
 
  //Ответ.
  Memo2.Text := S;
end;
Без применения стандартных процедур.
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
//Без применения стандартных процедур.
procedure TForm1.Button1Click(Sender: TObject);
const
  D = [#9, #10, #13, #32]; //Множество разделителей.
var
  S : String;
  i, j, Len, LenW : Integer;
begin
  S := Memo1.Text;
  Len := Length(S);
  LenW := 0;
  j := 0;
  for i := 1 to Len do begin //Перебор символов строки слева-направо.
    Inc(j);
    S[j] := S[i];
    if not (S[i] in D) then begin //Если символ не является разделителем.
      Inc(LenW); //Учитываем символ в длине слова.
      if (i = Len) or (S[i + 1] in D) then begin //Если найден конец слова.
        if LenW = 2 then begin
          Dec(j, LenW - 1);
          S[j] := '*';
        end;
        LenW := 0;
      end;
    end;
  end;
  //Новая длина строки.
  SetLength(S, j);
 
  //Ответ.
  Memo2.Text := S;
end;
1
02.11.2012, 13:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2012, 13:58
Помогаю со студенческими работами здесь

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

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

Дана строка, состоящая из слов, разделенных пробелами. Вывести на экран порядковый номер слова минимальной длины и
Дана строка, состоящая из слов, разделенных пробелами. Вывести на экран порядковый номер слова...

Дана строка текста, состоящая из слов и чисел, разделенных пробелами, вывести самые короткие слова строки
Дана строка текста, состоящая из слов и чисел, разделенных пробелами, вывести самые короткие слова...


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

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

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