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

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

Задать свой вопрос
1 ответ

Ошибка

В строке  '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.

Jevelina Nichiparuk
Введите строку717711 при проверке программки так, это верно?)
Danil Shashan
Каждый знак в строке удвоился. Разве в задании требовалось не это?
Стефания Ерофеенко
Спасибо Для вас огромное! :)
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт