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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.02.2013, 18:36   #1
YuliyaKramar
Новичок
Джуниор
 
Регистрация: 23.02.2013
Сообщений: 2
По умолчанию Turbo Paskal.Двумерный массив

Задача такова: Даны две матрицы А(3,9) и В(6,6). Вычислить z=c(в квадрате)*(d+e)/(f+1), где с и f – количество положительных элементов матриц А и В, d и е – количество отрицательных элементов в матрицах А и В соответственно. Вычисление количества положительных и отрицательных элементов оформить в виде процедур-функций.
Начало программы я написала(вывод двух массивов и вывод кол-ва отриц. и полож. элементов этих массивов).Осталось только вычислить по формуле.Помогите,пожалуйста,кому не трудно!
Вот начало:
Код:
uses crt;
const m=6; n=9;
type ma2=array[1..m,1..n]of real;
var a:ma2; b:ma2;
{--------------------------------------------------}
procedure gen(var a:ma2; m,n:integer);
var i,j:integer;
begin
 for i:=1 to m do
  for j :=1 to n do a[i,j]:= -25+random(50);
end;
{-------------------------------------------------}
procedure print(name:string; a:ma2; m,n:integer);
var i,j: integer;
begin writeln('Massiv '+name);
 for i:=1 to m do
begin
 for j:=1 to n do  write (a[i,j]:7:2);
writeln;
end;
end;
{--------------------------------------------------------}
Procedure kol(A:ma2);
 Var i,j,kp,ko:byte;
  Begin
   kp:=0; ko:=0;
   For i:=1 to 6 do
    For j:=1 to 9 do
     If A[i,j]<0 then inc(ko) Else If A[i,j]>0 then inc(kp);
     Writeln('kol-vo pol:',kp);
     Writeln('kol-vo otr:',ko);
 End;
begin
clrscr;
gen(a,3,9); print('A',a,3,9); kol(A);
gen(b,6,6); print('B',b,6,6); kol(B);
Readln;
end.

Последний раз редактировалось Stilet; 23.02.2013 в 18:43.
YuliyaKramar вне форума Ответить с цитированием
Старый 23.02.2013, 18:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
uses crt;
const m=6; n=9;
type ma2=array[1..m,1..n]of real;
var a:ma2; b:ma2;c,d,e,f:integer;

procedure foo;
begin
 writeln(c*c*(d+e)/(f+1));
end;
{--------------------------------------------------}
procedure gen(var a:ma2; m,n:integer);
var i,j:integer;
begin
 for i:=1 to m do
  for j :=1 to n do a[i,j]:= -25+random(50);
end;
{-------------------------------------------------}
procedure print(name:string; a:ma2; m,n:integer);
var i,j: integer;
begin writeln('Massiv '+name);
 for i:=1 to m do
begin
 for j:=1 to n do  write (a[i,j]:7:2);
writeln;
end;
end;
{--------------------------------------------------------}
Procedure kol(A:ma2;var mx,mn:integer);
 Var i,j,kp,ko:byte;
  Begin
   mx:=0; mn:=0;
   For i:=1 to 6 do
    For j:=1 to 9 do
     If A[i,j]<0 then inc(mn) Else If A[i,j]>0 then inc(mx);
     Writeln('kol-vo pol:',mx);
     Writeln('kol-vo otr:',mn);
 End;
begin
clrscr;
gen(a,3,9); print('A',a,3,9); kol(A,c,f);
gen(b,6,6); print('B',b,6,6); kol(B,e,d);
foo;
Readln;
end.
Подходит?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.02.2013, 19:27   #3
YuliyaKramar
Новичок
Джуниор
 
Регистрация: 23.02.2013
Сообщений: 2
По умолчанию

да!подходит!всё понятно!спасибо большое!!
YuliyaKramar вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
paskal abc,turbo paskal andrei57 Паскаль, Turbo Pascal, PascalABC.NET 3 08.09.2011 05:33
Free Paskal и Turbo Paskal Polly~Sunbeam Паскаль, Turbo Pascal, PascalABC.NET 7 18.04.2011 16:00
Двумерный массив (Turbo Pascal) DasV Помощь студентам 3 30.04.2010 07:02
Сформировать двумерный массив (Turbo Pascal) 0001 Фриланс 7 19.01.2010 15:09
Paskal Двумерный массив JohnOtto Помощь студентам 1 14.05.2009 20:31