процедуры паскаль

mono
Сообщения: 7
Зарегистрирован: 06 апр 2009, 21:14

Для матрицы А (4 строки, 5 столбцов) вычислить выражение Y=M(1)M(5)+M(2)M(4)+M(5)M(1), где M(k) – значение наибольшего элемента в K-ом столбце этой матрицы. Для поиска наибольшего элемента в произвольном столбце матрицы использовать процедуру.

Код: Выделить всё

program lab_13;
uses crt;
type matr=array[1..4,1..5] of integer;
procedure EnterMatr(x,y:integer; var M:matr);
var i,j:integer;
begin
     writeln ('vvedite elementi matrici');
     for i:=1 to x do
     for j:=1 to y do begin
     write ('M[',i,',',j,']=');
     readln (M[i,j]);
     end;
end;
procedure MaxVSt(var j:integer; var A:matr; var maxs:integer);
var i:integer;
begin
     maxs:=a[1,j];
     for i:=2 to 4 do
     if a[i,j]>maxs then maxs:=a[i,j];
end;
дальше никак :confused: помогите, пожалуйста
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

дальше так:

Код: Выделить всё

var
  A:matr; Y:integer;
begin
  EnterMatr(4,5,A);
  Y:=MaxVSt(1)*MaxVSt(5)+MaxVSt(2)*MaxVSt(4)+MaxVSt(5)*MaxVSt(1);
  Writeln('Y=',Y);
end.
mono
Сообщения: 7
Зарегистрирован: 06 апр 2009, 21:14

Y:=MaxVSt(1)*MaxVSt(5)+MaxVSt(2)*MaxVSt(4)+MaxVSt(5)*MaxVSt(1);
пишет, что в этой строке ошибка :rolleyes:
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

Ой, это ж у Вас процедура а не функция!

Код: Выделить всё

var
  A:matr; i:integer:
  m:array[1..5] of integer;
begin
  EnterMatr(4,5,A);
  for i:=1 to 5 do MaxVSt(i,A,m[i]);
  Writeln('Y=',M[1]*[5]+M[2]*M[4]+M[5]*M[1]);
end.
mono
Сообщения: 7
Зарегистрирован: 06 апр 2009, 21:14

Спасибо огромное!
Omiira
Сообщения: 5
Зарегистрирован: 03 май 2009, 14:53

пмогите, не знаю куда обращаться с процедурищами...
7. Если наибольший элемент матрицы А находиться выше главной диагонали, найти сумму элементов матрицы, лежащих ниже главной диагонали.

10.Если разность максимального и минимального элемента матрицы А превышает заданную величину Р, заменить в матрице А все отрицательные элементы нулями, а положительные еденицами.

стр. 46
7. Дана матрица А из n строк и n столбцов. Найти среднее арифметическое элементов матрицы и сумму элементов тех строк матрицы, в которых отрицателен элемент главной диагонали.


стр. 50
7. Если наибольший элемент матрицы А находится выше главной диагонали, найти сумму элементов матрицы, лежащих ниже главных диагоналей.


1. На заданном отрезке АВ(А = 0,55; В = 1) разбитом на n одинаковых систем n=10, где х меняется по закону арифметической прогрессии. вычислите функцию y заданной по формуле и напечатать цикл ее значений.
sqrt ( 1 / 5 + e x p (1 / 5 * ln ( e x p ( X ) ) ) / a b s ( l n ( s q r ( X ) ) - 1 , 3 )
ylika
Сообщения: 6
Зарегистрирован: 17 окт 2009, 20:19

Помогите позязя!!!!! злобный препод дал задания завтра сдавать(((((((
1. Даны действительные числа А1, ..., Аn, Р, натуральное число k (A1<=...<=An, k<=n). Удалить из А1, ..., Аn элемент с номером k (т.е. Ak) и вставить элемент. равный Р, так, чтобы не нарушилась упорядоченность .
2. Даны действительные числа С1, ..., Сp, D1, ..., Dq. (С1<=C2<=...<=Сp, D1<=D2<=...Dq). Ввести единицу упорядоченности, получив F1, F2, ..., Fp+q, что F1<=F2<=...<=Fp+q. Число сравнений не должно превосходить p+q.
3. Даны натуральное число n, целые числа А1, ..., Аn. Найти наибольшее значение, встречающееся в последовательности А1, ..., Аn, после выбрасывания одного из членов со значением max(A1, ..., An).
Очень прошу!!! Заранее спасибо!!!
BHy4ok
Сообщения: 237
Зарегистрирован: 01 май 2007, 09:03
Откуда: г.Находка
Контактная информация:

2 ylika
Теперь вы в каждой теме будете флудить вместо того чтобы создать отдельную тему ?
< L3X. (ICQ: 8721378, Mail - l3x@list.ru)
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Устное предупреждение ylika за дублирование поста в разных темах
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
x2088
Сообщения: 2
Зарегистрирован: 22 янв 2010, 16:28

Есть динамический массив AU ^ [AI2, AI1], в одной процедуре он создатся - всё нормально, вроде, как теперь вывести его значения на экран в другой процедуре?

AI1P, {размер по горизонтале}
AI2P, {размер по вертикале}
AIP, {число ячеек в массиве}

PROCEDURE VD (VAR A : ARRAY OF INTEGER; AI1P, AI2P, AIP: INTEGER);

...

PROCEDURE VZM (VAR AU : ADM; AI1P, AI2P: INTEGER);

...

Так правильно будет?
Ответить