s := 039;123456789039;; Delete ( s, 1, 2 ); n

s := '123456789';
Delete ( s, 1, 2 );
n := Pos ( '6', s );
writeln ( n );
как работает эта программка
должно получится 4

Задать свой вопрос
2 ответа

s := '123456789'; - строковой переменной s присваивается значение

Delete ( s, 1, 2 ); - из строчки s удаляется 2 знака, начиная с 1-го (значение s будет '3456789')

n := Pos ( '6', s ); - определяется номер позиции знака '6' в строке s. Этот номер равен 4

writeln ( n ); - на экран выводится значение n, т.е. 4

В паскале индексы строк начинаются от 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

Diana
6 знаков отсчитываем с конца?
Вадим Фещишин
??
Даниил
Pos('6', '3456789') = 4
Anzhelika Burdashkina
Pos('6', '3456789') разыскивает в строке '3456789' подстроку '6' 3 - 1й символ строки не равен 6; 4 - 2й символ не равен 6; 5 - 3й не равен 6; 4й!!! символ = 6 => подстрока '6' найдена в строке '3456789' и Pos отдаёт индекс начала подстроки в строке т.е 4.
Ljuda Abajkina
Спасибо)))
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт