foboy 发表于 2010-7-6 17:03:57

用一行代码把0变1,把1变0

本帖最后由 foboy 于 2010-7-11 01:48 编辑

没事无聊了来凑凑热闹。
请问如何用一行代码改变一个1位数,如果是1就变成0,如果是0就变成1。
不能用条件、选择等语句。

xsjtxy 发表于 2010-7-6 17:12:30

{:face (356):}
$i = "a0a0a0a0a0a0a0a0"
$i = StringReplace($i, "0","1")
msgbox(0,"",$i)
$i = StringReplace($i, "1","2")
msgbox(0,"",$i)
$i = StringReplace($i, "2","3")
msgbox(0,"",$i)

辣椒龙 发表于 2010-7-6 17:27:46

BitXOR($number,1)

没有知道 发表于 2010-7-6 17:34:22

看下{:face (411):}{:face (411):}

kk_lee69 发表于 2010-7-6 17:35:47

學習學習   看看高手的代碼

没有知道 发表于 2010-7-6 17:47:58

我能想到就是这个不过不是一行{:face (229):}
$a = "1010101010101010101"
$a = StringReplace($a,"0" , "3")
MsgBox(0,"",$a)
$a = StringReplace($a,"1" , "4")
MsgBox(0,"",$a)
$a = StringReplace($a,"3" , "1")
MsgBox(0,"",$a)
$a = StringReplace($a,"4" , "0")
MsgBox(0,"",$a)

shypro2009 发表于 2010-7-6 19:41:20

回复 3# 辣椒龙

犀利!

woeiwoei 发表于 2010-7-6 19:57:27

呵呵 有意思。。。

ferelove 发表于 2010-7-6 20:06:15

学习一下3楼的

anchie 发表于 2010-7-6 20:21:57

看看 好好学习 天天向上

jinyue115 发表于 2010-7-6 20:46:15

$number=0101101
$a=BitxOR($number,1)
MsgBox(1,"1",$a)

jinyue115 发表于 2010-7-6 20:47:42

abs也可以LZ不失是个好办法

gto250 发表于 2010-7-6 20:50:05

看了再说!!

3mile 发表于 2010-7-6 22:54:37

本帖最后由 3mile 于 2010-7-6 22:56 编辑

我也来试试只有一行的。
当然赋值行不能算
正则的办法:$number=10101101
MsgBox(0,'一行完成',StringRegExpReplace(StringRegExpReplace(StringRegExpReplace($number,'0','2'),'1','0'),'2','1'))
非正则的办法$number=10101101
MsgBox(0,'一行完成',StringReplace(StringReplace(StringReplace($number,'0','2'),'1','0'),'2','1'))

meteor1022 发表于 2010-7-7 04:15:41

看看先~~~~
页: [1] 2 3
查看完整版本: 用一行代码把0变1,把1变0