В общем, еще в школе меня научили программировать.
Начали с простейших примеров типа "есть стиральная машинка. В нее можно приливать 3 литра, и отливать 2. Заполнитее ее."
А потом пошли блок-схемы. А потом и Basic.
А потом начался университет. И там нам читали Pascal. По большому счету между ними особых различий практически нет. *Или мы до них не дошли. Все же предмет "информатика" для биологов явно не профильный.* Так что я быстро приспособилась.
Но народ страдал. Те, кто ПС видели в первый раз.
Для же сложности задания не представляли, и поэтому я борала дополнительные, что бы заработать автомат и не идти на экзамен. *Впрочем, я так думаю, что пойти стоило, т.к. принимал его наш же математик, которому я сдала высшую математику во второй экзамен на "3". Так тут хоть бы реабилитировалась.*
И вот одно из дополнительных заданий звучало как: "Написать программу подсчета колиства слов в строке."
Здесь мне повезло, потому, что мой однокурсник, так же видевший ПС в своей жизни не раз, уже брал это задине и уже что-то сделал. Преподаватель, когда подошла проверять, зада ему такую задачу: "а как сделать так, что считались слова правильно и тогда, когда рядом стоят несколько пробелов."
"Угу", - подумала я - "Я это сделаю".
Действительно. Промучавшисть над задачей ночь, я ее решила. И программу написала. Если бы не подареная мне среда джля Паскаля, мне бы ее еще отлаживать пришлось. А так я ее еще и отладила дома.
Т.е. пришла на пару с уже готовым заданием.
Загрузила.
Заявила о готовности.
Жду.
Преподаватель ходит еще вокруг народа, что не справляется и с основной программой...
Наконец, свершилось. Подошла. Начинаем демонстрацию и проверку.
Преподаватель вводит свое предложение.
Подсчет количества слов выполнен верно.
Угу...
Преподаватель вводит другое предложение, коварно улыбаясь.
Подсчет количества слов выполнен верно.
Преподаватель несколько удивясь, но еще не теряя надежды вводит еще одно предложение с подвохом.
Подсчет количества выполнен верно.
Преподаватель заглядывает в код. Вчитывается.
Снова вводит предложение.
Подсчет количества выполнен верно.


Преподаватель снова читает код...


И снова предложение.


И снова верно.
В конце-концов, преподаватель говорит фразу, которая мне досих пор сердце греет.
- Хм, программа работает, но я не могу понять как.
Тут я кидаюсь рассказывать, какой же я придумала ход...
Она кивает. Ага...
Понятно, что автомат я получила. Причем, получила первой из всего курса.

Да.
Лет прошло с тех пор довольно много...
Да вот пришлось вспомнить все досконально... Часть не вспоминается вовсе. А часть поддалась восстановлению.
Не без помощи, правда, памяти ПС.

Код программы.

Program Podschet_String;
(*Программа подсчета количества слов в строке*)
var S1 : string;
J, S, n:integer;
begin
S:=0;
n:=0;
write('введите строку= '
readln (S1);
for J:= 1 to Length (S1) do
if S1[J] <>' ' then n:=n+1 else
if n<>0 then begin
n:=0;
S:=S+1;
end;
if S1[Length (S1)] <>' ' then S:=S+1;
writeln('Количество слов в строке = ',S:3);writeln ('Нажмите клавишу "Enter"!'
readln;
end.


PS: Nes! Специально для тебя! ; )