Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 2
Регистрация: 16.08.2017
Сообщений: 72
1

Поиск наименьшего числа матрицы, его номера ячейки и столбца

26.09.2017, 18:57. Показов 867. Ответов 7
Метки нет (Все метки)

Delphi
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, ComCtrls, StdCtrls;
 
type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    StringGrid1: TStringGrid;
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Label2: TLabel;
    procedure StringGrid1Click(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  min,num_x,num_y: integer;
  i,j: integer;
  mas:array[1..20,1..30] of integer;
 
 
implementation
 
{$R *.dfm}
 
procedure TForm1.StringGrid1Click(Sender: TObject);
var i,j: integer;
    mas:array[1..20,1..30] of integer;
begin
   for i:=2 to 20 do
   for j:=2 to 30 do
    begin
      mas[i,j]:=-10+random(61);
      StringGrid1.Cells[j-1,i-1]:= IntToStr(mas[i,j]);
    end;
end;
 
procedure TForm1.Edit1Change(Sender: TObject);
begin
   min:= 60;
   for i:=2 to 20 do
   for j:=2 to 30 do
    if mas[i,j] < min then
      min:=mas[i,j];
      num_x:= i;
      num_y:= j;
   Edit1.Text:= IntToStr(min);
   Edit2.Text:= IntToStr(num_x,num_y);
end;
 
end.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.09.2017, 18:57
Ответы с готовыми решениями:

Поиск наименьшего элемента матрицы и номера строки, в которой он находится
помогите составить код Задание. Составить алгоритм и программу поиска наименьшего элемента...

Поиск номера строки, столбца минимального элемента заданной матрицы
Поиск номера строки столбца минимального элемента заданной матрицы...

Поиск номера строки столбца минимального элемента заданной матрицы
Поиск номера строки столбца минимального элемента заданной матрицы

Определение номера столбца и номера ячейки по которому был совершен клик мышкой в Grid
Всех приветствую! Пытаюсь в по клику определить номер ячейки в grid, в котором лежит Image. Вот...

7
Модератор
63726 / 47278 / 32585
Регистрация: 18.05.2008
Сообщений: 114,594
26.09.2017, 19:19 2
Лучший ответ Сообщение было отмечено Helsereet как решение

Решение

Delphi
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
var
  Form1: TForm1;
  mas:array[1..20,1..30] of integer;
 
 
implementation
 
{$R *.dfm}
 
procedure TForm1.StringGrid1Click(Sender: TObject);
var i,j: integer;
begin
randomize;
for i:=1 to 20 do
for j:=1 to 30 do
 begin
  mas[i,j]:=-10+random(61);
  StringGrid1.Cells[j-1,i-1]:= IntToStr(mas[i,j]);
 end;
end;
 
procedure TForm1.Edit1Change(Sender: TObject);
var i,j,min,num_x,num_y: integer;
begin
min:=mas[1,1];
num_x:=1;
num_y:=1;
for i:=1 to 20 do
for j:=1 to 30 do
if mas[i,j] < min then
 begin
  min:=mas[i,j];
  num_x:= i;
  num_y:= j;
 end;
Edit1.Text:='min='+IntToStr(min);
Edit2.Text:='num_x='+IntToStr(num_x)+' num_y='+IntToStr(num_y);
end;
0
2 / 2 / 2
Регистрация: 16.08.2017
Сообщений: 72
26.09.2017, 20:21  [ТС] 3
Вообще ничего не выводит в эдитах, изменилось только то, что теперь числа заполняются и в серых ячейках (т.е края таблицы)
0
Модератор
63726 / 47278 / 32585
Регистрация: 18.05.2008
Сообщений: 114,594
26.09.2017, 20:27 4
Убери в таблице фиксированные ячейки и смени обработчик
Delphi
1
procedure TForm1.Edit1Change(Sender: TObject)
;
на
Delphi
1
TForm1.Button1Click(Sender: TObject);//положи на форму кнопку и кликни по ней 2 раза
0
2 / 2 / 2
Регистрация: 16.08.2017
Сообщений: 72
26.09.2017, 20:29  [ТС] 5
Только если в первый эдит ввести что то он постоянно выводит min=-10 даже если сформирована новая таблица, и почему значения эдитов сразу не выводятся(после генерации таблицы) а ждут ввода текста ?
0
Модератор
63726 / 47278 / 32585
Регистрация: 18.05.2008
Сообщений: 114,594
26.09.2017, 20:32 6
Так среди 600 чисел в диапазоне -10..50 хоть 1 но всегда будет -10. Посмотрите что у Вас в таблице.
0
2 / 2 / 2
Регистрация: 16.08.2017
Сообщений: 72
26.09.2017, 20:52  [ТС] 7
Спасибо, все работает. Немного не по теме -вот говоришь , что всегда будет -10 хоть в одной ячейки , но не факт же значение берется же рандомное , или ты имел виду почти всегда , тогда все ок.
0
Модератор
63726 / 47278 / 32585
Регистрация: 18.05.2008
Сообщений: 114,594
26.09.2017, 20:55 8
Ну конечно почти, но я сколько раз ни делал подобное, у меня всегда выпадало меньшее, хотя теоретически все 600 чисел могут быть =100.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.09.2017, 20:55

Помощь в написании контрольных, курсовых и дипломных работ здесь.

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

Поиск номера строки и номера столбца минимального элемента в двумерном массиве
поиск номера строки и номера столбца минимального элемента в двумерном массиве. подскажите, что...

Поиск на 1 листе текста со 2-й ячейки 6 столбца со сравнением на 2-листе со 2-й ячейки 6 столбца
Прошу помочь Макрос поиска на 1-ом листе текста со 2-й ячейки 6 столбца с сравнением его на 2-листе...

Нахождение номера наименьшего числа
Необходимо найти номер наименьшего числа. Написал такой батник, но ничего не выводит. Не могу найти...

Элементы матрицы, сумма номера строки и номера столбца которых нечетная, заменить противоположным числом
Дана матрица А порядка n. Элементы матрицы, сумма номера строки и номера столбца которых нечетная,...

Найти наименьшего соседа каждой ячейки матрицы
Задача: дана матрица n x m, заполненная случайными числами. Нужно найти для каждой ячейки X...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.