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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.04.2012, 00:33
Brons14 Brons14 вне форума
Прохожий
 
Регистрация: 22.04.2012
Сообщения: 40
Репутация: 10
По умолчанию проблема с массивами, помогите пожалуйста, срочно!

Уважаемые форумчане, помогите пожалуйста решить задачу, я в программировании совсем новичок.
Вообщем нужно на форме создать 2 массива из Еdit компонентов 3х3 размерами и 1 кнопку, когда вводишь числа в Edit'ы при нажатии на кнопку матрицы складывались, а результат выводился в первом массиве.
Ответить с цитированием
  #2  
Старый 22.04.2012, 00:44
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Ваши попытки решения? Иначе сюда.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #3  
Старый 22.04.2012, 00:52
Brons14 Brons14 вне форума
Прохожий
 
Регистрация: 22.04.2012
Сообщения: 40
Репутация: 10
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
a: array[1..10,1..10] of integer;
b: array[1..10,1..10] of integer;
c: array[1..10,1..10] of integer;
i,j: integer;
begin
for i:=1 to 10 do
for j:=1 to 10 do

a[1,1]:=StrToInt(Edit1.Text);
a[1,2]:=StrToInt(Edit2.Text);
a[1,3]:=StrToInt(Edit3.Text);
a[2,1]:=StrToInt(Edit4.Text);
a[2,2]:=StrToInt(Edit5.Text);
a[2,3]:=StrToInt(Edit6.Text);
a[3,1]:=StrToInt(Edit7.Text);
a[3,2]:=StrToInt(Edit8.Text);
a[3,3]:=StrToInt(Edit9.Text);

b[1,1]:=StrToInt(Edit10.Text);
b[1,2]:=StrToInt(Edit11.Text);
b[1,3]:=StrToInt(Edit12.Text);
b[2,1]:=StrToInt(Edit13.Text);
b[2,2]:=StrToInt(Edit14.Text);
b[2,3]:=StrToInt(Edit15.Text);
b[3,1]:=StrToInt(Edit16.Text);
b[3,2]:=StrToInt(Edit17.Text);
b[3,3]:=StrToInt(Edit18.Text);

c[i,j]:=a[i,j]+b[i,j];
c[1,1]:=StrToInt(Edit1.Text);
c[1,2]:=StrToInt(Edit2.Text);
c[1,3]:=StrToInt(Edit3.Text);
c[2,1]:=StrToInt(Edit4.Text);
c[2,2]:=StrToInt(Edit5.Text);
c[2,3]:=StrToInt(Edit6.Text);
c[3,1]:=StrToInt(Edit7.Text);
c[3,2]:=StrToInt(Edit8.Text);
c[3,3]:=StrToInt(Edit9.Text);

это все что я смог и полагаю это даже близко не стоит с правильным решением( как мне подсказали, это должно работать, но я не знаю как дальше присвоить действие кнопке, что бы при нажатии массивы складывались

Последний раз редактировалось Brons14, 22.04.2012 в 00:56.
Ответить с цитированием
  #4  
Старый 22.04.2012, 01:02
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Не понял это:
Цитата:
...а результат выводился в первом массиве...
и поточнее, что и с чем суммируется.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #5  
Старый 22.04.2012, 01:10
Brons14 Brons14 вне форума
Прохожий
 
Регистрация: 22.04.2012
Сообщения: 40
Репутация: 10
По умолчанию

матрицы из едитов 3 на 3, суммируется как обычные матрицы (первый массив из едитов: едит1-едит9).
едит1 это [1,1] (первая строка, первый столбец) едит2 [1,2] (первая строка, первый столбец) и т. д.
А дальше 2 массив (из едитов10- едит18). а результат в 1 массив т. е. едит1 + едит10 и записывается в едит1, едит2+едит11 записывается в едит2.
Ответить с цитированием
  #6  
Старый 22.04.2012, 01:21
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Так что ли?
Код:
var
  Sum1, Sum2 : Integer;
begin
  Sum1 := StrToIntDef(Edit1.Text, 0) + StrToIntDef(Edit2.Text, 0) + StrToIntDef(Edit3.Text, 0) +
          StrToIntDef(Edit4.Text, 0) + StrToIntDef(Edit5.Text, 0) + StrToIntDef(Edit6.Text, 0) +
          StrToIntDef(Edit7.Text, 0) + StrToIntDef(Edit8.Text, 0) + StrToIntDef(Edit9.Text, 0);

  Sum2 := StrToIntDef(Edit10.Text, 0) + StrToIntDef(Edit11.Text, 0) + StrToIntDef(Edit12.Text, 0) +
          StrToIntDef(Edit13.Text, 0) + StrToIntDef(Edit14.Text, 0) + StrToIntDef(Edit15.Text, 0) +
          StrToIntDef(Edit16.Text, 0) + StrToIntDef(Edit17.Text, 0) + StrToIntDef(Edit18.Text, 0);

  Sum1 := Sum1 + Sum2;

  IntToStr(Edit1.Text, 0) := Sum1;
  IntToStr(Edit2.Text, 0) := Sum1;
  IntToStr(Edit3.Text, 0) := Sum1;
  IntToStr(Edit4.Text, 0) := Sum1;
  IntToStr(Edit5.Text, 0) := Sum1;
  IntToStr(Edit6.Text, 0) := Sum1;
  IntToStr(Edit7.Text, 0) := Sum1;
  IntToStr(Edit8.Text, 0) := Sum1;
  IntToStr(Edit9.Text, 0) := Sum1;
end;
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.

Последний раз редактировалось angvelem, 22.04.2012 в 01:29.
Ответить с цитированием
  #7  
Старый 22.04.2012, 01:22
U.B.M. U.B.M. вне форума
Новичок
 
Регистрация: 06.10.2011
Сообщения: 94
Версия Delphi: Delphi 7
Репутация: 13
По умолчанию

Вместо
Код:
c[1,1]:=StrToInt(Edit1.Text);
...
c[3,3]:=StrToInt(Edit9.Text);

надо

Код:
Edit1.Text := IntToStr(a[1,1]+b[1,1]);
...
Edit9.Text := IntToStr(a[3,3]+b[3,3]);
Ответить с цитированием
  #8  
Старый 22.04.2012, 01:27
Brons14 Brons14 вне форума
Прохожий
 
Регистрация: 22.04.2012
Сообщения: 40
Репутация: 10
По умолчанию

очень благодарен, но немного не ясно, этот код нужно записывать в кнопку на форме или как?
Ответить с цитированием
  #9  
Старый 22.04.2012, 01:28
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Да, на кнопку.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #10  
Старый 22.04.2012, 01:34
Brons14 Brons14 вне форума
Прохожий
 
Регистрация: 22.04.2012
Сообщения: 40
Репутация: 10
По умолчанию

всем спасибо, теперь получилось!
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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