Показать сообщение отдельно
Старый 28.12.2009, 22:20   #1 (permalink)
Krictina
Новичок
 
Регистрация: 28.12.2009
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Unhappy Помогите, не получается задача Паскаль.

определить значение функции у. необходимо использовать не менее одной подпрограммы-функции и одной подпрограммы-процедуры. у меня чтото неполучается (мозги кипят запуталась).
дан массив А[1..k,1..k] и переменная В.

м3-кол-во полож.эл.массива; м6-кол-во диагональн.эл.матрицы, равных В; р1-сумма эл.матрицы; р2-сумма положит.эл.матрицы.
условие у=р1-р2 если м3 не равно 0, иначе м3=0 и у=р1/м6.

Program kontr2;
uses crt;
const
k=100;
type
mas=array[1..k,1..k] of integer;
var
A:mas;
max,M3,M6,B,i,j,x:integer;
y:real;
Procedure welcome;
begin
clrscr;
gotoxy(1,10);
writeln;
readkey;
end;
Procedure matrix(x:integer);
var i,j:integer;
begin
write('Заполните матрицу:');
for i:=1 to x do
for j:=1 to x do
begin
gotoxy(10+(j*3),2+i);
read(A[i,j]);
end;
begin
if A[I,j]>=0 then M3:=M3+1
writeln('кол-во полож.эл.массива(M3)= ',M3);
end;
begin
M6:=0;
for i:=1 to t do
if A[i,i]=B then M6:=M6+1;
writeln('кол-во диаг..эл. матрицы, равных задан.числу В (M6) = ',M6);
end;

BEGINbegin
if a[I,j]>0 then P1:=P1+a[I,j];
if a[I,j]>=0 then P2:=P2+a[I,j];
writeln(‘сумма эл.матрицы’);
writeln(‘сумма полож.эл.матрицы’);
end;
if M3<>0 then y=P1-P2;
writeln (‘ ‘);
end;
if M3=0 then y=P1/M6;
writeln (‘ ‘);
readkey;
end.
BEGIN
welcome;
clrscr;.........дальше все аут

если при F9 выдает нет ошибок при запуске выдает Error 200: division by zero. типо на ноль делим???

ПОМОГИТЕ

Последний раз редактировалось Krictina; 28.12.2009 в 23:06
Krictina вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070