Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Задача на циклы

Автор: Juhn 13.03.2008 20:45

Помогите пожалуйста написать программу, завтра контрольная, и там вот будет эта задача.
Условие задачи: Вывести на экран таблицу значений аргумента и функции y= x+2(под корнем) -2. X меняется от -5 до 15 с шагом +1. Тоесть при включении программы сразу должны выдаваться все ответы в столбик: х=-5 y=.... x=-4 y=....
Написать прогу нужно используя цикл for..to..do , while..do или repeat...until
P.S если кто - то не понял под корнем только x+2. -2 уже без корня.


Автор: Айра 13.03.2008 22:47

А сам что-нибудь пробовал? Какие мысли есть?

Автор: volvo 13.03.2008 23:31

Juhn,
поиск с ключевым словом табулиров*, находишь программу и подставляешь свою функцию...

Автор: Гость 14.03.2008 1:45


uses
crt;
var
i:integer;
function func(X:integer):real;
var
y:extended;
begin
y:=sqrt(abs(x)+2)-2;
func:=y;
end;
begin
writeln('Табулирование функций');
writeln(' ------------------');
for i:=-5 to 15 do
begin
writeln('| x= ',i:2,' | y=',func(i):6:2,'|');
end;
writeln('-------------------');
readln;
end.


Держи свою задачу.

Автор: volvo 14.03.2008 1:47

Это не та функция, и результаты программа будет выдавать неправильные. Abs никто делать не просил, достаточно просто проверять, что подкоренное выражение не меньше 0...

Автор: Айра 14.03.2008 2:05

Вроде так:

var y: real;
x: integer;
begin
x:=-5;
while x<=15 do
begin
if x<-2 then writeln('x=',x:2,' y несуществует')
else
begin
y:=sqrt(x+2)-2;
writeln('x=',x:2,' y=',y:5:2,'');
end;
inc(x);
end;
end.