Автор Тема: народ помогите с паскалем  (Прочитано 2445 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sanek_2011

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
народ помогите с паскалем
« : 26 Июня 2011, 16:52:25 »
народ помогите пожалуйста надо закончить 2 лабортаорки


в общем задание вычислить  на ЭВМ значение функции. Организовать вывод значения аргумента  и вычислить значения функции:

F={sin(2x)(2П)}   x≤0
                         0≤x≤1
                         x≥1;

составить линейную программу

Y= e ^x-e^-x
_______
Ln(x+y)^2
« Последнее редактирование: 26 Июня 2011, 17:03:45 от sanek_2011 »

Оффлайн berkut_174

  • Постоялец
  • ***
  • Сообщений: 135
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #1 : 26 Июня 2011, 18:16:50 »
Напишите нормально функцию (первую), тогда попробую помочь.
Сноси Винду — переходи на Линукс :-)

Оффлайн sanek_2011

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #2 : 26 Июня 2011, 18:35:44 »
Напишите нормально функцию (первую), тогда попробую помочь.
а что в ней не так??

Оффлайн berkut_174

  • Постоялец
  • ***
  • Сообщений: 135
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #3 : 26 Июня 2011, 18:48:16 »
x≤0, 0≤x≤1, x≥1 - таких x нет!
Сноси Винду — переходи на Линукс :-)

Оффлайн sanek_2011

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #4 : 26 Июня 2011, 18:58:20 »
x≤0, 0≤x≤1, x≥1 - таких x нет!
f={x, при x≤0
                 sin(2x)(2П),при 0≤x≤1
                  1-x, при x≥1


в первом посте не могу исправить((

Оффлайн berkut_174

  • Постоялец
  • ***
  • Сообщений: 135
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #5 : 26 Июня 2011, 19:26:26 »
program lab;
const pi = 3.14;
var x,y : real;
begin
write ('vvedite x: ');
readln (x);
if x<=0 then y:=x;
if (x>=0) and (x<=1) then y:=(sin(2*x))*2*pi;
if x>=1 then y:=1-x;
writeln ('pri x =',x:7:2, ' znachenie funkcii ravno',y:7:2);
readln;
end.

Типа того...
Сноси Винду — переходи на Линукс :-)

Оффлайн sanek_2011

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #6 : 26 Июня 2011, 19:28:51 »
program lab;
const pi = 3.14;
var x,y : real;
begin
write ('vvedite x: ');
readln (x);
if x<=0 then y:=x;
if (x>=0) and (x<=1) then y:=(sin(2*x))*2*pi;
if x>=1 then y:=1-x;
writeln ('pri x =',x:7:2, ' znachenie funkcii ravno',y:7:2);
readln;
end.

Типа того...
спасибо большое

Оффлайн berkut_174

  • Постоялец
  • ***
  • Сообщений: 135
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #7 : 26 Июня 2011, 19:35:44 »
Вторая по аналогии...
Сноси Винду — переходи на Линукс :-)

Оффлайн Selyd

  • Старожил
  • ****
  • Сообщений: 408
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #8 : 27 Июня 2011, 10:32:33 »
Что-то с условием задачи.
При х=1 функция имеет два значения.
Если это правда, то надо добавить проверку
if x=1 then writeln ('pri x =',x:7:2, ' znachenie funkcii ravno',(sin(2*x))*2*pi:7:2);
if x=1 then writeln ('pri x =',x:7:2, ' znachenie funkcii ravno',1-x:7:2);
Или оформить печать иначе по своему усмотрению.
Ребята, в алгоритмах ловите блох. Они там всегда есть.
Здесь дающий задание, наверное, не подозревал о нюансах.
Удачи.

Оффлайн berkut_174

  • Постоялец
  • ***
  • Сообщений: 135
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #9 : 27 Июня 2011, 11:33:04 »
Ага, точно :) Ещё и при x=0 два варианта!
Должно быть примерно так: x<0, 0≤x≤1, x>1.
Ну или другие варианты!
Сноси Винду — переходи на Линукс :-)

Оффлайн Selyd

  • Старожил
  • ****
  • Сообщений: 408
    • Просмотр профиля
Re: народ помогите с паскалем
« Ответ #10 : 27 Июня 2011, 11:46:34 »
При х=0 функция склеивается.