euristico 发表于 2020-8-20 20:38:55

求助,谢谢各位大神

本帖最后由 euristico 于 2020-8-20 20:42 编辑

刚开始自学python,没有任何编程基础的小白请教各位大神,我自己写了一个程序,用于计算平均值的,不知道错在哪里?
问题如下:
小明第一天以7元每股买入200股股票, 第二天以7.5元每股买入500股股票,第三天以7.2元买入1000股股票。请问他这三天的持股成本是多少?
我写的程序如下:
x=0
y=0
z=x*y
for i in range(3):
        x=int(input('请输入股数:'))
        y=float(input('请输入股价:'))
        z+=z
print(z/1700)
这是哪里出问题了呀?

zltzlt 发表于 2020-8-20 20:39:20

连缩进都没有的?

euristico 发表于 2020-8-20 20:43:02

zltzlt 发表于 2020-8-20 20:39
连缩进都没有的?

改了,加了缩进

euristico 发表于 2020-8-20 20:44:25

zltzlt 发表于 2020-8-20 20:39
连缩进都没有的?

大神帮忙看看,我加了缩进,提示i这里错了

qiuyouzhi 发表于 2020-8-20 20:51:08

euristico 发表于 2020-8-20 20:44
大神帮忙看看,我加了缩进,提示i这里错了

这样行吗
z = 0
for i in range(3):
      x=int(input('请输入股数:'))
      y=float(input('请输入股价:'))
      z += x * y
print(z/1700)

zy88888 发表于 2020-8-20 20:51:19

刚开始学,看不懂

1q23w31 发表于 2020-8-20 20:55:17

x=0
y=0
z=0
for i in range(3):
      x=int(input('请输入股数:'))
      y=float(input('请输入股价:'))
      z+=(x*y)
print(z/1700)

这样就行

euristico 发表于 2020-8-20 21:05:24

qiuyouzhi 发表于 2020-8-20 20:51
这样行吗

非常感谢,按照你这个方法解出来的答案是正确的。但是我改了数字以后却不正确了,如图C:\Users\euristico\Desktop\python自学视频\yuc

疾风怪盗 发表于 2020-8-20 21:11:08

a = 0
z = 0
for i in range(3):
    x = int(input('请输入股数:'))
    y = float(input('请输入股价:'))
    z += (x * y)# 存储花费金额
    a += x# 存储购买股数

print(z / a)
print(((200 * 7) + (500 * 7.5) + (1000 * 7.2)) / 1700)


x,y是临时的,不需要在循环外设置,(x*y)要在循环内计算

euristico 发表于 2020-8-20 21:13:46

qiuyouzhi 发表于 2020-8-20 20:51
这样行吗

非常感谢,就是这样!现在又有一个问题,要把1700用变量的形式表现出来,这样就可以用在每次股数不一样的计算了:)。我去试试

疾风怪盗 发表于 2020-8-20 21:16:18

euristico 发表于 2020-8-20 21:13
非常感谢,就是这样!现在又有一个问题,要把1700用变量的形式表现出来,这样就可以用在每次股数不一样的 ...

我发的代码,不就是把股数用变量形式计算了么

euristico 发表于 2020-8-20 21:19:48

1q23w31 发表于 2020-8-20 20:55
这样就行

好的,非常感谢,这样也可以:)

euristico 发表于 2020-8-20 21:36:53

疾风怪盗 发表于 2020-8-20 21:16
我发的代码,不就是把股数用变量形式计算了么

谢谢啊,我前面看了他们两个的,现在看到你的, 感谢 :)
页: [1]
查看完整版本: 求助,谢谢各位大神