File20. Дан файл вещественных чисел. Найти общее количество его локальных экстремумов, то есть локальных минимумов и локальных максимумов (определения локального минимума и локального максимума даны в заданиях File18 и File19).
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
program File20; var S:String; F_in: File of Real; El2,El1,El:Real; NumEx:integer; begin Write('File: '); Readln(S); Assign(F_in,S); Reset(F_in); NumEx:=0; Read(F_in,El1); Read(F_in,El); El2:=El1; if (El1<>El) then inc(NumEx); while (not eof(F_in)) do begin El2:=El1; El1:=El; Read(F_in,El); if ((El<El1) and (El1>El2)) or ((El>El1) and (El1<El2)) then inc(NumEx); end; if El1<>El then inc(NumEx); Writeln(NumEx); Close(F_in); end. |
Другие задачи из раздела File можно посмотреть здесь.
Комментарии: