--->Помогите исправить код<---

Ответить
NexTx
Сообщения: 1
Зарегистрирован: 17 мар 2015, 09:21

17 мар 2015, 09:33

Нужно написать программу с функцией, а у меня не получается. Нужно сделать функцию чисел перевёртышей. Если число целое и чётное, то перевернуть его.

Код: Выделить всё

var
  Form1: TForm1;
  var a:array[1..20,1..20] of integer;
  i,j,n,m,c,k:integer;

implementation

{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);
begin              // Создание матрицы
repeat
n:=strtoint(Edit1.Text);
m:=strtoint(edit2.Text);
until (n and m) in [0..20];
for i:=1 to m do
for j:=1 to n do
a[i,j]:=random(100)-35;
for i:=1 to m do
begin
for j:=1 to n do
StringGrid1.Cells[i-1,j-1]:=inttostr(a[i,j]);
end;
end;

function perevertish(a:integer):integer;
var k:integer;   // перевёртыш
begin
for i:=i to m do
for j:=1 to n do
if (a[i,j] mod 2=0) and (a[i,j]>0) then
begin
k:=0;
while a[i,j]>=1 do
begin
c:=a[i,j] mod 10;
k:=k*10+c;
a[i,j]:=a[i,j] div 10;
end;
a[i,j]:=k;
end;
for i:=1 to m do
begin
for j:=1 to n do
result:=k;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
if (a[i,j]>0) and (a[i,j] mod 2 = 0) then
  a[i,j] := Perevertish (a[i,j]);
StringGrid2.Cells[i-1,j-1]:=inttostr(a[i,j]);
end;

end.
Аватара пользователя
somewhere
Сообщения: 1837
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

17 мар 2015, 10:26

Для начала нужно из функции убрать весь код, который ее не касается. Функция должна только переворачивать число. А то, что там сейчас написано - даже компилироваться не должно
It's a long way to the top if you wanna rock'n'roll
Ответить