Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 4
1

Переставить столбцы в порядке возрастания первых элементов столбцов

27.09.2015, 23:35. Показов 1891. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
задан двумерный массив (nxm). переставить столбцы в порядке возрастания первых элементов столбцов
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.09.2015, 23:35
Ответы с готовыми решениями:

Переставить столбцы двумерного массива в порядке возрастания элементов 2-й строки
Нужно написать 2 программы. НУ хотя бы одну... Буду ооочень признателен. Пожаааалуйста!... ...

Столбцы матрицы переставить в порядке убывания произведений элементов столбцов
Помогите решить осложнейшую задачку,пожалуйста!!!!!!!!!!! Столбцы переставить в порядке убывания...

Таким образом переставить столбцы матрицы, чтобы их первые элементы располагались в порядке не возрастания
Добрый вечер форумчане. Необходимо написать несколько программ и оформить к ним блок схемы...

Переставить местами столбцы матрицы в порядке возрастания первых элементов столбцов
Переставить местами столбцы матрицы в порядке возрастания первых элементов столбцов. n = 5, m = 5....

6
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.09.2015, 10:23 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
const nmax=10;
      mmax=25;
var c:array[1..nmax,1..mmax] of integer;
    n,m,i,j,k,p:byte;
    sm,x:integer;
begin
randomize;
repeat
write('Количество строк n=');
readln(n);
until n in [1..nmax];
repeat
write('Количество столбцов m=');
readln(m);
until m in [1..mmax];
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to m do
   begin
    c[i,j]:=random(100);
    write(c[i,j]:3);
   end;
  writeln;
 end;
writeln;
//перестановка столбцов по возрастанию значений в первой троке
for j:=1 to m-1 do
for p:=j+1 to m do
if c[1,j]>c[1,p] then
for i:=1 to n do
 begin
  x:=c[i,j];
  c[i,j]:=c[i,p];
  c[i,p]:=x;
 end;
writeln('Столбцы упорядочены:');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(c[i,j]:3);
  writeln;
 end;
end.
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 4
28.09.2015, 15:31  [ТС] 3
Мне нужна такая программа, чтобы любую матрицу можно было(т.е. самому вводить какие угодно элементы столбцов и строк)
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.09.2015, 16:02 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
repeat
write('Количество строк n=');
readln(n);
until n in [1..nmax];
repeat
write('Количество столбцов m=');
readln(m);
until m in [1..mmax];
writeln('Введите элементы матрицы, целые числа');
for i:=1 to n do
for j:=1 to m do
 begin
  write('a[',i,',',j,']=');
  readln(a[i,j]);
 end;
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to m do
   begin
    c[i,j]:=random(100);
    write(c[i,j]:3);
   end;
  writeln;
 end;
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 4
28.09.2015, 16:58  [ТС] 5
я немного понял по программе, стал вводить свои числа, но вот какая оказия. почему мне выводится "исходная матрица" не та, которую я вводил?

Добавлено через 10 минут
Введите элементы матрицы, целые числа
a[1,1]=5
a[1,2]=0
a[1,3]=-3
a[1,4]=6
a[2,1]=2
a[2,2]=-1
a[2,3]=0
a[2,4]=2
a[3,1]=-4
a[3,2]=1
a[3,3]=7
a[3,4]=0
Исходная матрица:
46 97 42 98
70 17 18 76
83 71 24 0
как сделать так, чтобы в ответе я получил:
-3 0 5 6
0 -1 2 2
7 1 -4 0
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.09.2015, 17:00 6
Тупость как следствие воспитания...
Pascal
1
2
3
4
5
6
7
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(c[i,j]:3);
 writeln;
 end;
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 4
28.09.2015, 17:05  [ТС] 7
возможно ты прав. а еще тупость не знать этого обучаясь очно, но когда ты заочник и ты работаешь, тебе некогда учить и приходится спрашивать, не разбираясь совершенно в данной теме
0
28.09.2015, 17:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.09.2015, 17:05
Помогаю со студенческими работами здесь

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

В массиве переставить столбцы в порядке возрастания элементов первой строки
В массиве А(N,M) переставить столбцы в порядке возрастания элементов первой строки. Не знаю что...

Двумерный массив. Переставить столбцы в порядке возрастания количества элементов, превышающих заданное число
Имеется задачка: Столбцы переставить в порядке возрастания количества содержащихся в них элементов,...

Переставить столбцы матрицы в порядке увеличения суммы элементов столбцов
Добрый день! Задание: Переставить столбцы матрицы в порядке увеличения суммы елементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru