Версия для копирования в MS Word
PDF-версии: горизонтальная · вертикальная · крупный шрифт · с большим полем
РЕШУ ЕГЭ — информатика
Задания
i

В на­ту­раль­ном числе N (0 < N < 109) не­об­хо­ди­мо под­счи­тать ко­ли­че­ство цифр де­ся­тич­ной за­пи­си, чётность ко­то­рых сов­па­да­ет с чётно­стью по­след­ней цифры числа N. На­при­мер, для N = 123 дол­жен по­лу­чить­ся ответ 2 (по­след­няя цифра числа нечётная, а всего в за­пи­си числа две нечётные цифры: 1 и 3).

Для ре­ше­ния этой за­да­чи уче­ник на­пи­сал про­грам­му, но, к со­жа­ле­нию, его про­грам­ма не­пра­виль­ная.

Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

Бей­сикPython

DIM N, K, D AS INTEGER

INPUT N

K = 0

D = N MOD 2

WHILE N > 1

    IF N MOD 10 = D THEN

        K = K + 1

    END IF

    N = N \ 10

WEND

PRINT K

END

N = int(input())

k = 0

d = N % 2

while N > 1:

    if N % 10 == d:

        k += 1

    N = N // 10

print(k)

Пас­кальАл­го­рит­ми­че­ский язык

var N, k, d: integer;

begin

    read(N);

    k := 0;

    d := N mod 2;

    while N > 1 do begin

        if N mod 10 = d

            then k := k + 1;

        N := N div 10

    end;

    writeln(k)

end.

алг

нач

    цел N, k, d

    ввод N

     k := 0

     d := mod(N,2)

     нц пока N > 1

        если mod(N,10) = d

            то k := k + 1

        все

        N := div(N,10)

     кц

     вывод k

кон

С++

#include <iostream>

using namespace std;

int main(){

     nt N, k, d;

    cin >> N;

    k = 0;

    d = N % 2;

    while (N > 1) {

        if (N % 10 == d)

        ++k;

    N = N / 10;

    }

    cout << k;

    return 0;

}

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

1.  На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе N = 1961.

2.  На­зо­ви­те ми­ни­маль­ное N, боль­шее 100, при ко­то­ром про­грам­ма вы­ве­дет вер­ный ответ.

3.  Най­ди­те в про­грам­ме все ошиб­ки (из­вест­но, что их не более двух). Для каж­дой ошиб­ки вы­пи­ши­те стро­ку, в ко­то­рой она до­пу­ще­на, и при­ве­ди­те эту же стро­ку в ис­прав­лен­ном виде.

До­ста­точ­но ука­зать ошиб­ки и спо­соб их ис­прав­ле­ния для од­но­го языка про­грам­ми­ро­ва­ния.

Об­ра­ти­те вни­ма­ние: Вам нужно ис­пра­вить при­ведённую про­грам­му, а не на­пи­сать свою. Вы мо­же­те толь­ко за­ме­нять оши­боч­ные стро­ки, но не мо­же­те уда­лять стро­ки или до­бав­лять новые. За­ме­нять сле­ду­ет толь­ко оши­боч­ные стро­ки: за ис­прав­ле­ния, внесённые в стро­ки, не со­дер­жа­щие оши­бок, баллы будут сни­жать­ся.