В паскале индексы строк начинаются от 1
Pos(substr, str) - функция, которая возвращает индекс первого вхождения подстроки substr в строку
str или 0, если подстрока не найдена. Например pos('abc', '12') = 0, а
pos('cat', 'qw cat123cat4') = 4 (q: 1-й символ w: 2-й символ пробел: 3-й символ
с: 4-й символ
Delete(str, index, count) удаляет из строки str начиная с элемента index count символов
Delete(s, 1, 2) = 3456789
Pos('6', s) = Pos('6', '3456789') = 4
USES CRT;
VAR m1,m2,n,n1,n2,n3,n4,n5,n6,s1,s2:LongInt;
BEGIN
ClrScr;
ReadLn(n);
m1:=n;
n1:=m1 div 100;
n2:=m1 mod 10;
n3:=(m1-n1*100-n2) div 10;
if n1=n2 then if n1=n3 then writeln('vse =');
if n1=n2 then writeln('1 i 3 =');
if n2=n3 then writeln('2 i 3 =');
if n1=n3 then writeln('1 i 2 =')
else writeln('<>');
END.
Проверяйте, что непонятно - спрашивайте.
Можно чуть поправить вывод, чтобы когда vse =, не вылезали 1 i 3, 1 i 2, 2 i 3.
Да и вообще writeln'ов можно наставить и переменные назвать покрасивше. но это уж вы сами, думаю, справитесь. В VAR у меня тоже есть лишние переменные, переделывал старый свой код наспех =)
Всего хорошего.
s := '123456789'; - строковой переменной s присваивается значение
Delete ( s, 1, 2 ); - из строки s удаляется 2 символа, начиная с 1-го (значение s будет '3456789')
n := Pos ( '6', s ); - определяется номер позиции символа '6' в строке s. Этот номер равен 4
writeln ( n ); - на экран выводится значение n, т.е. 4