Технический форум

Технический форум (http://www.tehnari.ru/)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/f43/)
-   -   Помогите, пожалуйста, записать математические выражения в Паскале (http://www.tehnari.ru/f43/t63411/)

Гульназ.М. 01.02.2012 16:06

Помогите, пожалуйста, записать математические выражения в Паскале
 
1. y=sqrt(x+3)+sqrt(x-1) тоесть под корнем эти два выражения..
2. y=sqrt(x-a)+1/x+c
3. y=ln(arctg(ln(x)/x^2))

Vladimir_S 01.02.2012 16:29

Цитата:

Сообщение от Гульназ.М. (Сообщение 665676)
1. y=sqrt(x+3)+sqrt(x-1) тоесть под корнем эти два выражения..
2. y=sqrt(x-a)+1/x+c
3. y=ln(arctg(ln(x)/x^2))

Так почти записаны. Осталось только заменить знаки равенств ("=") знаками присваивания (":="), "x^2" выражением sqr(x), "arctg" на "arctan" и в конце каждой строки поставить разделитель ";". Например, последнее выражение запишется так:
y:=ln(arctan(ln(x)/sqr(x)));
Кроме того, на будущее:
1. Не дублируйте сообщения и темы - у нас это наказуемо.
2. Не цепляйтесь к чужим темам - создавайте свои. Сейчас я это сделал за Вас.

Гульназ.М. 03.02.2012 13:56

спасибо большое, и извиняюсь..я просто впервые в форуме. а вы не сможете мне программу для каждого из этих выражений составить? у меня получилось только не хватает проверка условий и из за этого запуталась полностью

Гульназ.М. 03.02.2012 14:01

y:=exp(1/4*ln(x+3))+exp(1/4*ln(x-1));
y:= sqrt(x-a)+(1/(x+c));
y:= ln(arctan(ln(x/sqr(x))));

вот они.

Vladimir_S 03.02.2012 15:25

Цитата:

Сообщение от Гульназ.М. (Сообщение 666977)
y:=exp(1/4*ln(x+3))+exp(1/4*ln(x-1));

О, Боже - это-то зачем?!! Во-первых, это соответствует извлечению корней не второй, а четвертой степени (второй будет так:
y:=exp(1/2*ln(x+3))+exp(1/2*ln(x-1));), а во-вторых - оператор Sqrt - это нормальный паскалевский оператор извлечения квадратного корня, и переходить к логарифмам-экспонентам тут вовсе ни к чему! Всё, что надо - это записать
y:=sqrt(x+3)+sqrt(x-1);
Или там какое-то другое выражение? Что значит "под корнем эти два выражения"?
Еще вопрос - почему во второй формуле Вы берете х+с в скобки? Как на самом деле надо
так: 1/х + с
или так: 1/(х+с) ?
Уточните, пожалуйста.
А программа пишется так:
Код:

Var
 x,y:real;
Begin
 write('x= ');
 readln(x);
 y:= {здесь Вы вписываете одну из трёх формул}
 writeln('y= ',y:0:8);
 readln
End.


Гульназ.М. 03.02.2012 15:49

y:=exp(1/4*ln(x+3))+exp(1/4*ln(x-1)); - тут в первом exp(1/4*ln(x+3)) из под корня степень есть-4,а во втором из под корня 6.я еще не правильно написала.. тоесть со степенями эти корни.. не знаю как объяснить.не разбираюсь.

1/(х+с) - здесь мне так написал программсит знакомый один, я не знаю точно..

Гульназ.М. 03.02.2012 15:54

y:=exp(1/4*ln(x+3))+exp(1/4*ln(x-1)); - в первом exp(1/4*ln(x+3)) из под корня степень есть- это 4,а во втором из под корня 6.я еще не правильно написала.. тоесть со степенями эти корни.. еще так в лекции написано было в примерах..

1/(х+с)-это не знаю, не я писала

а вот на счет программы там какая то проверка условия должна быть, говорили что за проверка

Vladimir_S 03.02.2012 15:54

М-да, не очень понял... А у Вас есть текст исходного задания? Может быть, сфотографируете и выложите? Тогда, думаю, разберемся.

Гульназ.М. 03.02.2012 15:59

ну вот я сделала программы, но не работают они, препод вовсе сказал что нужна прверка условий и не принял работы мои...(:tehnari_ru_325:
program zadanie_1;
var
x,a,c: integer;
y: real;
begin
write('Vvedite X - ');
readln(x);
write('Vvedite A - ');
readln(a);
write('Vvedite C - ');
readln(c);
y:= sqrt(x-a)+(1/(x+c));
Writeln('Y = ',y:6:2);
Readln;
end.

program zadanie_2;
var
x,y: real;
begin
write('Vvedite X - '); {x<1}
readln(x);
y:= ln(arctan(ln(x/sqr(x))));
Writeln('Y = ',y:10:5);
Readln;
end.

program zadanie_3;
var
x: integer;
y: real;
begin
write('Vvedite X - ');
readln(x);
y:= exp(1/4*ln(x+3))+exp(1/4*ln(x-1));
Writeln('Y = ',y:6:2);
Readln;
end.

Гульназ.М. 03.02.2012 16:02

ну могу в принципе, сейчас


Часовой пояс GMT +4, время: 14:01.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.