From 124d425d7fe8419036e98abd0c9eb6375dc93d61 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 16 Sep 2015 09:45:20 +0200 Subject: [PATCH] b0474d3c-36c0-4caa-9307-1155648ed90c --- README.md | 3 +-- fibonacci.py | 25 +++++++++++++++---------- fibonacci.py.asc | 11 ----------- 3 files changed, 16 insertions(+), 23 deletions(-) delete mode 100644 fibonacci.py.asc diff --git a/README.md b/README.md index 77d7cc2..5e2fedf 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,6 @@ df2dfd675abb0742ff838fe0467776f3c1d06c6829bfd905dbd663356640c18a syllabes.sh.as 5b745b2c7897c0c07bd33d7467adb837588bd412d4eea107b758586e2c0522b2 fibonacci.php 2b917506ec9732c1272df4345a16bfecd0dce54754fd7c40eb7830a3653a4818 fibonacci.php.asc d41722d8fb508f584b063d7bf0e8d1c19a119d62deba46245f8afdd4766ef391 fibonacci.py -07ef45ae9fb104c64f9a150c0fadd8c99068f191c80378b415b1f1531ac70812 fibonacci.py.asc 560b6b2b3446cb7c7fd26f6576d4e469890791dbb94db9254f446c9e304c50f3 fibonacci.sh d91fac27b81d7fc938281630ee405f75da3a6869e6e95955e7ea7bc756dce939 fibonacci.sh.asc @@ -188,4 +187,4 @@ $ is_numeric ee55ee ; echo $? 1 $ is_numeric 65465484 ; echo $? 0 -``` \ No newline at end of file +``` diff --git a/fibonacci.py b/fibonacci.py index 6595c2d..eb869f2 100755 --- a/fibonacci.py +++ b/fibonacci.py @@ -1,21 +1,26 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -import sys +import sys, argparse -if len(sys.argv) == 1 or not sys.argv[1].isnumeric() or int(sys.argv[1]) <= 0: - msg = """\ -Usage: {:s} nbr_int - nbr_int: Un nombre entier supérieur à 0""".format(sys.argv[0]) - print(msg) +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.") sys.exit(1) a,b = 0,1 -while b < int(sys.argv[1]): - print(b) +while b < args.number: + print("{:d}".format(b), file=args.log) a,b = b,a+b -print("b/a = {:1.15f}".format(b/a)) +if args.golden: + print(u"\nb/a = {:1.15f} (Nombre d'or)".format(b/a), file=args.log) -sys.exit(0) +args.log.close() +sys.exit(0) \ No newline at end of file diff --git a/fibonacci.py.asc b/fibonacci.py.asc deleted file mode 100644 index e859f96..0000000 --- a/fibonacci.py.asc +++ /dev/null @@ -1,11 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1 - -iQEcBAABAgAGBQJV7UwfAAoJEIgCKezOqEu6U1AH/1qPD0oQcgdl2wpo6M3ZAaFM -0VlYQ34PhDKlYwJIF/yl8/4FdZl9hMOwnSfboUgpIcqeHYOQwwRODrerYVpf2iOA -zr2/dCNwDviRaG9jP3cZySWnfwgK2y9wS6/6jj/G3sewAV6dETJ+fsz6Fu8hdZkf -KSHhZbhVZQnB5hVUs2/8UL5NzoNCz1glCjrRYDSVLE3+qkGRPIFFOHSVJdGJzgOn -jCjkH2efX0Y7tl3Mf7MdTZ5auwlzLIo3/vawbkWI+aTInexWdxAy5MSlT8EcyvHG -Rz0BdVnduYcM/7wJXrxyvisCSZgCnT3PNw6nrDyeVM5TCwrvYilsMt0ncEp5bck= -=AaPa ------END PGP SIGNATURE----- -- 1.7.9.5