• Удалить из строки символы между 1 и последней *, если *<2, то вывести сообщение.
    вот программа, что не так?
    var s:string; k1,k2,i:integer;
    begin
    writeln('введи строку');
    readln(s);
    k1:=pos('*',s);
    for i:=1 to length(s) do
    if s[i]='*' then k2:=i;
    if (k1=0) or (k2=0) then writeln('нет ни одной *')
    else if (k1<2) or (k2<2) then writeln('нет 1 звездочки')
    else delete(s,k1,k2-k1+1);
    write(s);
    writeln;
    readln;
    end.
    на 1 скрине просто удаляет *,а на 2 скрине выводит так...

Ответы 2

  • и что изменилось? то же самое
  • var  s:string;  k1,k2,i:integer;beginwriteln('введи строку');readln(s);k1:=pos('*',s);for i:=k1+1 to length(s) do  if s[i]='*' then k2:=i;if (k1=0) then writeln('нет ни одной *')  else if (k2=0) then    writeln('нет 1 звездочки')      else delete(s,k1,k2-k1+1);write(s);writeln;readln;end. 
    • Автор:

      pedrowpxb
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years