Predator32
22.03.2021 20:41

1) дано целое положительное число n, не превосходящее 1000. необходимо определить, является ли это число степенью числа 7. то есть требуется определить, существует ли такое целое число к, что 7k =n, и вывести это число либо сообщение, что такого числа не существует. для решения этой ученик написал программу, но, к сожалению, его программа оказалась неверной. var n, k: integer; begin read(n); k : = 0; while n mod 7 = 0 do begin k : = k + n div 7; n : = n div 7; end; if n < = 7 then writeln(k) else writeln('he существует') end. последовательно выполните следующее. 1. напишите, что выведет эта программа при вводе числа 49. 2. пример числа, при вводе которого программа напечатает то, что требуется. 3. найдите в программе все ошибки (их может быть одна или несколько). для каждой ошибки выпишите строку, в которой она допущена, и эту же строку в исправленном виде.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
darya21072005
06.10.2020 13:45
1) 8
2) 7 выведет 1
3)
11 строка, поменять на k := k + 1;
14 строка заменить на if n = 1 then

Рабочий код

var
    n, k: integer;

begin
    read(n);
    k := 0;
    while n mod 7 = 0 do
    begin
        k := k + 1;
        n := n div 7;
    end;
    if n = 1 then
        writeln(k)
    else
        writeln('He существует')
end.

Правильное решение данной задачи
const
    divider = 7;

var
    n: integer;
    k: real;

begin
    read(n);
    k := ln(n) / ln(divider);
    if round(k) = k then
        writeln(round(k))
    else
        writeln('He существует');
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота