Вариант № EGE_INF_1802
Добавлен 16 декабря 2017 г. в 0:45. Изменён 17 июня 2018 г. в 17:03.
Скачать PDFЗадание
Требовалось написать программу, которая по входному натуральному числу n, не превосходящему 109, определяла и печатала номер позиции первой входящей в него цифры 4, считая слева направо.
Если цифры 4 в числе n нет, необходимо вывести 0.
Приведённая ниже программа содержит ошибки.
-
Копировать
var j, k, n : longint; begin read(n); k := 0; j := 0; while n > 0 do begin if n mod 10 = 4 then j := k; k := k + 1; n := n div 10 end; if j > 0 then write(k - 1) else write(j) end. -
Копировать
#include <iostream> void main() { int n, j, k; std::cin >> n; k = 0; j = 0; while (n > 0) { if (n % 10 == 4) j = k; k++; n /= 10; } if (j > 0) std::cout << k - 1; else std::cout << j; } -
Копировать
Dim n, j, k As Long Input n k = 0 j = 0 While n > 0 If n Mod 10 = 4 Then j = k End If k = k + 1 n = n \ 10 Wend If j > 0 Then Print k - 1 Else Print j End If -
Копировать
n = int(input()) k = 0 j = 0 while n > 0 : if n % 10 == 4 : j = k k += 1 n //= 10 if j > 0 : print(k - 1) else : print(j)
Последовательно выполните следующее.
1) Напишите, что выведет эта программа при вводе числa 1474.
2) Укажите наибольшее трёхзначное значение входной переменной n, при котором, не смотря на ошибки, программа выведет верный ответ, не равный нулю.
3) Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.
Достаточно указать ошибки и способ их исправления для одного языка программирования. Обратите внимание: необходимо исправить приведённую программу, а не написать свою. Требуется заменить только ошибочные строки, но нельзя удалять строки или добавлять новые. За исправления, внесённые в строки, не содержащие ошибок, баллы будут снижаться.
Задания ЕГЭ