Строковый тип данных. Задачи.
1) Дана строка символов. Сколько раз встречается в ней сочетание ‘-+=’.
2) Дан текст, слова в котором слова разделены одним или несколькими пробелами. Удалите лишние пробелы ( между словами один пробел)
3) Дана строка символов. После данного сочетания ‘bb’ вставить сочетание ‘cc’.
4) Дана строка символов. Удалить сочетание символов ‘&&&’.
5) Дан текст, слова в котором слова разделены одним или несколькими пробелами. Вывести каждое слово текста
6) Дан текст, слова разделены одним пробелом. Подсчитать количество букв «е» в третьем слове
7) Дан текст, слова разделены одним пробелом. В последнем слове текста поменять «не» на «да»
Буду очень признателен,
Другие языки программирования и технологии
Помогите решить задачи Pascal
1) tmp := str; kol := 0; repeat p := pos('-+=', tmp); if p > 0 then begin inc(kol); delete(tmp, p, 3); end; until p = 0;
2) repeat p := pos(#32#32, str); if p > 0 then delete(str, p, 1); until p = 0;
3) for p = length(str) - 1 downto 1 do if (str[p] = 'b') and (str[p + 1] = 'b') then insert('cc', str, p+2);
4) while pos('&&&', str) > 0 do delete(str, pos('&&&', str), 3);
5) tmp := ''; for p := 1 to length(str) do if (str[p] = #32) and (length(tmp) > 0) then begin writeln(tmp); tmp := ''; end else tmp := tmp + str[p]; if length(tmp) > 0 then writeln(tmp);
6) tmp := ''; n := 0; k := 0; for p := 1 to length(str) do if (str[p] = #32) and (length(tmp) > 0) then begin inc(n); if n = 3 then for i := 1 to length(tmp) do if tmp[ i ] = 'e' then inc(k); tmp := ''; end else tmp := tmp + str[p]; if (length(tmp) > 0) and (n = 2) then begin inc(n); for i := 1 to length(tmp) do if tmp[ i ] = 'e' then inc(k); end;
if n < 3 then writeln('нет трёх слов') else writeln(k);
2) repeat p := pos(#32#32, str); if p > 0 then delete(str, p, 1); until p = 0;
3) for p = length(str) - 1 downto 1 do if (str[p] = 'b') and (str[p + 1] = 'b') then insert('cc', str, p+2);
4) while pos('&&&', str) > 0 do delete(str, pos('&&&', str), 3);
5) tmp := ''; for p := 1 to length(str) do if (str[p] = #32) and (length(tmp) > 0) then begin writeln(tmp); tmp := ''; end else tmp := tmp + str[p]; if length(tmp) > 0 then writeln(tmp);
6) tmp := ''; n := 0; k := 0; for p := 1 to length(str) do if (str[p] = #32) and (length(tmp) > 0) then begin inc(n); if n = 3 then for i := 1 to length(tmp) do if tmp[ i ] = 'e' then inc(k); tmp := ''; end else tmp := tmp + str[p]; if (length(tmp) > 0) and (n = 2) then begin inc(n); for i := 1 to length(tmp) do if tmp[ i ] = 'e' then inc(k); end;
if n < 3 then writeln('нет трёх слов') else writeln(k);
Что именно непонятного?
вы что, вообще там абсолютно ничего не шарите?? ?
за 2$ сделаю. с гарантией ;)
за 2$ сделаю. с гарантией ;)
для 1)
function N(X:string):byte;
var
c,l:integer;
begin
l:=length(x)-2;
result:=0;
while c
function N(X:string):byte;
var
c,l:integer;
begin
l:=length(x)-2;
result:=0;
while c
Похожие вопросы
- Пожалуйста помогите решить задачу Pascal
- Помогите решить задачу Pascal
- Помогите решить задачу pascal. Двумерные массивы (подробно)
- Помогите решить задачу через процедуры PASCAL
- Помогите с задачей pascal пожалуйста. одна осталась до зачёта!
- Какой язык программирования сможет решить задачу? (Pascal не смог)
- Помогите решить задачу в Pascal!
- Помогите решить задачу по Turbo Pascal пожалуста
- Помогите решить задачи на Pascal...
- Помогите решить задачу на языке Pascal