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

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

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

 
 Ответить  Открыть новую тему 
> Матрица, Увеличение в N раз
сообщение
Сообщение #1





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

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


Помогите, бьюсь уже дня два... <_<

Имеется матрица с числами, к примеру 50x50, а также пустая матрица 500x500.
Надо первую матрицу "растянуть" в N раз (все значения), и заполнить этими значениями вторую, т.е

имеется :

0033001100
0011001100
0011001100
0011001100
0022001100

надо :

00003333000011110000
00003333000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00002222000011110000
00002222000011110000

и т.д...

Надеюсь понятно... smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Вот так будет выглядеть консольное приложение:

Код
uses ...
const
 size_row = 5;
 size_col = 10;

 n = 2;

 m1: array[1 .. size_row, 1 .. size_col] of byte =
 ((0,0,3,3,0,0,1,1,0,0),
  (0,0,1,1,0,0,1,1,0,0),
  (0,0,1,1,0,0,1,1,0,0),
  (0,0,1,1,0,0,1,1,0,0),
  (0,0,2,2,0,0,1,1,0,0));

var
 m2: array[1 .. n*size_row, 1 .. n*size_col] of byte;

 i,j: integer;
 T, jj, ii: byte;
 new_row, new_col: integer;
begin
 writeln('before:');
 for i := 1 to 2*size_row do
   begin
     for j := 1 to 2* size_col do
       write(m2[i, j]: 3);
     writeln
   end;

 new_row := 1; new_col := 1;
 for i := 1 to size_row do
   for ii := 1 to n do begin
     new_col := 1;

     for j := 1 to size_col do
       begin
         T := m1[i, j];
         for jj := 1 to n do
           begin
             m2[new_row, new_col] := T; inc(new_col);
           end;
       end;
     inc(new_row);
   end;
 writeln('after:');
 for i := 1 to 2*size_row do
   begin
     for j := 1 to 2* size_col do
       write(m2[i, j]: 3);
     writeln
   end;
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






народ, помогите!Срочно нужно точное оприделение "матрица"!
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Ищущий истину
******

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

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


матрица - прямоугольная сетка чисел, вида:
Код
a11, a12, a13, ... , a1n
a21, a22, a23, ... , a2n
a31, a32, a33, ... , a3n
...
am1, am2, am3, ... , amn



В Паскале, матрица - двумерный массив.

и нечего поднимать темы полугодовалой давности! mad.gif


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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