•  Помогите описать алгоритм!!!
    uses crt;


    var s, sn, sg: string;

     
    i: integer;


    begin


    write('s=');


    readln(s); sn:='';


    for i:=1 to length(s) do    

       
    if s[i]='.' then

           
    sn:=sn+'...'
    else sn:=sn+s[i];


    write('s=',sn);


    readkey


    end.

Ответы 6

  • Замечание. Подобные замены надо делать с конца строки к началу.
    • Автор:

      beckwyzw
    • 6 лет назад
    • 0
  • net tam takogo. tam sozdaetsja novaja stroka
    • Автор:

      pixieyesm
    • 6 лет назад
    • 0
  • И правда новая.... пора очки заводить)))
  • Тогда нормальный рабочий алгоритм замены точки на троеточие
  • А что тут особо описывать? Считывается строка, потом в ней делается корявая попытка заменить найденную точку троеточием. Поскольку при такой замене появляются две добавочные точки, под замену попадает вторая из вставленных точек и заменяется еще на две... строка постоянно растет на две точки, они множатся... а цикл идет до первоначальной длины строки.Результат - после первой точки в строку вставляются точки в количестве, равном количеству символов, считая от позиции этой точки до конца строки в её первоначальном виде. Остальные символы из первичного вида строки останутся неизменными, следуя за полученным набором точек.
    • Автор:

      gloria38
    • 6 лет назад
    • 0
  • uses crt;var s, sn: string;  i: integer;begin  write('s=');   readln(s);   sn := '';  for i := 1 to length(s) do        if s[i] = '.' then      sn := sn + '...'    else sn := sn + s[i];      write('s=', sn);  readkey;end.Вводим строку. Пробегаем по всей ее длине и каждый символ по очереди записываем в новуйу строку, если же встречаем точку, то записываем вместо нее троеточиеКороче - заменяем все точки строки на троеточия
    • Автор:

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

Войти через Google

или

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

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

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