#!/usr/bin/env python # -*- coding: utf-8 -*- # written by Christoph Federrath, 2019 # define imports import argparse import numpy as np import timeit # ===== the following applies in case we are running this in script mode ===== if __name__ == "__main__": parser = argparse.ArgumentParser(description='Sum numbers from 1 to n.') parser.add_argument("-n", "--n", type=float, help="Number n", default=5e6) args = parser.parse_args() # cast float n to int int_n = int(args.n) # print print("Summing all integers from 1 to "+str(int_n)+"...") # define array with numbers (for np.sum() below) numbers = np.arange(int_n)+1 # start the timer start_time = timeit.default_timer() # sum up numbers 1 to n using a loop #sum = 0.0 #for i in range(1, int_n+1): # sum += i # sum up with numpy.sum() sum = np.sum(numbers) # stop the timer end_time = timeit.default_timer() # print the sum to stdout print("Sum = "+str(sum)) # print the time it took print("Run time = "+str(end_time-start_time)+" s")