Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ решите пожалуйста задачу

Автор: serga 16.12.2007 17:25

Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 символов, между соседними словами – произвольное число пробелов, за последним словом точка. Напечатать эту же последовательность, удалив из всех слов заданный символ.
Это простая задача,но я чё то торможу....заучился...

Автор: Michael_Rybak 16.12.2007 19:15

Показывай, что делал. В faq есть соответствующие материалы. Решалось сто раз похожее.

Автор: serga 16.12.2007 19:38

Цитата(Michael_Rybak @ 16.12.2007 15:15) *

Показывай, что делал. В faq есть соответствующие материалы. Решалось сто раз похожее.

program z6_2;
uses crt;
type
masslovo = array [1..30] of string[10];
var
txt: masslovo;
i, n: integer;
ans, sim, c: char;
fl: boolean;
begin
repeat
clrscr;
writeln ('NABERITE POSLEDOVATELNOST IS SLOV,');
writeln ('NE PREVISHAUSCHIH 10 SIMVOLOV, I NE BOLEE 30 SLOV.');
n := 1;
repeat
c := readkey;
write ©;
if c = ' '
then
begin
if fl = true
then
begin
inc(n);
fl := false;
end;
end
else
if c <> '.'
then
begin


end;
until c = '.';

writeln;
writeln ('vvedite symbol kotoryi nugno udalit: ');
readln (sim);

i := 1;
while i <= length(txt) do
if txt[i] in [sim]
then delete(txt, i, 1)
else inc(i);
{vyvod}
writeln(' result = ', txt);

write('HOTITE LI VI POVTORIT? (Y/N)');
ans:=readkey;
until UpCase(ans) = 'N';
end.