声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1559|回复: 14

[编程技巧] 给z逐渐增加一个增量,但当Y相同时,z的增量相同

[复制链接]
发表于 2009-2-15 23:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我有如下数,需要给Z一个逐渐变大的增量(但Y相同时增量相同),dz=0.5;后面就应该得到当Y=-3时z=9.5,Y=-2.9时Z的值都+1,Y=-2.8时Z的值都+1.5,Y=-2.7时Z的值都+2,就这样给Z增加,谢谢!
资料见4F

[ 本帖最后由 ChaChing 于 2009-3-4 20:26 编辑 ]
回复
分享到:

使用道具 举报

 楼主| 发表于 2009-2-15 23:56 | 显示全部楼层

回复 楼主 fanzhenjie 的帖子

我写的不对的程序如下,发现Z不是逐渐递增的:
clc; clear;
[y1,z1]=meshgrid(-3:0.1:3,-3:0.1:3);
x1=y1.^2+z1.^2;
t=find(x1<0 | x1>9)
x1(t)=[]; y1(t)=[]; z1(t)=[];
for i=1:31,k=0.5.*i;
quan=[reshape(z1,1,[]);reshape(y1,1,[]);reshape(x1+i,1,[])]';
end

[ 本帖最后由 ChaChing 于 2009-3-4 20:27 编辑 ]
发表于 2009-2-22 14:58 | 显示全部楼层

回复 沙发 fanzhenjie 的帖子

没有看懂LZ的意思:需要给Z一个逐渐变大的增量(但Y相同时增量相同)?
 楼主| 发表于 2009-3-3 11:42 | 显示全部楼层

给z逐渐增加一个增量,但当Y相同时,z的增量相同

给z逐渐增加一个增量,但当Y相同时,z的增量相同
我有如下数,需要给Z一个逐渐变大的增量(但Y相同时增量相同,意思就是对于相同的Y坐标,Z的增量肯定是相同的,当Y坐标增大时,Z的增量增加0.5),增量dz=0.5;给了增量后,后面就应该得到当Y=-3时z=9.5,Y=-2.9时Z的值都+1,Y=-2.8时Z的值都+1.5,Y=-2.7时Z的值都+2,就这样给Z增加,X,Y坐标不变,怎么写个控制增量的程序呀,谢谢!
X             Y           Z
0             -3          9      +0.5
-0.7        -2.9        8.9     +1
-0.6        -2.9        8.77    +1
-0.5        -2.9        8.66    +1
-0.4        -2.9        8.57   +1
-0.3        -2.9        8.5
-0.2        -2.9        8.45
-0.1        -2.9        8.42
0        -2.9        8.41
0.1        -2.9        8.42
0.2        -2.9        8.45
0.3        -2.9        8.5
0.4        -2.9        8.57
0.5        -2.9        8.66
0.6        -2.9        8.77
0.7        -2.9        8.9
-1        -2.8        8.84                  +1.5
-0.9        -2.8        8.649999999999999           +1.5
-0.8        -2.8        8.479999999999999     +1。5
-0.7        -2.8        8.329999999999998
-0.6        -2.8        8.2
-0.5        -2.8        8.09
-0.4        -2.8        7.999999999999999
-0.3        -2.8        7.929999999999999
-0.2        -2.8        7.879999999999999
-0.1        -2.8        7.849999999999999
0        -2.8        7.839999999999999
0.1        -2.8        7.849999999999999
0.2        -2.8        7.879999999999999
0.3        -2.8        7.929999999999999
0.4        -2.8        7.999999999999999
0.5        -2.8        8.09
0.6        -2.8        8.2
0.7        -2.8        8.329999999999998
0.8        -2.8        8.479999999999999
0.9        -2.8        8.649999999999999
1        -2.8        8.84
-1.3        -2.7        8.98                     +2
-1.2        -2.7        8.73                      +2
-1.1        -2.7        8.5
-1        -2.7        8.290000000000001
-0.9        -2.7        8.100000000000001                +2
-0.8        -2.7        7.930000000000001
-0.7        -2.7        7.78
-0.6        -2.7        7.65
-0.5        -2.7        7.540000000000001
-0.4        -2.7        7.450000000000001
-0.3        -2.7        7.380000000000001
-0.2        -2.7        7.330000000000001
-0.1        -2.7        7.300000000000001
0        -2.7        7.290000000000001
0.1        -2.7        7.300000000000001
0.2        -2.7        7.330000000000001
0.3        -2.7        7.380000000000001
0.4        -2.7        7.450000000000001
0.5        -2.7        7.540000000000001
0.6        -2.7        7.65
0.7        -2.7        7.78
0.8        -2.7        7.930000000000001
0.9        -2.7        8.100000000000001
1        -2.7        8.290000000000001
1.1        -2.7        8.5
1.2        -2.7        8.73
1.3        -2.7        8.98
-1.4        -2.6        8.72                        +2.5
-1.3        -2.6        8.45                        +2.5
-1.2        -2.6        8.200000000000001
-1.1        -2.6        7.970000000000001
-1        -2.6        7.760000000000001
-0.9        -2.6        7.57
-0.8        -2.6        7.4
-0.7        -2.6        7.25
-0.6        -2.6        7.12
-0.5        -2.6        7.010000000000001
-0.4        -2.6        6.920000000000001
-0.3        -2.6        6.85
-0.2        -2.6        6.800000000000001
-0.1        -2.6        6.77
0        -2.6        6.760000000000001
0.1        -2.6        6.77
0.2        -2.6        6.800000000000001
0.3        -2.6        6.85
0.4        -2.6        6.920000000000001
0.5        -2.6        7.010000000000001
0.6        -2.6        7.12
0.7        -2.6        7.25
0.8        -2.6        7.4
0.9        -2.6        7.57
1        -2.6        7.760000000000001
1.1        -2.6        7.970000000000001
1.2        -2.6        8.200000000000001
1.3        -2.6        8.45
1.4        -2.6        8.72
-1.6        -2.5        8.809999999999999               +3
-1.5        -2.5        8.5
-1.4        -2.5        8.209999999999999                +3
-1.3        -2.5        7.94
-1.2        -2.5        7.69
-1.1        -2.5        7.46
-1        -2.5        7.25
-0.9        -2.5        7.06
-0.8        -2.5        6.89                         +3
-0.7        -2.5        6.739999999999999
-0.6        -2.5        6.609999999999999
-0.5        -2.5        6.5
-0.4        -2.5        6.41
-0.3        -2.5        6.34
-0.2        -2.5        6.29
-0.1        -2.5        6.26
0        -2.5        6.25
0.1        -2.5        6.26
0.2        -2.5        6.29
0.3        -2.5        6.34
0.4        -2.5        6.41
0.5        -2.5        6.5
0.6        -2.5        6.609999999999999
0.7        -2.5        6.739999999999999
0.8        -2.5        6.89
0.9        -2.5        7.06
1        -2.5        7.25
1.1        -2.5        7.46
1.2        -2.5        7.69
1.3        -2.5        7.94
1.4        -2.5        8.209999999999999
1.5        -2.5        8.5
1.6        -2.5        8.809999999999999

[ 本帖最后由 fanzhenjie 于 2009-3-3 11:46 编辑 ]

评分

1

查看全部评分

发表于 2009-3-3 23:48 | 显示全部楼层

回复 楼主 fanzhenjie 的帖子

这个和以前的一个帖子类似,不知是不是LZ发的?
 楼主| 发表于 2009-3-3 23:50 | 显示全部楼层

回复 沙发 ch_j1985 的帖子

是呀,一直以来没有把这个问题解决了,不知道哪位高手能指点一下呀,真的十分感谢!
发表于 2009-3-4 09:27 | 显示全部楼层
你没有写+的是不是也应该加 比如
-1.1        -2.6        7.970000000000001 应该加2.5
 楼主| 发表于 2009-3-4 11:16 | 显示全部楼层

回复 地板 yufeng 的帖子

恩,也应该加2.5呀,大家帮我看看如何实现这个呀!十分感谢!
 楼主| 发表于 2009-3-5 09:25 | 显示全部楼层

回复 8楼 fanzhenjie 的帖子

我的问题怎么没有人给我回复呀!大家帮我看看呀,急呀!
发表于 2009-3-5 11:33 | 显示全部楼层
那就用一个循环 然后在相应位置进行叠加 不过最后画图 要注意你的坐标和你的期望一样
 楼主| 发表于 2009-3-5 17:04 | 显示全部楼层

回复 10楼 yufeng 的帖子

对呀,可是我不知道怎么写这个循环,你能帮我写一下吗、谢谢!
 楼主| 发表于 2009-3-6 21:57 | 显示全部楼层

回复 11楼 fanzhenjie 的帖子

怎么没有人帮帮我看看我的贴子呀,十分希望大家帮我看看并留下珍贵的见解!
发表于 2009-3-6 23:42 | 显示全部楼层
个人至少看过3,4遍了!
就是看不太懂LZ要的!:loveliness:
发表于 2009-3-7 10:55 | 显示全部楼层
这个应该还算容易吧,按照我的理解,呵呵。
clear
clc
x=1:10;
y=[1 1,2,3*ones(1,3),5,6,7,7];
z=ones(1,10);
z1=z;
dz=.5;
z1(1)=z(1)+dz;
j=1;
for i=2:length(z)
    if y(i)-y(i-1) == 0
        z1(i)=z(i)+j*dz;
    else
        j=j+1;
        z1(i)=z(i)+j*dz;
    end
end
disp([z;y;z1])
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    2.0000    3.0000    3.0000    3.0000    5.0000    6.0000    7.0000    7.0000
    1.5000    1.5000    2.0000    2.5000    2.5000    2.5000    3.0000    3.5000    4.0000    4.0000

评分

1

查看全部评分

 楼主| 发表于 2009-3-9 09:40 | 显示全部楼层

回复 14楼 friendchj 的帖子

谢谢!真的,十分感谢!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-13 23:41 , Processed in 0.065020 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表