Blame view
fibonacci.py
891 Bytes
cd7c3b792 e41d3f75-d864-476... |
1 2 |
#!/usr/bin/env python3 # -*- coding: utf-8 -*- |
124d425d7 b0474d3c-36c0-4ca... |
3 |
import sys, argparse |
cd7c3b792 e41d3f75-d864-476... |
4 |
|
124d425d7 b0474d3c-36c0-4ca... |
5 6 7 8 9 10 11 12 |
parser = argparse.ArgumentParser(description=u"Calcul et affiche les n premiers nombres de la suite de Fibonacci.") parser.add_argument("number", help=u"Nombre maximum de calcul de la séquence. Ce nombre doit égal ou supérieur à 2.", type=int) parser.add_argument("-g", "--display-golden-number", dest="golden", help=u"Afficher le nombre d'or.", action="store_true") parser.add_argument("--log", default=sys.stdout, type=argparse.FileType('w'), help=u"Fichier où sera enregistré le résultat.") args = parser.parse_args() if args.number < 2: print(u"Indiquer un nombre supérieur ou égal à 2.") |
cd7c3b792 e41d3f75-d864-476... |
13 14 15 |
sys.exit(1) a,b = 0,1 |
124d425d7 b0474d3c-36c0-4ca... |
16 17 |
while b < args.number: print("{:d}".format(b), file=args.log) |
cd7c3b792 e41d3f75-d864-476... |
18 |
a,b = b,a+b |
124d425d7 b0474d3c-36c0-4ca... |
19 20 21 |
if args.golden: print(u" b/a = {:1.15f} (Nombre d'or)".format(b/a), file=args.log) |
cd7c3b792 e41d3f75-d864-476... |
22 |
|
124d425d7 b0474d3c-36c0-4ca... |
23 24 |
args.log.close() sys.exit(0) |