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

Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ет­ся на­ту­раль­ное число A, не пре­вос­хо­дя­щее 109, и вы­во­дит­ся ко­ли­че­ство цифр в де­ся­тич­ной за­пи­си этого числа. Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но. (Ниже для Ва­ше­го удоб­ства про­грам­ма пред­став­ле­на на четырёх язы­ках про­грам­ми­ро­ва­ния.)

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

DIM A AS LONG

INPUT A

cnt = 0

WHILE A > 1

  cnt = cnt + A MOD 10

  A = A \ 10

WEND

PRINT cnt

END

var A: longint;

  cnt: integer;

begin

  readln(A);

  cnt := 0;

  while A > 1 do

  begin

    cnt:=cnt + A mod 10;

    A := A div 10;

  end;

  writeln(cnt);

end.

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

#include <iostream>

using namespace std;

int main()

{

  long int A;

  int cnt;

  cin >> A;

  cnt = 0;

  while (A > 1)

  {

    cnt = cnt + A%10;

    A = A /10;

  }

  cout « cnt « endl;

}

алг

нач

  цел A, cnt

  ввод A

  cnt := 0

  нц пока A > 1

    cnt := cnt + mod(A, 10)

    A := div(A, 10)

  кц

  вывод cnt

кон

Python

A = int(input())

cnt = 0

while A > 1:

    cnt += A % 10

    A //= 10

print(cnt)

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

1.  На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе числа 111.

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

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

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

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