已知K,j,n的值,求解x的值?
k:=(x mod j)+((x div j) mod j)*100+((x div n) mod j)*10000
k:=(x mod j)+((x div j) mod j)*100+((x div n) mod j)*10000
解决方案 »
- fastreport设计完成后,点击DBGRID没反应,DBGIRD的游标不动了
- 得到当前上网IP
- 在DBGrid中如何让光标指向指定行
- 问个相当笨的问题
- ★高手指教:从ActiveX控件mscomm32.ocx导入的TMSComm控件开发阶段无法使用,说缺少License信息★
- 如何将主菜单放到coolbar控件上面?谢谢!
- 好难的SQL语句。请高手帮忙,我是一点办法也没有了。(在线等待)帮忙UP也给加分。
- 如何在监视系统中,当捕获的图像改变时,摄像头立刻监视,并保存为AVI文件????希望卷起千堆雪能帮我!!!!
- DCOMConnect組件連到server端,出現 "interface not supported"错误??
- 如何获得子窗口的句柄
- 为什么设置“自动编号”触发器后,在程序运行中还是提示字段必须填写?
- 求购一段MRP运算的代码?只需能够在BOM里运算出产品的物料清单就可以了。
k:=(x mod j)+((x div j) mod j)*100+((x div n) mod j)*10000function GetX(k,j,n: integer): integer;
var
mod1,mod2,mod3: integer;
begin
result:=0;
if (j=0) or n=0 then exit;
for mod1:=0 to 9 do begin
for mod2:=0 to 9 do begin
for mod3:=0 to 9 do begin
if (k=(mod1+mode2*100+mod3*10000)) then begin
......... 等待完善中
end;
end; //mod3
end; //mod2
end; //mode1
end;
var
mod1,mod2,mod3: integer;
begin
result:=0;
if (j=0) or n=0 then exit;
for mod1:=0 to 5 do begin
for mod2:=0 to 5 do begin
for mod3:=0 to 5 do begin
if (k=(mod1+mod2*100+mod3*10000)) then begin
......... 比较难, 等待中...
end;
end; //mod3
end; //mod2
end; //mode1
end;
如果要用循环的话倒不如用 for x:=0 to MaxInt do 把解都枚举出来。 ^_^
k:=(x mod j)+((x div j) mod j)*100+((x div n) mod j)*10000终于搞定:function GetX(k,j,n: integer): integer;
var
mod1,mod2,mod3, G1: integer;
begin
result:=0;
if (j=0) or (n=0) then exit;
for mod1:=0 to 5 do begin
for mod2:=0 to 5 do begin
for mod3:=0 to 5 do begin
if (k=(mod1+mod2*100+mod3*10000)) then begin
for G1:=1 to 9 do begin
Result:=G1*j+mod1;
if ((Result mod j)+((Result div j) mod j)*100+((Result div n) mod j)*10000)=k then exit;
end; //for G1
end;
end; //mod3
end; //mod2
end; //mode1
end;
例如: X的值是一个三位数, 则相应改变循环长度:
function GetX(k,j,n: integer): integer;
var
mod1,mod2,mod3, G1: integer;
begin
result:=0;
if (j=0) or (n=0) then exit;
for mod1:=0 to 5 do begin
for mod2:=0 to 5 do begin
for mod3:=0 to 5 do begin
if (k=(mod1+mod2*100+mod3*10000)) then begin
for G1:=1 to 999 do begin
Result:=G1*j+mod1;
if ((Result mod j)=mod1) and (((Result div j) mod j)=mod2) and (((Result div n) mod j)=mod3) then exit;
end; //for G1
end;
end; //mod3
end; //mod2
end; //mode1
end;