не уверена, что правильно, но вот весь код var s:string;
A,M,N,X,Y,Z:integer;
begin
write(s);
readln(s);
A:=1;
N:=4;
while (A<15) and (N<15) do
repeat for A:=A to (N-1) do
begin
X:=StrToInt(s[1]);
Y:=StrToInt(s[2]);
Z:=StrToInt(s[3]);
M:=100*X+10*Y+Z;
A:=A+4;
N:=N+3;
end;
if M<256 then writeln('YES')
else writeln('NO');
end.
нет, взятие в скобки не помогло
еще один вопрос возник)) как функцией pos выделить не только первую точку в IP-адресе, но и следующие?
Либо уберите repeat, либо допишите until
Скорее всего нужно убрать, зачем вводить два подобных цикла

Ответы и объяснения

  • Sky09
  • профессор
2013-12-14T19:35:42+04:00
Попробуй так:
var s:string;
    A,N,M,X,Y,Z:integer;
begin
     write('s:');
     readln(s);
     A:=1; N:=4;
     while (A<15) and (N<15) do
           for A:=1 to (N-1) do
           begin
                X:=StrToInt(s[1]);
                Y:=StrToInt(s[2]);
                Z:=StrToInt(s[3]);
                M:=100*X+10*Y+Z;
                A:=A+4;
                N:=N+3;
           end;
     if M<256 then writeln('YES')
        else writeln('NO');
end.