СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости


Каталог заданий.
Последовательности чисел

Пройти тестирование по этим заданиям
Вернуться к каталогу заданий
Версия для печати и копирования в MS Word
1
Задание 24 № 8672

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх целых чисел. Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ко­ли­че­ство не­от­ри­ца­тель­ных чисел по­сле­до­ва­тель­но­сти и их про­из­ве­де­ние. Если не­от­ри­ца­тель­ных чисел нет, тре­бу­ет­ся вы­ве­сти на экран «NO». Из­вест­но, что вво­ди­мые числа по аб­со­лют­ной ве­ли­чи­не не пре­вы­ша­ют 10. Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

Бей­сик Python

count = 0

p = 0

FOR I = 1 TO 4

    INPUT x

    IF x >= 0 THEN

        p = p*x

        count = count + 1

    END IF

NEXT I

IF count > 0 THEN

    PRINT x

    PRINT p

ELSE

    PRINT "NO"

END IF

count = 0

p = 0

for i in range(1, 5):

    x = int(input())

    if x >= 0:

        p = p*x

        count = count + 1

if count > 0:

    print(x)

    print(p)

else:

    print("NO")

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

алг

нач

    цел p,i,x,count

    count := 0

    p := 0

    нц для i от 1 до 4

        ввод x

        если x >= 0 то

            p := p*x

            count := count+1

        все

    кц

    если count > 0 то

        вывод x, нс

        вывод p

    иначе

        вывод "NO"

    все

кон

var p,i,x,count: integer;

begin

    count := 0;

    p := 0;

    for i := 1 to 4 do

    begin

        read (x);

        if x >= 0 then begin

            p := p*x;

            count := count+1;

        end

    end;

    if count > 0 then

    begin

        writeln(х);

        writeln(p);

    end

    else

        writeln('NO');

end.

Си++

#include <iostream>

using namespace std;

int main(void)

{

    int p, i, x, count;

    count = 0;

    p = 0;

    for (i = 1; i <= 4; i++)

    {

        cin >> x;

        if (x >= 0)

        {

            p = p*x;

            count = count+1;

        }

    }

    if (count > 0)

    {

        cout << x << "\n";

        cout << p << "\n";

    }

    else

        cout << "NO\n";

    }

 

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти -5 2 1 3.

2. При­ве­ди­те при­мер такой по­сле­до­ва­тель­но­сти, со­дер­жа­щей хотя бы одно не­от­ри­ца­тель­ное число, что, не­смот­ря на ошиб­ки, про­грам­ма пе­ча­та­ет пра­виль­ный ответ.

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

1) вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2) ука­жи­те, как ис­пра­вить ошиб­ку, т.е. при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

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

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

Ис­прав­ле­ние ошиб­ки долж­но за­тра­ги­вать толь­ко стро­ку, в ко­то­рой на­хо­дит­ся ошиб­ка.

Решение · ·

2
Задание 24 № 9176

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх целых чисел. Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран сумму всех от­ри­ца­тель­ных чисел по­сле­до­ва­тель­но­сти и мак­си­маль­ное число в по­сле­до­ва­тель­но­сти.

Из­вест­но, что вво­ди­мые числа по аб­со­лют­ной ве­ли­чи­не не пре­вы­ша­ют 1000. Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

Бей­сик Python

mx = 0

s = 0

FOR I = 1 TO 4

    INPUT x

    IF x < 0 THEN

        s = x

    END IF

    IF x > mx THEN

        mx = x

    END IF

NEXT I

PRINT s

PRINT mx

mx = 0

s = 0

for i in range(1, 5):

    x = int(input())

    if x < 0:

        s = x

    if x > mx:

        mx = x

print(s)

print(mx)

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

алг

нач

    цел s,i,x,mx

    mx := 0

    s := 0

    нц для i от 1 до 4

        ввод x

        если x < 0 то

            s := x

        все

        если x > mx то

            mx := x

        все

    кц

вывод s, нс

вывод mx

кон

var s,i,x,mx: integer;

begin

    mx := 0;

    s := 0;

    for i := 1 to 4 do

    begin

        read (x);

        if x < 0 then

            s := x;

        if x > mx then

            mx := x;

    end;

    writeln(s);

    writeln(mx);

end.

Си++

#include <iostream>

using namespace std;

int main(void)

{

    int s, i, x, mx;

    mx = 0;

    s = 0;

    for (i = 1; i <= 4; i++)

    {

        cin >> x;

        if (x < 0)

        {

            s = x;

        }

        if (x > mx)

        {

            mx = x;

        }

    }

    cout << s << "\n";

    cout << mx << "\n";

}

 

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти -5 2 -4 3.

2. При­ве­ди­те при­мер такой по­сле­до­ва­тель­но­сти, со­дер­жа­щей хотя бы одно не­от­ри­ца­тель­ное число, что, не­смот­ря на ошиб­ки, про­грам­ма пе­ча­та­ет пра­виль­ный ответ.

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

1) вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2) ука­жи­те, как ис­пра­вить ошиб­ку, т.е. при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

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

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

Ис­прав­ле­ние ошиб­ки долж­но за­тра­ги­вать толь­ко стро­ку, в ко­то­рой на­хо­дит­ся ошиб­ка.


3
Задание 24 № 6903

Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры вво­дит­ся по­сле­до­ва­тель­ность из шести не­от­ри­ца­тель­ных целых чисел, не пре­вы­ша­ю­щих 106, под­счи­ты­ва­ет­ся и вы­во­дит­ся сумма введённых чётных чисел или 0, если чётных чисел в по­сле­до­ва­тель­но­сти нет. Уче­ник на­пи­сал такую про­грам­му:

 

Бей­сикПас­каль

DIM N, S AS LONG

DIM I AS INTEGER

S = 1

FOR I = 1 TO 6

INPUT N

IF I MOD 2 = 0 THEN

S = S + N

END IF

NEXT I

PRINT S

END

var n, s: longint;

i: integer;

begin

s:=1;

for i:=1 to 6 do begin

readln(n);

if i mod 2 = 0 then

s := s + n;

end;

write(s);

end.

Си++Ал­го­рит­ми­че­ский

#include <iostream>

using namespace std;

int main(){

long int n, s;

int i;

s = 1;

for (i=1; i<=6; ++i) {

cin >> n;

if (i%2 == 0)

s = s + n;

}

cout << s;

}

алг

нач

цел n, s

цел i

s := 1

нц для i от 1 до 6

ввод n

если mod(i,2) = 0

то s := s + n

все

кц

вывод s

кон

Python

s = 1

for i in range(1, 7):

    n = int(input())

    if i % 2 == 0:

        s = s + n

print(s)

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти 1, 1, 2, 3, 5, 8.

2. При­ве­ди­те при­мер по­сле­до­ва­тель­но­сти, при вводе ко­то­рой про­грам­ма вы­даст вер­ный ответ.

3. Най­ди­те в про­грам­ме все ошиб­ки (их может быть одна или не­сколь­ко).

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


4
Задание 24 № 7469

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх не­от­ри­ца­тель­ных целых чисел (не­ко­то­рые числа могут быть оди­на­ко­вы­ми). Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ко­ли­че­ство нечётных чисел в ис­ход­ной по­сле­до­ва­тель­но­сти и мак­си­маль­ное нечётное число. Если нечётных чисел нет, тре­бу­ет­ся на экран вы­ве­сти «NO». Из­вест­но, что вво­ди­мые числа не пре­вы­ша­ют 1000. Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

 

Бей­сикPython

CONST n = 4

count = 0

maximum = 999

FOR I = 1 TO n

INPUT x

IF x mod 2 <> 0 THEN

count = count + 1

IF x > maximum THEN

maximum = I

END IF

END IF

NEXT I

IF count > 0 THEN

PRINT count

PRINT maximum

ELSE

PRINT "NO"

END IF

n = 4

count = 0

maximum = 999

for i in range(1, n + 1):

    x = int(input())

    if x % 2 != 0:

        count += 1

        if x > maximum:

            maximum = i

if count > 0:

    print(count)

    print(maximum)

else:

    print("NO")

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

const n = 4;

var i, x: integer;

var maximum, count: integer;

begin

count := 0;

maximum := 999;

for i := 1 to n do

begin

read(x);

if x mod 2 <> 0 then

begin

count := count + 1;

if x > maximum then

maximum := i

end

end;

if count > 0 then

begin

writeln(count);

writeln(maximum);

end

else

writeln('NO')

end.

алг

нач

цел n = 4

цел i, x

цел maximum, count

count := 0

maximum := 999

нц для i от 1 до n

ввод x

если mod(x, 2) <> 0 то

count := count + 1

если x > maximum то

maximum := i

все

все

кц

если count > 0 то

вывод count, нс

вывод maximum

иначе

вывод "NO"

все

кон

Си++

#include <iostream>

using namespace std;

int main(void)

{

const int n = 4;

int i, x, maximum, count;

count = 0;

maximum = 999;

for (i = 1; i <= n; i++) {

cin >> x;

if (x % 2 != 0) {

count++;

if (x > maximum)

maximum = i;

}

}

if (count > 0) {

cout << count;

cout << maximum;

}

else

cout << "NO\n";

}

 

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти: 2 9 4 3

2. При­ве­ди­те при­мер такой по­сле­до­ва­тель­но­сти, со­дер­жа­щей хотя бы одно нечётное число, что, не­смот­ря на ошиб­ки, про­грам­ма пе­ча­та­ет пра­виль­ный ответ.

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

 

1) вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2) ука­жи­те, как ис­пра­вить ошиб­ку, т. е при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

 

 

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

Источник: Де­мон­стра­ци­он­ная версия ЕГЭ—2015 по информатике.
Решение · ·

5
Задание 24 № 11125

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх не­от­ри­ца­тель­ных целых чисел (не­ко­то­рые числа могут быть оди­на­ко­вы­ми). Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ко­ли­че­ство чётных чисел в ис­ход­ной по­сле­до­ва­тель­но­сти и мак­си­маль­ное чётное число. Если чётных чисел нет, тре­бу­ет­ся на экран вы­ве­сти «NO». Из­вест­но, что вво­ди­мые числа не пре­вы­ша­ют 1000. Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта на­пи­сан­ная им про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

 

Бей­сикPython

CONST n = 4

count = 0

maximum = 1000

FOR I = 1 TO n

  INPUT x

    IF x mod 2 = 0 THEN

      count = count + 1

    IF x > maximum THEN

      maximum = I

    END IF

  END IF

NEXT I

IF count > 0 THEN

  PRINT count

  PRINT maximum

ELSE

  PRINT "NO"

END IF

n = 4

count = 0

maximum = 1000

for i in range (1, n+1):

    x = int(input())

    if x % 2 == 0:

        count += 1

        if x > maximum:

            maximum = i

if count > 0:

    print (count)

    print (maximum)

else:

    print ("NO")

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

алг

нач

  цел n = 4

  цел i, x

  цел maximum, count

  count := 0

  maximum := 1000

  нц для i от 1 до n

    ввод x

    если mod(x, 2) = 0 то

      count := count + 1

      если x > maximum то

        maximum := i

      все

    все

  кц

  если count > 0 то

    вывод count, нс

в    ывод maximum

  иначе

    вывод "NO"

  все

кон

const n = 4;

var i, x: integer;

var maximum, count: integer;

begin

  count := 0;

  maximum := 1000;

  for i := 1 to n do

  begin

    read(x);

    if x mod 2 = 0 then

    begin

      count := count + 1;

      if x > maximum then

          maximum := i

    end

  end;

  if count > 0 then

  begin

    writeln(count);

    writeln(maximum)

  end

  else

    writeln('NO')

end.

Си++

#include <iostream>

using namespace std;

#define n 4

int main(void)

{

  int i, x;

  int maximum, count;

  count = 0;

  maximum = 1000;

  for (i = 1; i <= n; i++)

  {

    cin >> x;

    if (x % 2 == 0)

    {

      count++;

      if (x > maximum)

        maximum = i;

    }

  }

  if (count > 0)

  {

    cout << count << endl;

    cout << maximum << endl;

  }

  else

    cout << "NO\n";

}

 

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти: 2 9 4 3

2. При­ве­ди­те при­мер такой по­сле­до­ва­тель­но­сти, со­дер­жа­щей хотя бы одно чётное число, что, не­смот­ря на ошиб­ки, при­ведённая про­грам­ма пе­ча­та­ет пра­виль­ный ответ.

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

1) вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2) ука­жи­те, как ис­пра­вить ошиб­ку, т.е. при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

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

Об­ра­ти­те вни­ма­ние, что тре­бу­ет­ся найти ошиб­ки в име­ю­щей­ся про­грам­ме, а не на­пи­сать свою, воз­мож­но, ис­поль­зу­ю­щую дру­гой ал­го­ритм ре­ше­ния. Ис­прав­ле­ние ошиб­ки долж­но за­тра­ги­вать толь­ко стро­ку, в ко­то­рой на­хо­дит­ся ошиб­ка.

 

При­ме­ча­ние. 0 – чётное число.

Источник: ЕГЭ по ин­фор­ма­ти­ке 23.03.2016. До­сроч­ная волна

6
Задание 24 № 15864

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх не­от­ри­ца­тель­ных целых чисел (не­ко­то­рые числа могут быть оди­на­ко­вы­ми). Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ко­ли­че­ство де­ля­щих­ся на­це­ло на 4 чисел в ис­ход­ной по­сле­до­ва­тель­но­сти и мак­си­маль­ное де­ля­ще­е­ся на­це­ло на 4 число. Если де­ля­щих­ся на­це­ло на 4 чисел нет, тре­бу­ет­ся на экран вы­ве­сти «NO». Из­вест­но, что вво­ди­мые числа не пре­вы­ша­ют 1000. Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта на­пи­сан­ная им про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

Бей­сикPython

CONST n = 4

count = 0

maximum = 1000

FOR I = 1 TO n

    INPUT x

    IF X MOD 4 = 0 THEN

        count = count + 1

        IF x < maximum THEN

            maximum = x

        END IF

    END IF

NEXT I

IF count > 0 THEN

    PRINT count

    PRINT maximum

ELSE

    PRINT “NO”

END IF

n = 4

count = 0

maximum = 1000

for i in range(1, n + 1):

    x = int(input())

    if x % 4 == 0:

        count += 1

        if x < maximum:

            maximum = x

if count > 0:

    print(count)

    print(maximum)

else:

    print("NO")

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

const n = 4;

var i, x: integer;

var maximum, count: integer;

begin

     count := 0;

    maximum := 1000;

    for i:=1 to n do begin

         read(x);

         if x mod 4 = 0 then begin

            count := count + 1;

             if x < maximum then

                 maximum := x;

            end;

         end;

     if count > 0 then begin

        writeln(count);

        writeln(maximum);

    end

    else

        writeln('NO');

end.

алг

нач

    цел n = 4

    цел i, x

    цел maximum, count

    count := 0

    maximum := 1000

    нц для i от 1 до n

        ввод x

        если mod(x, 4) == 0 то

            count := count + 1

            если x < maximum то

                maximum := x

            все

        все

    кц

    если count > 0 то

        вывод count, нс

        вывод maximum

    иначе

        вывод "NO"

    все

кон

Си++

#include <iostream>

using namespace std;

 

int main(){

    const int n = 4;

    int x, maximum, count;

    count = 0;

    maximum = 1000;

    for (int i = 1; i <= n; i++) {

        cin >> x;

        if ( x % 4 == 0 ) {

            count++;

            if ( x < maximum )

                maximum = x;

        }

    }

    if ( count > 0 ) {

        cout << count << endl;

        cout << maximum;

    }

    else

        cout << "NO";

    return 0;

}

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти: 2 8 4 3.

2. При­ве­ди­те при­мер такой по­сле­до­ва­тель­но­сти, со­дер­жа­щей хотя бы одно де­ля­ще­е­ся на­це­ло на 4 число, что при её вводе при­ведённая про­грам­ма, не­смот­ря на ошиб­ки, вы­ве­дет пра­виль­ный ответ.

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

1) вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2) ука­жи­те, как ис­пра­вить ошиб­ку, т. е. при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

Из­вест­но, что в тек­сте про­грам­мы можно ис­пра­вить ровно две стро­ки так, чтобы она стала ра­бо­тать пра­виль­но.

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

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

При­ме­ча­ние. 0 де­лит­ся на любое на­ту­раль­ное число.

Источник: ЕГЭ — 2018. До­сроч­ная волна. Вариант 2., ЕГЭ — 2018. До­сроч­ная волна. Вариант 1.

7
Задание 24 № 18093

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх целых не­от­ри­ца­тель­ных чисел. Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ко­ли­че­ство чисел, оста­ток от де­ле­ния на 10 ко­то­рых равен 0, и сумму таких чисел. Если таких чисел нет, тре­бу­ет­ся вы­ве­сти на экран «NO». Для ре­ше­ния этой за­да­чи уче­ник на­пи­сал про­грам­му, но, к со­жа­ле­нию, его про­грам­ма не­пра­виль­ная. Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

 

Бей­сикPython

DIM P,I,X,COUNT AS INTEGER

COUNT = 0

P = 0

FOR I = 1 TO 4

    INPUT X

    IF X MOD 10 = 0 THEN

        COUNT = COUNT + 1

        P = X

    END IF

NEXT I

IF P > 0 THEN

    PRINT COUNT

    PRINT P

ELSE

    PRINT ‘NO’

END IF

count = 0

p = 0

for i in range(4):

    x = int(input())

    if x % 10 == 0:

        count = count + 1

        p = x

if p > 0:

    print(count)

    print(p)

else:

    print(‘NO’)

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

var p,i,x,count: integer;

begin

    count := 0;

    p := 0;

    for i := 1 to 4 do begin

        read (x);

        if x mod 10 = 0 then

        begin

            count := count+1;

            p := x;

        end

    end;

if p > 0 then begin

    writeln(count);

    writeln(p);

end

else

    writeln('NO')

end.

алг

нач

    цел p, i, x, count

    count := 0

    p := 0

    нц для i от 1 до 4

        ввод x

        если mod(x,10) = 0 то

            count := count + 1

            p := x

        все

    кц

    если p > 0 то

        вывод count

        вывод p

    иначе вывод "NO"

кон

С++

#include <iostream>

using namespace std;

int main(){

    int p, i, x, count;

    count = 0; p = 0;

    for(i=0; i < 4; i = i + 1){

        cin >> x;

        if(x % 10 == 0){

            count = count + 1;

            p = x;

        }

    }

    if(p > 0)

        cout << count << endl << p;

    else

        cout << "NO";

    return 0;

}

 

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе 13, 20, 37, 40.

2. При­ве­ди­те при­мер вход­ных дан­ных, при вводе ко­то­рых про­грам­ма вы­ве­дет вер­ный ответ. Среди вво­ди­мых чисел долж­но быть хотя бы одно, удо­вле­тво­ря­ю­щее усло­вию от­бо­ра. Ука­жи­те этот ответ.

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

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

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


Аналоги к заданию № 18093: 18452 Все

Источник: ЕГЭ — 2019. До­сроч­ная волна. Вариант 1.
Решение · ·

8
Задание 24 № 18452

На об­ра­бот­ку по­сту­па­ет по­сле­до­ва­тель­ность из четырёх не­от­ри­ца­тель­ных целых чисел (не­ко­то­рые числа могут быть оди­на­ко­вы­ми). Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ко­ли­че­ство всех чисел ис­ход­ной по­сле­до­ва­тель­но­сти, ко­то­рые де­лят­ся без остат­ка на 10, и сумму таких чисел. Если в по­сле­до­ва­тель­но­сти нет чисел, ко­то­рые де­лят­ся без остат­ка на 10, то на экран нужно вы­ве­сти «NO». Из­вест­но, что вво­ди­мые числа не пре­вы­ша­ют 1000. Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

 

На­по­ми­на­ние: 0 де­лит­ся на любое на­ту­раль­ное число.

 

 

Бей­сикPython

CONST n=4

count = 0

sum = 0

FOR I = 1 TO n

    INPUT x

    IF x mod 10 = 0 THEN

        count = count + 1

        sum = x

    END IF

NEXT I

IF sum > 0 THEN

    PRINT count

    PRINT sum

ELSE

    PRINT "NO"

END IF

n = 4

count = 0

sum = 0

for i in range(1, n+1):

    x = int(input())

    if x % 10 == 0:

        count = count + 1

        sum = x

if sum > 0:

    print(count)

    print(sum)

else:

    print("NO")

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

const n = 4;

var i, x, sum, count: integer;

begin

    count := 0;

    sum := 0;

    for i := 1 to n do begin

        read(x);

        if x mod 10 = 0 then

        begin

            count := count+1;

            sum := x;

        end

    end;

if sum > 0 then begin

    writeln(count);

    writeln(sum);

end

else

    writeln('NO')

end.

алг

нач

цел n = 4

    цел i, x, sum, count

    count := 0

    sum := 0

    нц для i от 1 до n

        ввод x

        если mod(x,10) = 0 то

            count := count + 1

            sum := x

        все

    кц

    если sum > 0 то

        вывод count

        вывод sum

    иначе вывод "NO"

кон

С++

#include <iostream>

#define n 4

using namespace std;

int main(){

    int i, x, sum, count;

    count = 0;

    sum = 0;

    for(i=1; i <= n; i++){

        cin >> x;

        if(x % 10 == 0){

            count = count + 1;

            sum = x;

        }

    }

    if(sum > 0)

    {

        cout << count << endl;

        cout << sum << endl;

    }

    else

        cout << "NO";

    return 0;

}

 

 

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

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе по­сле­до­ва­тель­но­сти: 20, 25, 40, 45.

2. При­ве­ди­те при­мер по­сле­до­ва­тель­но­сти, в ко­то­рой есть хотя бы одно число, де­ля­ще­е­ся на без остат­ка 10, при вводе ко­то­рой, не­смот­ря на ошиб­ки, про­грам­ма пе­ча­та­ет пра­виль­ный ответ.

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

1) вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2) ука­жи­те, как ис­пра­вить ошиб­ку, т.е. при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

 

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

Об­ра­ти­те вни­ма­ние на то, что тре­бу­ет­ся найти ошиб­ки в име­ю­щей­ся про­грам­ме, а не на­пи­сать свою, воз­мож­но, ис­поль­зу­ю­щую дру­гой ал­го­ритм ре­ше­ния. Ис­прав­ле­ние ошиб­ки долж­но за­тра­ги­вать толь­ко стро­ку, в ко­то­рой на­хо­дит­ся ошиб­ка.


Пройти тестирование по этим заданиям