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

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

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


Гость






Вот такая задача... мож есть примеры или идеи у кого.. алгоритымы? .. Буду очень признателен за помощь:

Упорядочить элементы строк матрицы за падением их значений методом обмена.
Найти f(a)-среднее арифмитическое значение элементов в кажом столпце матрицы
F(a)- среднее геометрическое значение
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






ПО условию матрица 5 на 5
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

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

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


Сортировку оформить в виде процедуры а вычисление средних значений в виде функций...


Хелп плз smile.gif Завтра сдавать....
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

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

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


Код
for k:=1 to n do
          for i:=2 to n do
          for j:=1
          if a[k,j]<a[k,j-1] then
            begin
                 t:=a[k,j]; a[k,j]:=a[k,j-1]
                 a[k,j-1]:=t
                             end;



Попробывал переделать метод сортировки обмена(пузырьковый) одномерного массива для матрицы...


Вопрос в том.. правилен ли метод сортировки
и как правильно оформить процедуру среднего арифметического и геометрического значений чисел столпцов матрицы (уже после сортировки)?

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


Новичок
*

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

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


Я так понял ответа не дождусь sad.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


Цитата
Я так понял ответа не дождусь sad.gif


Не стоит так драматизировать :))

Вот разбирайся ;)

uses crt;
const
n = 3;

type
TMatrix = array [1..n, 1..n] of Integer;

{
Заполняем матрицу случайными числами
}

procedure Create(var mx: TMatrix);
var
i, j: Integer;
begin
Randomize;
for i := 1 to n do
for j := 1 to n do
mx[i, j] := Random(10);
end;

{
Печатаем матрицу
}

procedure Print(const mx: TMatrix);
var
i, j: Integer;
begin
writeln;
for i := 1 to n do begin
writeln;
for j := 1 to n do write(mx[i, j]:3);
end;
writeln;
end;

{
Сортируем строку матрица с номером row методом "Пузырька"
}

procedure SortRow(var mx: TMatrix; const row: Integer);
var
i, j, T: Integer;
begin
for i := n downto 2 do
for j := 1 to i - 1 do
if mx[row, j] > mx[row, j + 1] then begin
T := mx[row, j];
mx[row, j] := mx[row, j + 1];
mx[row, j + 1] := T;
end;
end;

{
Среднее арифм. столбца col матрицы mx
}

function SA(const mx: TMatrix; const col: Integer): Single;
var
i: Integer;
sr: Single;
begin
sr := 0;
for i := 1 to n do
sr := sr + mx[i, col];
SA := sr / n;
end;

{
Среднее геометр. столбца col матрицы mx
}

function SG(const mx: TMatrix; const col: Integer): Single;
var
i: Integer;
p: Single;
begin
p := 1;
for i := 1 to n do
p := p * mx[i, col];
SG := p;
end;

var
M: TMatrix;
i: Integer;

begin
clrscr;

Create(M);
Print(M);

// сортируем все строки матрицы

for i := 1 to n do
SortRow(M, i);

Print(M);

writeln;

// считаем среднее арифметическое и геометрическое для столбцов

for i := 1 to n do
writeln('i = ', i, ' SA = ', SA(M, i):3:3, ' SG = ', SG(M, i):3:3);

readln;
end.



--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

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

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


good.gif yes2.gif yes2.gif Самый классный форум во всем рунете.!!!!
Пасибки огромное, с меня пиво если увидимся blum.gif
Единственное надо было вывести посортированную матрицу и она должна быть 5 на 5 но с этим я уже справлюсь, надеюсь rolleyes.gif (если не ттяжело можно и подкоректить)

Еще бы блок-схемку к этому чуду... и если есть у кого-то еще вариант решения этом задачки перед спасибо от своей одногрупницы give_rose.gif

ЗЫ... как "спасибо" нажать?

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

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

 





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