Вопрос по информатике:
Почему программа на паскале не подставляет начальное значение x (x:=0), а подставляет сразу x+h? Т.е. в выводе ответов первым должно идти значение -1, а идет совсем другое. И как в таком случае реализовать это?
Код программы:
program program3;
uses crt;
var x, y, c, h:real;
begin
clrscr;
x:=0;
h:=0.4;
repeat x:=x+h;
y:=power(x,1/3)-1;
writeln (y);
until x>=4;
end.
Трудности с пониманием предмета? Готовишься к экзаменам, ОГЭ или ЕГЭ?
Воспользуйся формой подбора репетитора и занимайся онлайн. Пробный урок - бесплатно!
- 13.07.2017 22:33
- Информатика
- remove_red_eye 12298
- thumb_up 46
Ответы и объяснения 2
Цикл начинается с того, что сразу же присваивает х значение 0.4, и после этого для у производятся вычисление исходя из х = 0.4. Чтобы х был изначально равен 0, нужно поменять местами строки в цикле, выглядит это так:
var
x, y, h: real;
begin
h := 0.4;
repeat
y := power(x, 1 / 3) - 1;
x := x + h;
writeln(y);
until x >= 4;
end.
Здесь значение переменной у сначала будет равно результату вычисления, при котором х еще равен 0.
Строку x:=0; можно убрать, так как при объявлении переменной (в разделе var) ей присваивается 0 по умолчанию.
А также, есть лишняя переменная с.
- 15.07.2017 00:33
- thumb_up 7
Нужно поменять местами строки:
x:=x+h;
y:=power(x,1/3)-1;
Готовая программа выглядит так:
program program3;
uses crt;
var
x, y, c, h:real;
begin
clrscr;
x:=0;
h:=0.4;
repeat
y:=power(x,1/3)-1;
x:=x+h;
writeln (y);
until x>=4;
end.
- 15.07.2017 05:02
- thumb_up 22
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.