【问题标题】:Advice with a file program asking for the largest number文件程序的建议,要求最大的数字
【发布时间】:2013-03-22 00:06:16
【问题描述】:

这次的任务是处理文件的使用。 “假设一个包含一系列整数的文件名为 numbers.dat 并且存在于计算机磁盘上。设计一个程序来确定文件中存储的最大数字。讲师告诉我们不要使用基于数组的实现,并包含一个变量计算从文件中读取的项目数并在显示文件中找到的最大值后输出此计数。我在不使用基于数组的实现的情况下如何获得最大值时遇到了麻烦。这是我到目前为止所拥有的:

    def main():
        n = 1
        largest = None

        num_input = int(input("How many numbers do " + "you have to input? "))

        numbers_file = open('numbers.dat', 'w')

        for count in range(1, num_input + 1):
            number = float(input('Enter the number #' + str(count) + ': '))

        if largest is None or n > largest:
            largest = n
        print('The largest value inputted is: ', largest)
        numbers_file.close()   
    main()

【问题讨论】:

  • 那么问题是什么?
  • 问题是“你能多快完成我的作业?”
  • 我不知道如何找到最大的数字并根据用户在文件中写的内容输出它。
  • 我刚刚编辑了代码,加入了寻找最大值,但是最大的总是返回 1

标签: file-io python-3.x


【解决方案1】:

假设您有一张纸,上面有数百个数字。只用你的大脑和眼睛,阅读这些数字并找到最大的那个。

你会怎么做?

现在,你会如何告诉计算机以同样的方式做呢?

【讨论】:

    【解决方案2】:

    使用一个变量来存储当前数字并假设它是最大的。当您浏览文件时,将存储的数字与文件中的当前数字进行比较,如果文件中的数字更大,则将其存储在变量中,否则继续读取文件。重复此操作,直到到达文件末尾。

     largest = 0;
     count = 0
     while ((num =input.readline()) != EOF) {
          count++;
          if (largest < num) {
               largest = num;
          }
       }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-12
      相关资源
      最近更新 更多