楼主: shijianzhuyu14
8863 3

[问答] 循环嵌套应用 [推广有奖]

  • 3关注
  • 0粉丝

初中生

47%

还不是VIP/贵宾

-

威望
0
论坛币
31 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
501 点
帖子
10
精华
0
在线时间
15 小时
注册时间
2015-3-12
最后登录
2016-7-25

楼主
shijianzhuyu14 发表于 2015-3-17 16:52:01 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
现在有一段程序如下:
r<-6371.004
d=0
for(i in 1:2){
x2=b[i,2]
y2=b[i,3]
{for(j in 1:10){
x1=a[j,6]
y1=a[j,5]
z=x1-x2
d[i+j-1]=r*acos(cos(pi*y1/180)*cos(pi*y2/180)*cos(pi*z/180)+sin(pi*y1/180)*sin(pi*y2/180))
}
}
}
d
我想实现的是i循环两次,j循环10次,然后一共得到20个d的数据,但是d[i+j-1]最后出来的是11个,现知道此处有错误,请问怎样修改?此外,还想实现一个功能:想用if语句判断当d值小于某一数时(例如25),输出所有满足的b中第一列对应的数,这一步应该怎样实现,谢谢!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:程序

沙发
qoiqpwqr 发表于 2015-3-17 20:08:58
  1. r <- 6371.004
  2. d <- matrix(NA, 2, 10)
  3. for (i in 1:2) {
  4.   x2 <- b[i, 2]
  5.   y2 <- b[i, 3]
  6.   for (j in 1:10) {
  7.   x1 <- a[j, 6]
  8.   y1 <- a[j, 5]
  9.   z <- x1 - x2
  10.   d[i, j] <- r*acos(cos(pi*y1/180)*cos(pi*y2/180)*cos(pi*z/180)+sin(pi*y1/180)*sin(pi*y2/180))
  11. }
  12. }
  13. d
复制代码
已有 1 人评分学术水平 收起 理由
李会超 + 1 精彩帖子

总评分: 学术水平 + 1   查看全部评分

藤椅
shijianzhuyu14 发表于 2015-3-18 14:54:15
qoiqpwqr 发表于 2015-3-17 20:08
谢谢了,还想请问一下第二个问题应该怎样实现呢?b是csv格式的表格形式,想当d满足要求时,输出所对应的第一列第i行个单元格里的内容,应该怎样实现?能否帮忙解决一下,谢谢!

板凳
fwdshen 发表于 2016-4-4 02:39:40
小白问一句, b 和a都没有定义怎么能直接运行?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-20 16:28