Последовательность - Pascal ABC (12964)
Формулировка задачи:
данная программа выводит последовательность m раз. как исправить ее, чтобы она выводила каждый символ в последовательности m раз. т.е к примеру, если мы ввели последовательность 101, то программа выводит 101101101, а должна 111000111.
Решение задачи: «Последовательность»
textual
Листинг программы
uses crt;
var m,i,j:integer;
s,s1:string;
begin
writeln('введите кратность m');
Readln(m);
Writeln ('введите последовательность двоичных символов');
Readln(s);
if m MOD 2<>0 then
begin
s1:='';
for i:=1 to length(s) do
for j:=1 to m do
s1:=s1+s[i];
Write(s1);
end
else Writeln('ошибка');
end.
Объяснение кода листинга программы
- В первой строке кода используется библиотека crt, которая является стандартной библиотекой языка Pascal ABC.
- Переменные m, i и j имеют целочисленные значения.
- Переменная s имеет тип данных string (строка), а переменная s1 также имеет тип данных string и инициализируется пустой строкой.
- Код предлагает пользователю ввести кратность числа m и последовательность двоичных символов.
- Если кратность m не равна 2, то переменная s1 инициализируется пустой строкой.
- Затем происходит цикл for, который выполняется для каждого символа в строке s.
- Внутри второго цикла for происходит еще один цикл for, который выполняется для каждого числа от 1 до m.
- В каждой итерации внутреннего цикла for к переменной s1 добавляется символ s[i], где i - это текущий индекс символа.
- После завершения внешнего цикла for значение переменной s1 выводится на экран.
- Если кратность m равна 2, то выводится сообщение об ошибке.