这样的公式怎么写代码?难? ( 积分: 100 )

  • 主题发起人 主题发起人 let_it_be
  • 开始时间 开始时间
L

let_it_be

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure indexToCell(var col, row: integer
index: integer);
begin
col:=index mod 4
//4列 * 3 行
Row:=index div 3;
end;

反过来 知道 Col, Row,怎么得到 index
function CellToIndex(Col, Row: integer): integer;
begin
//4列 * 3 行
//这里怎么写?
end;
 
procedure indexToCell(var col, row: integer
index: integer);
begin
col:=index mod 4
//4列 * 3 行
Row:=index div 3;
end;

反过来 知道 Col, Row,怎么得到 index
function CellToIndex(Col, Row: integer): integer;
begin
//4列 * 3 行
//这里怎么写?
end;
 
这个index根本就不顾定的,他的值可以在Col*(Row-1)+1与Col*Row之间
 
4*j+col=3*i+n
n<3,m<4
4m+4=9+n

for i:=0 to 3 do
begin
for j:=0 to 4 do
begin
if 4*i+4=9+j then
edit1.Text:=inttostr(i)+' '+inttostr(j);
end;
end;
 
procedure TForm1.RzBitBtn1Click(Sender: TObject);
var i ,sum: integer;
j : integer;
begin
col := strtoint(rzedit1.text);
row := strtoint(rzedit2.text);
//check(col,row)
for i := 0 to 2 do
begin
sum := row * 3 + i ;
j := sum mod 4;
//showmessage(inttostr(j));
if j = col then
begin
rzedit3.Text := inttostr(sum);
abort;
end;


end;
 
這不是兩個等式嗎,初中的時候都學過的了。
 
function CellToIndex(Col, Row: integer): integer;
begin
//4列 * 3 行
result := Row*4+Col;
end;
 
两个答案, 看你的index怎么排列,
result:=Row*4+Col;
或者 result:=Col*3+Row;
 
多人接受答案了。
 

Similar threads

I
回复
0
查看
628
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
559
import
I
后退
顶部