var a,b,c,d:integer; x:array[1..5] of integer; begin readln(a); if a>10000 then begin x[1]:=(a div 10000); // 10k x[2]:=(a div 1000 mod 10); //1k x[3]:=(a mod 1000 div 100); //100 Этот блок для чисел, у которых 5 цифр x[4]:=(a mod 100 div 10); //10 x[5]:=(a mod 10); d:=5; //1 end; if (a>=1000) and (a<=9999) then begin x[1]:=(a div 1000 mod 10); //1k x[2]:=(a mod 1000 div 100); //100 x[3]:=(a mod 100 div 10); //10 Этот блок для чисел, у которых 4 цифры x[4]:=(a mod 10); d:=4; //1 end; if (a>=100) and (a<=999) then begin x[1]:=(a mod 1000 div 100); //100 x[2]:=(a mod 100 div 10); //10 x[3]:=(a mod 10); //1 Этот блок для чисел, у которых 3 цифры d:=3; end; if (a>=10) and (a<=99) then begin x[1]:=(a mod 100 div 10); //10 Этот блок для чисел, у которых 2 цифры x[2]:=(a mod 10); //1 d:=2; end; for b:=1 to d do if (x[b] mod 2 = 0) or (x[b]=0) then c:=c+1; writeln('Кол-во четных =',c); writeln('Кол-во нечетных =',d-c); end.