Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.09.2008, 14:20   #1
Jenny104
 
Регистрация: 18.09.2008
Сообщений: 4
По умолчанию Паскаль

Ребята, помогите пожалуйста с заданием
Задание.doc
Jenny104 вне форума Ответить с цитированием
Старый 18.09.2008, 18:08   #2
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Код:
uses crt;
const p=5;
type mas=array[1..p]of real; //объявляемы типы массив и матрица для работы с процедурамим
     matr=array[1..p]of mas;
var a,b:mas; //фактические параметры
    c:matr;
procedure VvodMas(var x:mas);//создание и ввод массива
var i:integer;
begin
for i:=1 to p do
   begin
     x[i]:=random(10)+random-4;
     write(x[i]:6:2);
   end;
writeln;
end;
function ElemMatr(x,y:real):real;//вычисление элементов матрицы по условию
begin
if x*y>0 then ElemMatr:=x/(1+y)
else if x*y<0 then ElemMatr:=y/(1+x);
end;
procedure Matrix(x,y:mas;var z:matr); //создание и вывод матрицы
var i,j:integer;
begin
for i:=1 to p do
   begin
     for j:=1 to p do
       begin
        z[i,j]:=ElemMatr(x[i],y[j]);
        write(z[i,j]:6:2);
       end;
     writeln;
   end;
end;
begin
clrscr;
Writeln('Massiv A:');
VvodMas(a);
Writeln('Massiv B:');
VvodMas(b);
Writeln('Matrica:');
Matrix(a,b,c);
readln
end.
puporev вне форума Ответить с цитированием
Старый 18.09.2008, 18:52   #3
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Костя жжот :-)

Код:
uses crt;
var
  p: integer;
  a,b,m: ^real;
  
function NewElement(x,y: real): real;
begin
  if x*y>0 then result:=x/(1+y)
  else          result:=y/(1+x);
end;

procedure CreateMatrix;
var
  i: integer;
begin
  for i:=1 to p*p do
  begin
    m^:=NewElement(a^,b^);
    m:=m+1;
    if i mod p=0 then
    begin
      a:=a-p;
      b:=b+1;
    end;
    a:=a+1;
  end;
  m:=m-p*p;
  a:=a-p;
  b:=b-p;
end;

var
  i: integer;
begin
  cls;
  randomize;
  write('Vvedite razmer vektora '); readln(p);
  getmem(a,sizeof(real)*p);
  getmem(b,sizeof(real)*p);
  getmem(m,sizeof(real)*p*p);
  for i:=1 to p do
  begin
    a^:=-100+random(201); b^:=-100+random(201);
    writeln(a^,'   ', b^);
    a:=a+1; b:=b+1;
  end;
  a:=a-p; b:=b-p;
  CreateMatrix;
  for i:=0 to p*p-1 do
  begin
    if i mod p=0 then writeln;
    write(m^:5:2,' ');
    m:=m+1;
  end;
  FreeMem(a);
  FreeMem(b);
  FreeMem(m);
  readln();
end.
Писал на ABCPascal.
Kostia вне форума Ответить с цитированием
Старый 19.09.2008, 07:06   #4
Jenny104
 
Регистрация: 18.09.2008
Сообщений: 4
По умолчанию

Спасибо огромное за помощь.... мир не без добрых людей....
Jenny104 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль... Need Help Chih Помощь студентам 4 30.05.2008 16:37
Паскаль. LLIypLLIyH Помощь студентам 2 30.05.2008 08:51
Паскаль Jondeer Помощь студентам 4 27.10.2007 18:54