• Подскажите, пожалуйста, где ошибки и как корректно составить программу? (в pascal)
    Само задание: удвоить все символы в строке.

    question img

Ответы 4

  • Введите строку717711 при проверке программы так, это верно?)
  • Каждый символ в строке удвоился. Разве в задании требовалось не это?
    • Автор:

      raina
    • 6 лет назад
    • 0
  • Спасибо Вам большое! :)
    • Автор:

      noelr4dg
    • 6 лет назад
    • 0
  • Ошибка

    В строке  's2:= s2 + s1[i] + s1[i];'

    По умолчанию все переменные равны нулю

    т.к. вы не задали значение i и вводите эту строку вне цикла for, то получается что вы запрашиваете нулевой элемент массива s1, при том что нумерация начинается с единицы, поэтому и выдаёт ошибку.

    "Индекс находится вне границ массива"

    Верный код программы

    program raf105;

    var s1,s2:string;

    i:integer;

    begin

    writeln('Введите строку');

    readln(s1);

    s2:='';

    for i:=1 to length(s1) do

     s2:= s2 + s1[i] + s1[i];

    writeln(s2);

    end.

  • Добавить свой ответ

Войти через Google

или

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

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

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