С Новым годом! Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
2 / 2 / 1
Регистрация: 04.03.2012
Сообщений: 31

Двумерные массивы работа с файлами

24.06.2012, 22:37. Показов 722. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте извините что так часто стал обращатся за помощью просто не успеваю, последний раз обращаюсь помогите пожалуйста с решением задач на двумерные массивы с помощью файлов.
1
Pascal
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
unit Unit1; 
 
{$mode objfpc}{$H+}
 
interface
 
uses
  Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
  Grids, StdCtrls, ExtCtrls;
 
type
 
  { TForm1 }
 
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    StringGrid1: TStringGrid;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end; 
 
var
  Form1: TForm1; 
 
implementation
 
{ TForm1 }
 
procedure TForm1.Button1Click(Sender: TObject);
const n=5;
var b:array[1..n,1..n] of integer;
i,j:integer;
begin
     randomize;
     for  i:=1 to n do
     begin
    for j:=1 to n do
                   begin
                    b[i,j]:=random(10);
                    form1.StringGrid1.Cells[i-1,j-1]:=inttostr(b[i,j]);
                   end;
end;
form1.Button3.Enabled:=true;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
form1.Button3.Enabled:=false;
form1.Label3.Caption:='';
form1.StringGrid1.Clean;
end;
 
procedure TForm1.Button3Click(Sender: TObject);
const n=5;
var b:array[1..n,1..n] of integer;
i,j:integer;
p:real;
begin
for i:=1 to n do
 for j:=1 to n do
b[i,j]:=strtoint(form1.StringGrid1.Cells[i-1,j-1]);
p:=0;
for i:=1 to n do
     begin
 
    for j:=1 to n do
 
                   begin
                     if i>j then
                     p:=p+b[i,j];
                    end;
 
end;
form1.Label3.Caption:=floattostr(p);
end;
 
initialization
  {$I unit1.lrs}
 
end.
2
Pascal
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
unit Unit1;
 
{$mode objfpc}{$H+}
 
interface
 
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
StdCtrls, Spin, Grids;
 
type
 
{ TForm1 }
 
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Label3: TLabel;
StringGrid1: TStringGrid;
StringGrid2: TStringGrid;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
 
private
{ private declarations }
public
{ public declarations }
end;
 
var
Form1: TForm1;
 
implementation
 
{ TForm1 }
 
procedure TForm1.Button3Click(Sender: TObject);
begin
form1.StringGrid1.Clean;
form1.Button2.Enabled:=false;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
a:array[1..5,1..6] of integer;
i,j:integer;
 
begin
randomize;
For i:=1 to 5 do
For j:=1 to 6 do
begin
 
a[i,j]:=random(100);
form1.StringGrid1.Cells[i-1,j-1]:=inttostr(a[i,j]);
end;
form1.Button2.Enabled:=true;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var a:array[1..5,1..6] of integer; i,j,k:integer;
begin
for i:=1 to 5 do
   for j:= 1 to 6 do
     a[i,j]:=strtoint(form1.StringGrid1.Cells[i-1,j-1]);
for i:=1 to 5 do
begin
k:=a[i,1];
a[i,1]:=a[i,6];
a[i,6]:=k;
end;
for i:=1 to 5 do
for j:= 1 to 6 do
form1.StringGrid2.Cells[i-1,j-1]:=inttostr(a[i,j]);
end;
 
procedure TForm1.Button4Click(Sender: TObject);
begin
form1.StringGrid2.Clean;
form1.Button2.Enabled:=false;
end;
 
 
 
initialization
{$I unit1.lrs}
 
end.
3
Pascal
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
unit Unit1; 
 
{$mode objfpc}{$H+}
 
interface
 
uses
  Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
  Grids, StdCtrls, Spin;
 
type
 
  { TForm1 }
 
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    SpinEdit1: TSpinEdit;
    SpinEdit2: TSpinEdit;
    StringGrid1: TStringGrid;
    StringGrid2: TStringGrid;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure SpinEdit1Change(Sender: TObject);
    procedure SpinEdit2Change(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end; 
 
var
  Form1: TForm1; 
 
implementation
 
var a:array of array of integer;
    m,n:integer;
{ TForm1 }
 
procedure TForm1.SpinEdit1Change(Sender: TObject);
begin
  form1.StringGrid1.ColCount:=form1.SpinEdit1.Value;
  form1.StringGrid2.ColCount:=form1.SpinEdit1.Value;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var i,j:integer;
 
begin
randomize;
m:=SpinEdit2.Value;
n:=spinEdit1.Value;
Setlength(a,m,n);
StringGrid1.ColCount:=n;
StringGrid1.RowCount:=m;
StringGrid2.ColCount:=n;
StringGrid2.RowCount:=m;
for i:=0 to m-1 do
for j:=0 to n-1 do
 begin
  a[i,j]:=-50+random(100);
  StringGrid1.Cells[j,i]:=inttostr(a[i,j]);
 end;
Button2.Enabled:=true;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var b:array of integer;
    i,j:integer;
begin
 Setlength(b,m);
 for i:=0 to m-1 do
 b[i]:=a[i,0];
 for j:=0 to n-2 do
 for i:=0 to m-1 do
 a[i,j]:=a[i,j+1];
 for i:=0 to m-1 do
 a[i,n-1]:=b[i];
 for i:=0 to m-1 do
 for j:=0 to n-1 do
 StringGrid2.Cells[j,i]:=inttostr(a[i,j]);
end;
 
procedure TForm1.Button3Click(Sender: TObject);
begin
   form1.StringGrid1.Clean;
   form1.Button2.Enabled:=false;
end;
 
procedure TForm1.Button4Click(Sender: TObject);
begin
  form1.StringGrid2.Clean;
  form1.Button2.Enabled:=false;
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
     form1.StringGrid1.ColCount:=form1.SpinEdit1.Value;
     form1.StringGrid1.RowCount:=form1.SpinEdit2.Value;
     form1.StringGrid2.ColCount:=form1.SpinEdit1.Value;
     form1.StringGrid2.RowCount:=form1.SpinEdit2.Value;
end;
 
procedure TForm1.SpinEdit2Change(Sender: TObject);
begin
  form1.StringGrid1.RowCount:=form1.SpinEdit2.Value;
  form1.StringGrid2.RowCount:=form1.SpinEdit2.Value;
end;
 
initialization
  {$I unit1.lrs}
 
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.06.2012, 22:37
Ответы с готовыми решениями:

Двумерные Массивы (курсовая работа)
Здраствуйте, очень долго искал и кажется нашел тех кто сможет мне помочь. Я сам не очень хорошо понимаю язык паскаль и поэтому прошу помочь...

Двумерные массивы
Дано: массивы A(N1,M1),B(N2,M2),C(N2,M2). Используя подпрограмму упорядочить по убыыванию элементы каждого столбца исходных массивов ...

Двумерные массивы
1. Требуется написать программу формирования и вывода массива произвольного размера так, чтобы каждый последующий элемент, начиная со...

3
 Аватар для crazy_HUNTER
0 / 0 / 1
Регистрация: 24.06.2012
Сообщений: 7
24.06.2012, 22:59
вопрос, почему ты кидаешь задачи delphi на форум free pascal?
0
2 / 2 / 1
Регистрация: 04.03.2012
Сообщений: 31
24.06.2012, 23:03  [ТС]
это не дельфи
0
Почетный модератор
 Аватар для КонецСвета
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
24.06.2012, 23:24
}|{eka,
1) каждую задачу - в отдельную тему, таковы правила форума
2) вам не кажется, что зная условие, форумчане с большей вероятностью смогут вам помочь? не каждый захочет восстанавливать условие по коду...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.06.2012, 23:24
Помогаю со студенческими работами здесь

двумерные массивы)
сформировать квадратную матрицу порядка n по заданному массиву: 1 1 1 . 1 1 1 0 1 1 . 1 1 0 0 0 1 ...

двумерные массивы
Помогите подалуйста решить задачу!) Найти количество положительных элементов находящихся ниже главной диагонали.

Двумерные массивы
Задана квадратная матрица. Переставить строку с макси¬мальным элементом на главной диагонали со строкой с заданным номером. помогите!!!

ДВУМЕРНЫЕ МАССИВЫ
помогите решить задачу.пожалуйста. найти сумму модулей элементов расположенных выше главной диагонали матрицы размером 10х10

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru