| 查看: 2808 | 回复: 14 | ||
cw277木虫 (正式写手)
|
[求助]
求帮忙啊~ matlab一多项式结果太长,怎么写到txt里?
|
|
|
当i=600时,结果可以输出。 但当i>=700 这个char就卡住了,可能是没办法转换了。。 求高手指教啊。。 我应该怎么办?? 程序如下 clc clear tic; S(1)=sym('k1'); S(2)=sym('k2'); S(3)=sym('k3'); S(4)=sym('k4'); S(5)=sym('k5'); S(6)=sym('k6'); S(7)=sym('k7'); S(8)=sym('k8'); S(9)=sym('k9'); S(10)=sym('k10'); S(11)=sym('k11'); S(12)=sym('k12'); S(13)=sym('k13'); S(14)=sym('k14'); S(15)=sym('k15'); S(16)=sym('k16'); S(17)=sym('k17'); S(18)=sym('k18'); S(19)=sym('k19'); S(20)=sym('k20'); S(21)=sym('k21'); S(22)=sym('k22'); S(23)=sym('k23'); S(24)=sym('k24'); S(25)=sym('k25'); S(26)=sym('k26'); S(27)=sym('k27'); S(28)=sym('k28'); S(29)=sym('k29'); S(30)=sym('k30'); S(31)=sym('k31'); S(32)=sym('k32'); S(33)=sym('k33'); S(34)=sym('k34'); S(35)=sym('k35'); S(36)=sym('k36'); S(37)=sym('k37'); S(38)=sym('k38'); S(39)=sym('k39'); S(40)=sym('k40'); S(41)=sym('k41'); S(42)=sym('k42'); S(43)=sym('k43'); S(44)=sym('k44'); S(45)=sym('k45'); S(46)=sym('k46'); S(47)=sym('k47'); S(48)=sym('k48'); S(49)=sym('k49'); S(50)=sym('k50'); S(51)=sym('k51'); S(52)=sym('k52'); S(53)=sym('k53'); S(54)=sym('k54'); S(55)=sym('k55'); S(56)=sym('k56'); S(57)=sym('k57'); S(58)=sym('k58'); S(59)=sym('k59'); S(60)=sym('k60'); S(61)=sym('k61'); S(62)=sym('k62'); S(63)=sym('k63'); S(64)=sym('k64'); S(65)=sym('k65'); S(66)=sym('k66'); S(67)=sym('k67'); S(68)=sym('k68'); S(69)=sym('k69'); S(70)=sym('k70'); S(71)=sym('k71'); S(72)=sym('k72'); S(73)=sym('k73'); S(74)=sym('k74'); S(75)=sym('k75'); S(76)=sym('k76'); S(77)=sym('k77'); S(78)=sym('k78'); S(79)=sym('k79'); S(80)=sym('k80'); S(81)=sym('0'); S(82)=sym('0'); S(83)=sym('0'); S(84)=sym('0'); S(85)=sym('0'); S(86)=sym('0'); S(87)=sym('0'); S(88)=sym('0'); S(89)=sym('0'); S(90)=sym('0'); S(91)=sym('0'); S(92)=sym('0'); S(93)=sym('0'); S(94)=sym('IV1'); S(95)=sym('IV2'); S(96)=sym('IV3'); S(97)=sym('IV4'); S(98)=sym('IV5'); S(99)=sym('IV6'); S(100)=sym('IV7'); S(101)=sym('IV8'); S(102)=sym('IV9'); S(103)=sym('IV10'); S(104)=sym('IV11'); S(105)=sym('IV12'); S(106)=sym('IV13'); S(107)=sym('IV14'); S(108)=sym('IV15'); S(109)=sym('IV16'); S(110)=sym('IV17'); S(111)=sym('IV18'); S(112)=sym('IV19'); S(113)=sym('IV20'); S(114)=sym('IV21'); S(115)=sym('IV22'); S(116)=sym('IV23'); S(117)=sym('IV24'); S(118)=sym('IV25'); S(119)=sym('IV26'); S(120)=sym('IV27'); S(121)=sym('IV28'); S(122)=sym('IV29'); S(123)=sym('IV30'); S(124)=sym('IV31'); S(125)=sym('IV32'); S(126)=sym('IV33'); S(127)=sym('IV34'); S(128)=sym('IV35'); S(129)=sym('IV36'); S(130)=sym('IV37'); S(131)=sym('IV38'); S(132)=sym('IV39'); S(133)=sym('IV40'); S(134)=sym('IV41'); S(135)=sym('IV42'); S(136)=sym('IV43'); S(137)=sym('IV44'); S(138)=sym('IV45'); S(139)=sym('IV46'); S(140)=sym('IV47'); S(141)=sym('IV48'); S(142)=sym('IV49'); S(143)=sym('IV50'); S(144)=sym('IV51'); S(145)=sym('IV52'); S(146)=sym('IV53'); S(147)=sym('IV54'); S(148)=sym('IV55'); S(149)=sym('IV56'); S(150)=sym('IV57'); S(151)=sym('IV58'); S(152)=sym('IV59'); S(153)=sym('IV60'); S(154)=sym('IV61'); S(155)=sym('IV62'); S(156)=sym('IV63'); S(157)=sym('IV64'); S(158)=sym('IV65'); S(159)=sym('IV66'); S(160)=sym('IV67'); S(161)=sym('IV68'); S(162)=sym('IV69'); S(163)=sym('IV70'); S(164)=sym('IV71'); S(165)=sym('IV72'); S(166)=sym('IV73'); S(167)=sym('IV74'); S(168)=sym('IV75'); S(169)=sym('IV76'); S(170)=sym('IV77'); S(171)=sym('IV78'); S(172)=sym('IV79'); S(173)=sym('IV80'); S(174)=sym('0'); S(175)=sym('0'); S(176)=sym('0'); S(177)=sym('0'); S(178)=sym('0'); S(179)=sym('0'); S(180)=sym('0'); S(181)=sym('0'); S(182)=sym('0'); S(183)=sym('0'); S(184)=sym('0'); S(185)=sym('0'); S(186)=sym('0'); S(187)=sym('0'); S(188)=sym('0'); S(189)=sym('0'); S(190)=sym('0'); S(191)=sym('0'); S(192)=sym('0'); S(193)=sym('0'); S(194)=sym('0'); S(195)=sym('0'); S(196)=sym('0'); S(197)=sym('0'); S(198)=sym('0'); S(199)=sym('0'); S(200)=sym('0'); S(201)=sym('0'); S(202)=sym('0'); S(203)=sym('0'); S(204)=sym('0'); S(205)=sym('0'); S(206)=sym('0'); S(207)=sym('0'); S(208)=sym('0'); S(209)=sym('0'); S(210)=sym('0'); S(211)=sym('0'); S(212)=sym('0'); S(213)=sym('0'); S(214)=sym('0'); S(215)=sym('0'); S(216)=sym('0'); S(217)=sym('0'); S(218)=sym('0'); S(219)=sym('0'); S(220)=sym('0'); S(221)=sym('0'); S(222)=sym('0'); S(223)=sym('0'); S(224)=sym('0'); S(225)=sym('0'); S(226)=sym('0'); S(227)=sym('0'); S(228)=sym('0'); S(229)=sym('0'); S(230)=sym('0'); S(231)=sym('0'); S(232)=sym('0'); S(233)=sym('0'); S(234)=sym('0'); S(235)=sym('0'); S(236)=sym('0'); S(237)=sym('0'); S(238)=sym('0'); S(239)=sym('0'); S(240)=sym('0'); S(241)=sym('0'); S(242)=sym('0'); S(243)=sym('0'); S(244)=sym('0'); S(245)=sym('0'); S(246)=sym('0'); S(247)=sym('0'); S(248)=sym('0'); S(249)=sym('0'); S(250)=sym('0'); S(251)=sym('0'); S(252)=sym('0'); S(253)=sym('0'); S(254)=sym('0'); S(255)=sym('0'); S(256)=sym('0'); S(257)=sym('0'); S(258)=sym('0'); S(259)=sym('0'); S(260)=sym('0'); S(261)=sym('0'); S(262)=sym('0'); S(263)=sym('0'); S(264)=sym('0'); S(265)=sym('0'); S(266)=sym('0'); S(267)=sym('0'); S(268)=sym('0'); S(269)=sym('0'); S(270)=sym('0'); S(271)=sym('0'); S(272)=sym('0'); S(273)=sym('0'); S(274)=sym('0'); S(275)=sym('0'); S(276)=sym('0'); S(277)=sym('0'); S(278)=sym('0'); S(279)=sym('0'); S(280)=sym('0'); S(281)=sym('0'); S(282)=sym('0'); S(283)=sym('0'); S(284)=sym('0'); S(285)=sym('0'); S(286)=sym('1'); S(287)=sym('1'); S(288)=sym('1'); for i=1:700 t1(i)=S(66)+S(91)*S(92)+S(93)+S(171); t2(i)=S(162)+S(175)*S(176)+S(177)+S(264); t3(i)=S(243)+S(286)*S(287)+S(288)+S(69); S=[t3(i),S(1:92),S(94:288)]; S=[S(1:93),t1(i),S(94:176),S(178:288)]; S=[S(1:177),t2(i),S(178:287)]; i end s=char(S(1)); fid=fopen('c:\char2.txt','w'); fprintf(fid,'%s',s); toc; clear S; |
» 猜你喜欢
参与限项
已经有5人回复
推荐一本书
已经有7人回复
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
» 本主题相关价值贴推荐,对您同样有帮助:
急求一个matlab编码,各位如果知道一定要帮我一把啊
已经有10人回复
matlaB求解多项式反函数遇阻
已经有7人回复
帮忙看看这个平面图用matlab怎么画
已经有19人回复
求助大侠帮忙,有关matlab模拟数据
已经有29人回复
求各位前辈帮忙!matlab解复数方程,出现图中的警告,怎来修改呢?谢谢了啊
已经有5人回复
如何用matlab处理txt文件里的数据
已经有7人回复
求助:如何在matlab中把figure的曲线对应的data导出来xls或者txt格式
已经有8人回复
【求助】用matlab对多项式函数求导
已经有3人回复
用matlab对多项式函数求导
已经有1人回复
【求助】请教一个matlab程序,谢谢帮忙!!
已经有15人回复
【求助】MATLAB中多项式除法问题
已经有4人回复
【原创】多项式和非多项式曲线拟合的MATLAB实现视频教程
已经有10人回复
【求助】matlab读取fortran输出的txt文件【已解决】
已经有3人回复

wangyuewu08
木虫 (著名写手)
- 应助: 13 (小学生)
- 金币: 2794
- 红花: 4
- 帖子: 1141
- 在线: 279.1小时
- 虫号: 1290073
- 注册: 2011-05-09
- 性别: GG
- 专业: 制造系统与自动化
【答案】应助回帖
★ ★
cw277(金币+8): 牛人写出来的程序就是不一样啊~~ 2011-12-08 23:16:45
jjdg(金币+2): 感谢参与 2011-12-09 00:53:08
cw277(金币+2): 希望前辈能不改我程序初始化部分(即end之前),能跑完1152步得到结果。 当然end后面的程序可以改。 辛苦了~~ 2011-12-12 22:49:09
cw277(金币+8): 牛人写出来的程序就是不一样啊~~ 2011-12-08 23:16:45
jjdg(金币+2): 感谢参与 2011-12-09 00:53:08
cw277(金币+2): 希望前辈能不改我程序初始化部分(即end之前),能跑完1152步得到结果。 当然end后面的程序可以改。 辛苦了~~ 2011-12-12 22:49:09
给楼主写了个拆分字符串的程序,在ii = 500, 600, 700的情况下调试成功,可以自行设置单个文件的大小。楼主要做的就是耐心等待了。![]() 本来以为系统会逐个刷新出新建的文件,但那些文件几乎是同时出现的。 ![]() 看到楼主在循环体中加入了i用来显示程序的运行,我在输出的循环体中也加入了显示语句,这样就可以知道程序是否在执行,它们貌似也是一起出来。 向楼主学习。 |

14楼2011-12-08 18:11:13
lshok
铁杆木虫 (著名写手)
- 应助: 11 (小学生)
- 金币: 5536.1
- 红花: 4
- 沙发: 1
- 帖子: 1537
- 在线: 262.5小时
- 虫号: 1225253
- 注册: 2011-03-08
- 专业: 物理学II
2楼2011-12-05 22:44:26
wangyuewu08
木虫 (著名写手)
- 应助: 13 (小学生)
- 金币: 2794
- 红花: 4
- 帖子: 1141
- 在线: 279.1小时
- 虫号: 1290073
- 注册: 2011-05-09
- 性别: GG
- 专业: 制造系统与自动化
【答案】应助回帖
★
cw277(金币+1): 这个可以考虑。。 其实主要原因是在 s=char(S(1)); 这一句。 S(1)的表达式太多了,以致于时间花很久 2011-12-06 22:57:04
jjdg(金币+1): 感谢参与 2011-12-07 01:54:13
cw277(金币+1): 这个可以考虑。。 其实主要原因是在 s=char(S(1)); 这一句。 S(1)的表达式太多了,以致于时间花很久 2011-12-06 22:57:04
jjdg(金币+1): 感谢参与 2011-12-07 01:54:13
|
在PC上,二进制文件和格式化文件的打开是有区别的,打开文件的语句中需要指定文件为文本格式 fid=fopen('c:\char2.txt','wt'); 楼主试试,看错误是不是出在这里。 给楼主提个建议,如果程序的其它地方不需要用t1,t2,t3,那么在循环中将t1(i),t2(i),t3(i)改为t1,t2,t3,这样可以节省大量的空间和时间。 如果要用到,那么在循环之前预定义一下比较好。 |

3楼2011-12-06 12:20:07
wangyuewu08
木虫 (著名写手)
- 应助: 13 (小学生)
- 金币: 2794
- 红花: 4
- 帖子: 1141
- 在线: 279.1小时
- 虫号: 1290073
- 注册: 2011-05-09
- 性别: GG
- 专业: 制造系统与自动化

4楼2011-12-06 19:09:03
![]() |
5楼2011-12-07 00:08:58
6楼2011-12-07 10:00:07
hxyue
至尊木虫 (职业作家)
- 应助: 4 (幼儿园)
- 金币: 14031.5
- 散金: 106
- 红花: 33
- 帖子: 3505
- 在线: 388.6小时
- 虫号: 1378326
- 注册: 2011-08-24
- 专业: 计算机应用技术
【答案】应助回帖
★ ★
cw277(金币+3): 非常对。 所以这才是我求助的关键所在, 怎么去解决这个长字符串的问题? 2011-12-08 09:27:52
余泽成(金币+2): 谢谢参与应助!欢迎常来程序语言版! 2011-12-08 14:10:21
cw277(金币+3): 非常对。 所以这才是我求助的关键所在, 怎么去解决这个长字符串的问题? 2011-12-08 09:27:52
余泽成(金币+2): 谢谢参与应助!欢迎常来程序语言版! 2011-12-08 14:10:21
|
i = 650 Elapsed time is 979.490715 seconds. 并且随着ii的增大程序用时急剧增加,可能我机子太烂了,呵呵 同时s的长度也在迅速增大 估计和txt无关,而是因为超过了matlab字符串长度的上限 你自己试试,z=zeros(1,2^(26))正常,而z=zeros(1,2^(26))就 Out of memory了 |

7楼2011-12-07 15:56:07
hxyue
至尊木虫 (职业作家)
- 应助: 4 (幼儿园)
- 金币: 14031.5
- 散金: 106
- 红花: 33
- 帖子: 3505
- 在线: 388.6小时
- 虫号: 1378326
- 注册: 2011-08-24
- 专业: 计算机应用技术

8楼2011-12-07 15:58:10
wangyuewu08
木虫 (著名写手)
- 应助: 13 (小学生)
- 金币: 2794
- 红花: 4
- 帖子: 1141
- 在线: 279.1小时
- 虫号: 1290073
- 注册: 2011-05-09
- 性别: GG
- 专业: 制造系统与自动化
【答案】应助回帖
★ ★
cw277(金币+8): 谢谢高手指点~~ 多给点 2011-12-07 23:19:58
cw277: 回帖置顶 2011-12-07 23:20:05
xzhdty(金币+2): 欢迎常来程序语言看看 2011-12-08 16:22:09
cw277(金币+8): 谢谢高手指点~~ 多给点 2011-12-07 23:19:58
cw277: 回帖置顶 2011-12-07 23:20:05
xzhdty(金币+2): 欢迎常来程序语言看看 2011-12-08 16:22:09
|
在我的电脑上运行出结果了,楼主程序的结果存放在附件char2.txt中。 我修改之后,运行的结果存放在char2_version_2.txt中。 修改后的程序是program_version_2.txt。 针对matlab的提示,我对楼主的程序进行了修改,并对运行时间进行了比较。因为运行时间比较长,只比较了一次,所以时间比较的结果可能不准确。 我主要简化了S,t1,t2,t3的初始化(楼主对S的初始化太费时费力,还容易出错),其它部分与楼主源程序一样,除了输出路径改为E(我不太习惯在C盘放文件)。 |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : program_version_2.txt
- 附件 2 : char2.txt
- 附件 3 : char2_version_2.txt
2011-12-07 19:45:46, 796 bytes
2011-12-07 19:46:05, 3.27 M
2011-12-07 19:46:27, 3.27 M

9楼2011-12-07 19:46:30
wangyuewu08
木虫 (著名写手)
- 应助: 13 (小学生)
- 金币: 2794
- 红花: 4
- 帖子: 1141
- 在线: 279.1小时
- 虫号: 1290073
- 注册: 2011-05-09
- 性别: GG
- 专业: 制造系统与自动化

10楼2011-12-07 19:49:20












回复此楼

向楼主学习。
