Другие языки программирования и технологии

напишите пожалуста решение задачи В строчке между двумя пробелами вставить запятую(язык паскаль)

пожалуста срочно надо завтра информатика помогите плизззззззззззззззз
Uses crt;
Var
s:string;
i:integer;
Begin
ClrScr;
Writeln('Введите строку');
Readln(s);
i:=Pos(' ',s);
While i<>0 do begin
insert(',',s,i+1);
i:=Pos(' ',s);
end;
Writeln('Полученная строка: '''+s+'''');
Readkey;
End.

ClrScr - Очистка экрана. впринцыпи не обязательна, но считается правилом хорошего тона

Writeln('Введите строку'); - Вывод на экран сообщения "Введите строку", опять же не обязательная часть но дает пользователю понять что от него требуется

Readln(s); - Считывание строки введенной с клавиатуры.

Pos(' ',s); - Функция возвращающая положение (номер символа с которого начинается вхождение) подстроки " " в строке s, если подстрока в строке не найдена, возвращает ноль.

While i<>0 do begin
insert(',',s,i+1);
i:=Pos(' ',s);
end;
- Пока в строке еще есть два пробела подрят заменять их на " , " (точнее вставлять между ними запятую)

Writeln('Полученная строка: ''' + s +''''); - Вывод результата
Readkey; - Позволяет посмотреть результат (не выходит из программы до нажатия любой кнопки) можно заменить на Readln; - Тогда будет ждать нажатия энтера.

Примечание:
Строки
Writeln('Введите строку');
Readln(s);
Можно заменить строкой
s:='ab cd';
где "ab cd" входная строка (меняется в ручную до запуска программы) .
Артём Бучнев
Артём Бучнев
1 849
Лучший ответ
Предыдущий ответ неверен. Произойдет не вставка запятой, а замена второго пробела на запятую.

Я же уже писал: функции Pos() и Insert() в помощь.

Для отвечающих: человек задавший вопрос абсолютно не хочет разобраться в решении самостоятельно, а требует готовый код. Рекомендую не писать готовой реализации сюда, а если и писать - то за $

Удачи!
for i:=1 to length(s)-1 do if (s=' ')and(s[i+1]=' ') then s[i+1]=',';
Marat Marat
Marat Marat
7 195