Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.11.2010, 17:28
crazybabushka crazybabushka вне форума
Прохожий
 
Регистрация: 16.11.2010
Сообщения: 6
Репутация: 10
Стрелка Помогите составить цикл перемножения двух одномерных массивов

Есть 2 массива
Код:
var k: array[1..4] of Integer=(5, -2,3,0);
    l: array[1..4] of Integer=(-7,0,0,4); 

Задача довольно тривиальная. Получить третий массив, с элементами
Код:
-35
14
-21
0
0
0
0
0
0
0
0
0
20
-8
12
0

Другими словами, никак не могу составить цикл для

Код:
 c[1]:=k[1]*l[1];
  c[2]:=k[2]*l[1];
  c[3]:=k[3]*l[1];
  c[4]:=k[4]*l[1];
    c[5]:=k[1]*l[2];
    c[6]:=k[2]*l[2];
    c[7]:=k[3]*l[2];
    c[8]:=k[4]*l[2];
      c[9]:=k[1]*l[3];
      c[10]:=k[2]*l[3];
      c[11]:=k[3]*l[3];
      c[12]:=k[4]*l[3];
        c[13]:=k[1]*l[4];
        c[14]:=k[2]*l[4];
        c[15]:=k[3]*l[4];
        c[16]:=k[4]*l[4];

Буду благодарен за помощь
Ответить с цитированием
  #2  
Старый 16.11.2010, 17:37
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

Где то так:

Код:
For i:=1 to 4 do
  for j:=1 to 4 do
c[(i*i+(j-1))]:=k[i]*l[j];
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
  #3  
Старый 16.11.2010, 17:44
crazybabushka crazybabushka вне форума
Прохожий
 
Регистрация: 16.11.2010
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от Black Raider
Где то так:

Код:
For i:=1 to 4 do
  for j:=1 to 4 do
c[(i*i+(j-1))]:=k[i]*l[j];

Новый массив:
Код:
-35
0
0
14
0
0
-8
0
-21
0
0
12
0
0
0
0

Последний раз редактировалось crazybabushka, 16.11.2010 в 17:49.
Ответить с цитированием
  #4  
Старый 16.11.2010, 17:54
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

Поменяйте местами индексы массива:
вот так:
For j:=1 to 4 do
for i:=1 to 4 do
c[(j*j+(i-1))]:=k[i]*l[j];
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
  #5  
Старый 16.11.2010, 18:06
crazybabushka crazybabushka вне форума
Прохожий
 
Регистрация: 16.11.2010
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от Black Raider
Поменяйте местами индексы массива:
вот так:
For j:=1 to 4 do
for i:=1 to 4 do
c[(j*j+(i-1))]:=k[i]*l[j];
Опять не то.. А можно счетчик индекса для "C" отдельно сделать?

Несколько лишних нулевых элементов в середину затусовываются. Хотя, в принципе, для меня это не критично, всё равно нулевые элементы потом отбрасываю. Спасибо!!!

Последний раз редактировалось crazybabushka, 16.11.2010 в 18:17.
Ответить с цитированием
  #6  
Старый 16.11.2010, 18:18
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

For j:=1 to 4 do
for i:=1 to 4 do
c[(j*4-4+(i))]:=k[i]*l[j];

массив будет вот такой:
-35
14
-21
0
0
0
0
0
0
0
0
0
20
-8
12
0
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
  #7  
Старый 16.11.2010, 18:22
crazybabushka crazybabushka вне форума
Прохожий
 
Регистрация: 16.11.2010
Сообщения: 6
Репутация: 10
По умолчанию

Спасибо тебе огромное!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:56.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter