С 1965 года нам известно о так называемом законе Мура: «Количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается каждые 24 месяца, что приводит к появлению новых технологий, росту производительности и прорывам в области электроники». Излагая этот закон общественности, один из отцов Intel не мог предположить, что инженеры на протяжении целых пятидесяти лет смогут придерживаться его. Не мог он и предположить, что в 2014 году сложности с соблюдением этого закона начнутся и в самой компании Intel. Ведь для увеличения количества транзисторов в процессоре нужно уменьшать технический процесс производства. По-простому, уменьшать физический размер транзисторов и увеличивать их плотность.
begin
var count := 0;
var a := Range(ReadInteger('a='), ReadInteger('b='))
.Select(t -> t.ToString.JoinIntoString(' ').ToIntegers)
.Where(t -> t.Count.IsEven);
foreach var x in a do
begin
var (b, i) := (true, 0);
while (b) and (i < x.Length - 1) do
begin
if (x[i].IsOdd and x[i + 1].IsOdd) or (x[i].IsEven and x[i + 1].IsEven)
then b := false;
inc(i, 2);
end;
if (i = x.Length) and (b) then inc(count);
end;
count.Println;
end.