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

Работа с подпрограммами

23.03.2016, 18:40. Просмотров 356. Ответов 1
Метки нет (Все метки)

Пожалуйста помогите переделать Код под Графический интерфейс ...
Зарание спасибо !!!
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
const nmax=50;
type mas=array[1..nmax] of real;
procedure input(var a:mas;var n:integer;c:char);
var i:integer;
begin
repeat
write('Размер массива ',c,' до ',nmax,' n=');
readln(n);
until n in [1..nmax];
for i:=1 to n do
a[i]:=10*random;
clrscr;
end;
procedure OutPut(a:mas;n:integer;c:string);
var i:integer;
begin
writeln(c);
for i:=1 to n do
write(a[i]:5:2);
writeln;
end;
procedure Hill(var a:mas;n:integer);
var i,j,k,imn,p:integer;
     x:real;
begin
k:=n div 2; 
for i:=1 to k do
 begin
  imn:=i; //найдем 1 минимальный в еще не отсортированных
  for j:=i+1 to n-i+1 do
  if a[j]<a[imn] then imn:=j;
  x:=a[imn];//нашли
  for p:=imn downto i+1 do 
  a[p]:=a[p-1];
  a[i]:=x;
  imn:=i+1;//ищем второй минимальный
  for j:=i+1 to n-i+1 do
  if a[j]<a[imn] then imn:=j;
  x:=a[imn];//нашли
  for p:=imn to n-i do
  a[p]:=a[p+1];
  a[n-i+1]:=x;
 end;
end;
var a,b,c:mas;
    na,nb,nc:integer;
begin
randomize;
Vvod(a,na,'A');
Vvod(b,nb,'B');
Vvod(c,nc,'C');
Vyvod(a,na,'Исходный массив А');
Hill(a,na);
Vyvod(a,na,'Отсортированный массив А');
Vyvod(b,nb,'Исходный массив B');
Hill(b,nb);
Vyvod(b,nb,'Отсортированный массив B');
Vyvod(c,nc,'Исходный массив C');
Hill(c,nc);
Vyvod(c,nc,'Отсортированный массив C');
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.03.2016, 18:40
Ответы с готовыми решениями:

Работа с подпрограммами
Я не давно начал работать с delphi и пока не совсем понимаю, как добавить считывание x1-y3 и как...

Разработать программу с подпрограммами для обработки массива записей
Разработать программу с подпрограммами для обработки массива записей. Номер рейса самолета, пункт...

Работа с подпрограммами
Доброго времени суток. Очень нужна помощь с программой на ассемблере. Сама задача звучит так:...

Работа с подпрограммами
Не могу понять почему работает неправильно, Помогите! #include&lt;conio.h&gt; #include&lt;stdio.h&gt;...

1
Модератор
61730 / 46206 / 31876
Регистрация: 18.05.2008
Сообщений: 111,487
24.03.2016, 07:57 2
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
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
procedure Input(var a:mas;var n:integer;e:TEdit;c:char);
var i,k:integer;
begin
//проверим ввод размеров массивов
val(e.Text,n,k);
if(k<>0)or(n<1)then
 begin
  ShowMessage('Неверно введен размер массива '+c);
  e.Clear;
  e.SetFocus;
  exit
 end;
setlength(a,n);
for i:=0 to n-1 do
a[i]:=10*random;
end;
procedure OutPut(a:mas;n:integer;s:TStringGrid);
var i:integer;
begin
for i:=0 to n-1 do
s.Cells[i,0]:=format('%.2f',[a[i]]);
end;
procedure Hill(var a:mas;n:integer);
var i,j,k,imn,p:integer;
     x:double;
begin
k:=n div 2;
for i:=0 to k-1 do
 begin
  imn:=i; //найдем 1 минимальный в еще не отсортированных
  for j:=i+1 to n-i-1 do
  if a[j]<a[imn] then imn:=j;
  x:=a[imn];//нашли
  for p:=imn downto i+1 do 
  a[p]:=a[p-1];
  a[i]:=x;
  imn:=i+1;//ищем второй минимальный
  for j:=i+1 to n-i-1 do
  if a[j]<a[imn] then imn:=j;
  x:=a[imn];//нашли
  for p:=imn to n-i-2 do
  a[p]:=a[p+1];
  a[n-i-1]:=x;
 end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
//зададим осноные параметры таблиц
with StringGrid1 do
 begin
  fixedcols:=0;
  fixedrows:=0;
  rowcount:=1;
  scrollbars:=ssHorizontal;
  defaultcolwidth:=30
 end;
with StringGrid2 do
 begin
  fixedcols:=0;
  fixedrows:=0;
  rowcount:=1;
  scrollbars:=ssHorizontal;
  defaultcolwidth:=30
 end;
with StringGrid3 do
 begin
  fixedcols:=0;
  fixedrows:=0;
  rowcount:=1;
  scrollbars:=ssHorizontal;
  defaultcolwidth:=30
 end;
with StringGrid4 do
 begin
  fixedcols:=0;
  fixedrows:=0;
  rowcount:=1;
  scrollbars:=ssHorizontal;
  defaultcolwidth:=30
 end;
with StringGrid5 do
 begin
  fixedcols:=0;
  fixedrows:=0;
  rowcount:=1;
  scrollbars:=ssHorizontal;
  defaultcolwidth:=30
 end;
with StringGrid6 do
 begin
  fixedcols:=0;
  fixedrows:=0;
  rowcount:=1;
  scrollbars:=ssHorizontal;
  defaultcolwidth:=30
 end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:mas;
    na,nb,nc,k:integer;
begin
randomize;
Input(a,na,Edit1,'A');
StringGrid1.ColCount:=na;
OutPut(a,na,StringGrid1);
Input(b,nb,Edit2,'B');
StringGrid2.ColCount:=nb;
OutPut(b,nb,StringGrid2);
Input(c,nc,Edit3,'C');
StringGrid3.ColCount:=nc;
OutPut(c,nc,StringGrid3);
Hill(a,na);
StringGrid4.ColCount:=na;
OutPut(a,na,StringGrid4);
Hill(b,nb);
StringGrid5.ColCount:=nb;
OutPut(b,nb,StringGrid5);
Hill(c,nc);
StringGrid6.ColCount:=nc;
OutPut(c,nc,StringGrid6);
end;
1
Вложения
Тип файла: rar 3 массива.rar (190.9 Кб, 0 просмотров)
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.03.2016, 07:57

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Работа с подпрограммами
Всем привет. Делал пример из книги и что то ничего не получается. По идее по нажатию кнопки должно...

Работа с подпрограммами
Используя подпрограммы, создать и вывести массив y с элементами yk=fi+1(k), де k=1,12, i- номер...

Работа с подпрограммами - функциями
Составить программу вычисления значения выражения используя способы программирования с созданием...

Работа с сопрограммами и подпрограммами на других языках
Подскажите есть ли в стандартах std или иные кросплатформенные методы работы с сопрограммами и...


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

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

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