24小时热门版块排行榜    

查看: 1196  |  回复: 10
本帖产生 1 个 程序强帖 ,点击这里进行查看

匿名

用户注销 (正式写手)

本帖仅楼主可见

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   同方向广播   申请程序强帖   回复此楼   编辑   查看我的主页
回帖支持 ( 显示支持度最高的前 50 名 )

chyanog

金虫 (小有名气)

liu0604: 回帖置顶 2013-08-03 20:08:04
MapIndexed[
Which[
   MemberQ[{1, 4, 7, 9}, Tr@#2], #^2,
   MemberQ[{2, 4, 5}, Tr@#2], #^3,
   True, #] &,
ak]
8楼2013-08-03 19:51:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chyanog

金虫 (小有名气)

引用回帖:
9楼: Originally posted by liu0604 at 2013-08-03 20:08:02
厉害,请教一下Tr@#2是什么意思,求迹的东西?
能做一个简单的解释吗?感激不尽……...

其实相当于First@{a},或者{a}[[1]],Tr看起来更短小而已,
其实方法还有很多,
ak = Symbol /@ CharacterRange["a", "z"];

ReplacePart[ak, Join[# :> F1[ak[[#]]] & /@ {1, 4, 7, 9},
  # :> F2[ak[[#]]] & /@ {2, 5, 8}]]

MapAt[F1, ak, List /@ {1, 4, 7, 9}]
MapAt[F2, %, List /@ {2, 5, 8, 10}]
MapAt[F3, %, List /@ {3, 6, 12}]
10楼2013-08-03 21:36:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

mshwangg

至尊木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
aknew=ak
aknew[]=f[ak[]], i=1,4,7,9,....
aknew[[j]]=g[ak[[j]]], j=2,4,5,....
aknew[[k]]=h[ak[[k]]],k=3,11,13,15,...
f,g,h是某种计算,用函数表示了。
如果i,j,k中各个数值满足某种规律,可以把i,j,k做为循环变量进行操作。
ps:没看明白你要做什么,也没弄明白i,j,k的规律,就这样吧
2楼2013-07-22 18:35:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mshwangg

至尊木虫 (正式写手)

引用回帖:
2楼: Originally posted by mshwangg at 2013-07-22 18:35:33
aknew=ak
aknew[]=f[ak, i=1,4,7,9,....
aknew[]=g[ak, j=2,4,5,....
aknew[]=h[ak,k=3,11,13,15,...
f,g,h是某种计算,用函数表示了。
如果i,j,k中各个数值满足某种规律,可以把i,j,k做为循环变量进行操作。
...

aknew[]=f[ak[]], i=1,4,7,9,....
怎么就丢字符了呢
3楼2013-07-22 18:37:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (正式写手)

本帖仅楼主可见
4楼2013-07-22 19:21:31
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

匿名

用户注销 (正式写手)

本帖仅楼主可见
5楼2013-07-22 19:28:16
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

匿名

用户注销 (正式写手)

本帖仅楼主可见
6楼2013-07-22 19:33:31
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

mshwangg

至尊木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
liu0604: 金币+10, ★★★★★最佳答案, 太感谢您了!非常感谢!!! 2013-07-23 11:11:43
jjdg: 程序强帖+1, 应助指数+1, 辛苦了 2013-08-04 00:44:47
引用回帖:
6楼: Originally posted by liu0604 at 2013-07-22 19:33:31
我试了一下:出现错误……
ak = {a, b, c, f, d, e, r, t, u};
aknew = ak;
aknew[] = ak[]^2, {i, 1, 2, 3};


Syntax::tsntxi: "aknew[]=ak[]^2,{i,1,2,3};" is incomplete; more input is need ...

呃,我是说程序逻辑上,或者说数学表达上是这个样子,不是程序本身的语法。
既然只有16个元素,那么一个一个敲都可以啊。
不管如何,终究要归结为一个一个数组元素的操作。简单写一个程序,按照你自己的需求改吧
求个条件语句的编写
7楼2013-07-23 10:58:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (正式写手)

本帖仅楼主可见
9楼2013-08-03 20:08:02
已阅   申请程序强帖   回复此楼   编辑   查看我的主页
相关版块跳转 我要订阅楼主 liu0604 的主题更新
信息提示
请填处理意见