Определить в числе, не превышающем миллиард (1000000000) количество чётных чисел...

0 голосов
37 просмотров

Определить в числе, не превышающем миллиард (1000000000) количество чётных чисел (Паскаль) Можно пожалуйста простое решение


Информатика (129 баллов) | 37 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
1. Вариант современного решения
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!

begin
  Writeln('Число четных цифр равно ',
    abs(ReadInteger('n=')).ToString.Where(c->c.ToDigit.IsEven).Count)
end.

Пример
n= 363754345
Число четных цифр равно 3

2. Вариант "школьного решения" в синаксисе ТурбоПаскаль 1983г.

program TP70;
uses Crt;
var
  n:longint;
  k,d:byte;
begin
  ClrScr;
  Write('n= '); Read(n);
  n:=abs(n);
  k:=0;
  while n>0 do begin
    d:=n mod 10;
    if d mod 2=0 then Inc(k);
    n:=n div 10
    end;
  Writeln('Число четных цифр равно ',k);
  ReadKey;
end.
(150k баллов)
0 голосов

Var 
N: integer; 
s: string; 
i,c: byte;

begin 
ReadLn(N); 
Str(N,s); 
c:=0; 
for i:=1 to Length(s) do   
if s[i] in ['0','2','4','6','8'] then     
Inc(c); 
WriteLn(c); 
end.

(314k баллов)