компилятор и отладчики для создания программ под реальный режим DOS, под DOS в 16-битном защищенном режиме с использованием расширителя DOS RTTM и драйвера DPMI, а также под Windows 3.x
Алгоритм раскраски во встроенном редакторе немного отличается от того, как понимает синтаксис компилятор. А именно, конструкция (*) воспринимается редактором как законченный комментарий, а компилятором — как начало комментария. Это может использоваться, чтобы внутри комментариев вставлять синтаксически раскрашенные участки, например, демонстрация использования. Или, например, существуют Паскаль-вирусы, которые записывают своё тело после 80й колонки, используя (*), чтобы старый текст выглядел без изменений
компилятор и отладчики для создания программ под реальный режим DOS, под DOS в 16-битном защищенном режиме с использованием расширителя DOS RTTM и драйвера DPMI, а также под Windows 3.x
Алгоритм раскраски во встроенном редакторе немного отличается от того, как понимает синтаксис компилятор. А именно, конструкция (*) воспринимается редактором как законченный комментарий, а компилятором — как начало комментария. Это может использоваться, чтобы внутри комментариев вставлять синтаксически раскрашенные участки, например, демонстрация использования. Или, например, существуют Паскаль-вирусы, которые записывают своё тело после 80й колонки, используя (*), чтобы старый текст выглядел без изменений
1)
var
str : string;
begin
readln (str);
writeln (length (str) - pos (':', str));
end.
2)
var
str, s : string;
count, i : integer;
begin
readln (str);
s := copy (s, pos ('(', str) + 1, pos (')', str) - pos ('(', str) - 1);
count := 0;
for i := 1 to length (s) do
if s[i] = ' ' then inc (count);
writeln (count + 1);
end.
3)
var
str : string;
count : integer;
begin
readln (str);
count := 0;
while pos (',', str) > 0 do
begin
inc (count);
delete (str, pos (',', str), 1);
end;
writeln (str);
writeln (count);
end.
Сделано без проверки на соответствие условию.