IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Задачи на использование модулей, как решить?
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


Помогите пожалуйста в последний раз... осталась 1 пара, на которой и нужно предъявить эти программы, а у самого у меня ничего не получилось.
Я вас больше ни о чем не буду просить... просто не хочется сразу вылетать из института...
Вот, собственно сами задачи:
1) Написать функцию для вычисления величины у(х) = sin(x) + cos^2(x) + 1
и составить таблицу z(x) = y(x) + 3*y^2(x) + 4,5 , где х изменяется от -п/2 до п/2 с шагом п/8.

2) Даны длины а, b, с сторон некоторого треугольника. Найти медианы треугольника, сторонами которого являются медианы исходного треугольника.
Определение медиан оформить в виде процедуры.
длина медианы, проведенной к стороне а = 0,5 [корень квадратный открывается] 2b^2 +2c^2 - a^2 [корень квадратный закрывается].

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

Заренее спасибо.

Добавлено (9.12.04 16:09):
Чуть не забыл, задачи надо сделать с интерфейсом, и чтоб они состояли из нескольких(двух) модулей, а как работать с модулями я вообще не знаю, т. к. вообще только начал учиться.
Еще раз спасибо всем тем, кто ответит!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Wert
Цитата
1. Заголовок или название темы должно быть информативным и понятным другим посетителям форума

Кроме того, задачи "с интерфейсом" за одну пару не пишутся...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


Простите за заголовок.
Может я не так объяснил, я имел ввиду, что не в консоли, а в окне,и причем, чтобы было больше одного модуля(вроде так).
Мне вобщем-то нужно не там написать, а принести уже готовую.
Или если ты имел ввиду, что с этими задачами придется сидеть не один час, то я понимаю, и не обижусь, если ты не станешь их решать.
но если можете помогите пжлста, я буду очень благодарен

Сообщение отредактировано: Wert -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
я имел ввиду, что не в консоли, а в окне

Ты хочешь сказать, тебе нужно их делать под Windows? Тогда я перенесу тему в Дельфи...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


В общем да, под Windows. Как скажешь, переноси

Добавлено (9.12.04 16:50):
ну помогите, ну хоть кто-нибудь, умираю...

Добавлено (10.12.04 21:29):
Ну пожулуйста, не дайте мне погибнуть, если это и действительно так сложно, хотя бы подскажите как их решать... sad.gif sad.gif sad.gif sad.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Wert
Вот тебе каркас первой программы, а интерфейс делай сам:

Модуль myfunc.pas:
Код

Unit myfunc;
interface

function z(x: double): double;

implementation
function y(x: double): double;
 begin
   y := sin(x) + sqr(cos(x)) + 1
 end;

function z(x: double): double;
 begin
   z := y(x) + 3*sqr(y(x)) + 4.5
 end;
end.


Основная программа
Код

Uses myFunc;
const
 start = -pi / 2;
 finish = pi / 2;

var
 x, zet: double;
begin
 x := start;
 while x <= finish do
   begin
     zet := z(x);
     { здесь - вывод значений в таблицу... }
     x := x + pi/8
   end;
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


Спасибо тебе огромное, постораюсь сам доделать...
Еще раз ОГРОМНОЕ СПАСИБО! :molitva:
А вторую не знаешь как делать? :p2:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Wert
Аналогично...

Модуль mediana.pas:
Код

Unit mediana;

Interface
Function medianaLen(x, y, z: Double): Double;

Implementation
{ первой в списке параметров должна стоять сторона,
 К КОТОРОЙ проводится медиана }
Function medianaLen(x, y, z: Double): Double;
 Begin
   medianaLen := 0.5*sqrt(2*sqr(y) + 2*sqr(z) - sqr(x))
 End;

End.


Основная программа:
Код

Uses mediana;
var
 { a, b, c - длины сторон треугольника }
 a, b, c: double;

 { ma, mb, mc - медианы, проведенные к сторонам a, b, c соответственно }
 ma, mb, mc: double;
begin
 {ввод значений a, b, c}
 ma := medianaLen(a, b, c);
 mb := medianaLen(b, a, c);
 mc := medianaLen(c, a, b);
 {вывод значений ma, mb, mc }
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


ОГРОМНОЕ ТЕБЕ СПАСИБО, volvo ! ! !
Думаю тебе обязательно должны повысить рейтинг!
Незнаю даже чтобы я делал, если бы не ты! Спасибо!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Знаток
****

Группа: Пользователи
Сообщений: 408
Пол: Мужской

Репутация: -  3  +


Делал бы сам ;) в силу своих умений и знаний


--------------------
- Где я?
- Во тьме.
- В какой тьме?
- Во тьме твоего мозга.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






Просто знаний катастрофически не хватает...

Вобщем попробовал сделать программы с формой, не получилось sad.gif
Подскажите, если знаете что нужно доделать/переделать?

Код

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, Grids, mediana;

type
 TForm1 = class(TForm)
   StringGrid1: TStringGrid;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);

 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
a, b, c: double;
ma, mb, mc: double;
begin
ma := medianaLen(a, b, c);
mb := medianaLen(b, a, c);
mc := medianaLen(c, a, b);
StringGrid1.Cells[0]:= floattostr(ma);
StringGrid1.Cells[1]:= floattostr(mb);
StringGrid1.Cells[2]:= floattostr(mc);
end;

end.




unit mediana;

interface
Function medianaLen (x, y, z: double): Double;
implementation
Function medianaLen(x, y, z: Double): Double;
Begin
  medianaLen := 0.5*sqrt(2*sqr(y) + 2*sqr(z) - sqr(x))
End;
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


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

Код

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, myfunc, StdCtrls, Grids;

type
 TForm1 = class(TForm)
   StringGrid1: TStringGrid;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;
const
start = -pi / 2;
finish = pi / 2;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
x, zet: double;
i:byte;
begin
x := start;
while x <= finish do
  begin
    zet := z(x);
    StringGrid1.Cells[i,0]:= floattostr(x);
    i:= i+1;
    x := x + pi/8;

end;
end;
end.


Unit myfunc;
interface

function z(x: double): double;

implementation
function y(x: double): double;
begin
  y := sin(x) + sqr(cos(x)) + 1
end;

function z(x: double): double;
begin
  z := y(x) + 3*sqr(y(x)) + 4.5
end;
end.


Пожалуйста, помогите кто может! :molitva: :p2:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Гость






Wert
Смотри почту... rolleyes.gif
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 25.04.2024 20:33
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name