Var n: integer;
s: string;
begin
write('Введите строку символов ');
readln(s);
n:=Length(s);
for var i:= 1 to ((n-1) div 3) do
insert(',',s,n-3*i+1);
writeln(s);
end.
-----------
АБС паскаль.
типа данных для 100 цифр числа нет, поэтому вводим в строковый тип, и поэтому всё равно, что бить по три, цифры или буквы.
2)
const
n = 20;
var
a : array [1..n] of integer;
b,i,num : integer;
begin
//Формирование массива пропускаю
readln (b);
nom := 0;
for i := 1 to n do //Поиск номера элемента
if a[i] = b then // , равного b
num := i;
if num <> 0 then
writeln ('Есть, его порядковый номер=',num)
else
writeln ('Нет');
end.
Например так:
123 / 2 = 61 (1)
61 / 2 = 30 (1)
30 / 2 = 15 (0)
15 / 2 = 7 (1)
7 / 2 = 3 (1)
3 / 2 = 1 (1)
Сначала записывается последняя единица (целая часть от деления на два, в данном случае, целая часть от деления 3 на 2),
затем записываются остатки - в обратном порядке
123_10 = 1111011_2
<u>// PascalABC.NET 3.3, сборка 1634 от 14.02.2018</u>
<u>// Внимание! Если программа не работает, обновите версию!</u>
begin
var (a,b,c):=ReadReal3('Введите длины сторон треугольника:');
if (a=b) and (a=c) then Writeln('Треугольник равносторонний')
else Writeln('Треугольник не равносторонний')
end.
В параллелограмме указан ввод числа в переменную А, т.е. А будет равно 25;
Далее присваиваем значение переменным Х=1 и S=0;
Проверяем/сравниваем (обычно это условный оператор if).
У нас действительно S меньше или равно А, т.к. 0<25;
Выполняем блок действий Х=Х*4 (т.е. Х=4); S=S+X (т.е. S=4);
Опять проверяем/сравниваем 4<25, опять выполняем блок действий.
X=4*4=16 (т.к. старое значение уже было 4 и оно хранится в памяти)
S=4+16=20 (тоже что и с иксом);
Опять проверяем 20<25. Опять выполняем блок действий:
X=16*4=64
S=20+64=84
Проверяем :-) (надоело уже) 84<20????? Нет больше. Идем по ветке нет, т.е. выводим S.
На экране отобразиться число 84.