Информатика (Исправление ошибок в программе)

Дано целое положительное число N, не превосходящее 1000. Необходимо определить, является ли это число степенью числа 3. То есть требуется определить, существует ли такое целое число K, что 3K = N, и вывести это число либо сообщение, что такого числа не существует.

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

 


БейсикPython
DIM N, K AS INTEGER
  INPUT N
 K = 0
 WHILE K MOD 3 = 0
    K = K + 1
    N = N  3
 WEND
 IF N > 0 THEN
    PRINT K
 ELSE
    PRINT "Не существует"
 END IF
 END

n = int(input())

k = 0

while k%3 == 0:

    k = k + 1

    n = n // 3

if n > 0:

    print(k)

else:

    print("Не существует")

 

 

ПаскальАлгоритмический язык
var n, k: integer;
begin
    read(n);
    k := 0;
    while k mod 3 = 0 do begin
        k := k + 1;
        n := n div 3;
    end;
    if n > 0 then
        writeln(k)
    else
        writeln('Не существует')
end.
алг
нач
    цел n, k
    ввод n
    k := 0
    нц пока mod(k, 3)=0
        k := k + 1
        n := div(n,3)
    кц
    если n > 0
        то вывод k
        иначе вывод "Не существует"
    все
кон
Си++
#include 
using namespacestd;
int main(){
    int n, k;
    cin >> n;
    k = 0;
    while (k%3 == 0) {
        k = k + 1;
        n = n / 3;
    }
    if (n > 0)
        cout « k « endl;
    else
        cout << "Не существует";
    return 0;
}

 

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

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

2. Приведите пример числа, при вводе которого приведённая программа напечатает то, что требуется.

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

Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.

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

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

 

 
 

Регистрация


Зарегистрироваться через VK

Личный кабинет

Регистрация
Войти через VK