12,7
Объяснение:
z = 1 i = 0 x = 27 x / 2 = 13,5
z = 1 i = 0
z = (1 + 13,5) / 2 = 7,25
i = 0 + 1 = 1
1 < 4 (да) - цикл продолжается
z = 7,25 i = 1
z = (7,25 + 13,5) / 2 = 10,375
i = 1 + 1 = 2
2 < 4 (да) - цикл продолжается
z = 10,375 i = 2
z = (10,375 + 13,5) / 2 = 11,9375
i = 2 + 1 = 3
3 < 4 (да) - цикл продолжается
z = 11,9375 i = 3
z = (11,9375 + 13,5) / 2 = 12,71875
i = 3 + 1 = 4
4 < 4 (нет) - цикл прекращается
z = 12,71875 ≈ 12,7
Поделитесь своими знаниями, ответьте на вопрос:
с информатикой 1.Сколько раз будет выполняться цикл? For i: = 1 to 7 do s: = s+1 2.Сколько раз будет выполняться цикл? For i: = -3 to 3 do s: = s+1 3.Сколько раз будет выполняться цикл? For i: = 1 to 7 do s: = s+1
На строке 9 "if x>=-7.5 and x<2 then y:=(a*sqrt(abs(x+6))); " в том месте, где выделено жирным, компилятор думает, что необходимо произвести побитовое умножение числа с плавающей точкой типа real -7.5 и целого числа x. Т.к. побитовое умножение применимо только к целым числам, компилятор пытается преобразовать -7.5 к целому числу, т.е. к integer, и у него это не получается, о чем он Вам и говорит.
Чтобы он не думал, что Вы собираетесь производить побитовое умножение (ведь Вы хотите произвести логическую операцию между результатами двух сравнений), нужно занести в скобки выражения x>=-7.5 и x<2, чтобы получилась такая строка: "if (x>=-7.5) and (x<2) then y:=(a*sqrt(abs(x+6))); "