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

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

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

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





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

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


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

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

имеется :

0033001100
0011001100
0011001100
0011001100
0022001100

надо :

00003333000011110000
00003333000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00001111000011110000
00002222000011110000
00002222000011110000

и т.д...

Надеюсь понятно... smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 26.03.2005 13:44
Сообщение #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.
 К началу страницы 
+ Ответить 
Guest
сообщение 15.11.2005 19:18
Сообщение #3


Гость






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


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

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

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


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



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

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


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

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

 



- Текстовая версия 19.06.2025 15:06
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"