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




Каталог заданий
Версия для печати и копирования в MS Word
1
Задание 24 № 7769

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

 

 

БейсикPython

INPUT x

cnt = 0

WHILE x > 0

cnt = cnt + x MOD 2

x = x \ 10

WEND

PRINT cnt

END

x = int(input())

cnt = 0

while x > 0:

    cnt = cnt+x % 2

    x = x // 10

print(cnt)

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

var x,cnt: integer;

begin

readln(x);

cnt := 0;

while x > 0 do

begin

cnt:=cnt + x mod 2;

x := x div 10

end;

writeln(cnt);

end.

алг

нач

цел x, cnt

ввод x

cnt := 0

нц пока x > 0

cnt := cnt+mod(x,2)

x := div(x, 10)

кц

вывод cnt

кон

Си++

#include <iostream>

using namespace std;

int main()

{

int x,cnt;

cin >> x;

cnt = 0;

while (x > 0)

{

cnt = cnt + x%2;

x = x /10;

}

cout « cnt « endl;

}

 

 

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

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

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

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

 

Для каждой ошибки:

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

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

 

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


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