From f440edda982fb47ae4ca7df5ad13243d6203f659 Mon Sep 17 00:00:00 2001 From: Audric Schiltknecht Date: Thu, 8 May 2014 18:53:25 +0200 Subject: Essaie reécriture du site avec pelican MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Suppression des anciens fichiers. Création architecture site pelican. Récupération des contenus statiques. --- CV/CV_1P.pdf | Bin 389707 -> 0 bytes CV/CV_2P.pdf | Bin 583850 -> 0 bytes Makefile | 108 +++++ Projets/1A/Allumettes.jar | Bin 12608 -> 0 bytes Projets/1A/Particules.tar.gz | Bin 18759 -> 0 bytes Projets/1A/Rapport-Enigma.pdf | Bin 76405 -> 0 bytes Projets/1A/Rapport-Huffman.pdf | Bin 221960 -> 0 bytes Projets/1A/Rapport-Particules.pdf | Bin 343835 -> 0 bytes Projets/1A/Rapport-UML.pdf | Bin 1083667 -> 0 bytes Projets/1A/UML.jar | Bin 331387 -> 0 bytes Projets/2A/Intergiciel.jar | Bin 463333 -> 0 bytes Projets/2A/MJC.tar.gz | Bin 38405 -> 0 bytes Projets/2A/Rapport-Intergiciel.pdf | Bin 292083 -> 0 bytes Projets/2A/Rapport-eBide.pdf | Bin 336012 -> 0 bytes Projets/2A/Rapport-uJava.pdf | Bin 195494 -> 0 bytes Projets/2A/Slides-eBide.pdf | Bin 223384 -> 0 bytes Projets/2A/VHDL.tar.bz2 | Bin 6260 -> 0 bytes Projets/2A/eBide.tar.gz | Bin 3430814 -> 0 bytes Projets/UdeM/Rapport-ShadowMap.pdf | Bin 749583 -> 0 bytes Projets/UdeM/ShadowMap.tar.gz | Bin 2211840 -> 0 bytes Projets/UdeM/Slides-kdtree.pdf | Bin 6065752 -> 0 bytes Projets/UdeM/paper107.pdf | Bin 1438879 -> 0 bytes TIPE_2007/C/Sauv/TFD - C.tar.bz2 | Bin 6512 -> 0 bytes TIPE_2007/C/Sauv/TFD - C.zip | Bin 10576 -> 0 bytes TIPE_2007/C/TFD - C.tar.bz2 | Bin 6447 -> 0 bytes TIPE_2007/C/TFD - C.zip | Bin 10496 -> 0 bytes TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf | Bin 6737806 -> 0 bytes TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC | Bin 6725908 -> 0 bytes TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf | Bin 98762 -> 0 bytes TIPE_2007/Maple/TFD - Old.mw | 496 --------------------- TIPE_2007/Maple/TFD.mw | 472 -------------------- TIPE_2007/Octave/Multiplication.m | 22 - TIPE_2007/Octave/TFD - Octave.tar.bz2 | Bin 1000 -> 0 bytes TIPE_2007/Octave/TFD - Octave.zip | Bin 1321 -> 0 bytes TIPE_2007/Octave/TFDI - Octave.tar.bz2 | Bin 1046 -> 0 bytes TIPE_2007/Octave/TFDI - Octave.zip | Bin 1380 -> 0 bytes TIPE_2007/index.html | 110 ----- TIPE_2007/index.html.plain | 73 --- content/pages/a-propos.rst | 14 + content/pages/cv.rst | 7 + content/pages/tipe.rst | 7 + content/static/CV/CV_1P.pdf | Bin 0 -> 389707 bytes content/static/CV/CV_2P.pdf | Bin 0 -> 583850 bytes content/static/Projets/1A/Allumettes.jar | Bin 0 -> 12608 bytes content/static/Projets/1A/Particules.tar.gz | Bin 0 -> 18759 bytes content/static/Projets/1A/Rapport-Enigma.pdf | Bin 0 -> 76405 bytes content/static/Projets/1A/Rapport-Huffman.pdf | Bin 0 -> 221960 bytes content/static/Projets/1A/Rapport-Particules.pdf | Bin 0 -> 343835 bytes content/static/Projets/1A/Rapport-UML.pdf | Bin 0 -> 1083667 bytes content/static/Projets/1A/UML.jar | Bin 0 -> 331387 bytes content/static/Projets/2A/Intergiciel.jar | Bin 0 -> 463333 bytes content/static/Projets/2A/MJC.tar.gz | Bin 0 -> 38405 bytes content/static/Projets/2A/Rapport-Intergiciel.pdf | Bin 0 -> 292083 bytes content/static/Projets/2A/Rapport-eBide.pdf | Bin 0 -> 336012 bytes content/static/Projets/2A/Rapport-uJava.pdf | Bin 0 -> 195494 bytes content/static/Projets/2A/Slides-eBide.pdf | Bin 0 -> 223384 bytes content/static/Projets/2A/VHDL.tar.bz2 | Bin 0 -> 6260 bytes content/static/Projets/2A/eBide.tar.gz | Bin 0 -> 3430814 bytes content/static/Projets/UdeM/Rapport-ShadowMap.pdf | Bin 0 -> 749583 bytes content/static/Projets/UdeM/ShadowMap.tar.gz | Bin 0 -> 2211840 bytes content/static/Projets/UdeM/Slides-kdtree.pdf | Bin 0 -> 6065752 bytes content/static/Projets/UdeM/paper107.pdf | Bin 0 -> 1438879 bytes content/static/TIPE_2007/C/Sauv/TFD - C.tar.bz2 | Bin 0 -> 6512 bytes content/static/TIPE_2007/C/Sauv/TFD - C.zip | Bin 0 -> 10576 bytes content/static/TIPE_2007/C/TFD - C.tar.bz2 | Bin 0 -> 6447 bytes content/static/TIPE_2007/C/TFD - C.zip | Bin 0 -> 10496 bytes .../TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf | Bin 0 -> 6737806 bytes .../Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC | Bin 0 -> 6725908 bytes .../Dossier/Transparents_TIPE_2007_TF.pdf | Bin 0 -> 98762 bytes content/static/TIPE_2007/Maple/TFD - Old.mw | 496 +++++++++++++++++++++ content/static/TIPE_2007/Maple/TFD.mw | 472 ++++++++++++++++++++ content/static/TIPE_2007/Octave/Multiplication.m | 22 + .../static/TIPE_2007/Octave/TFD - Octave.tar.bz2 | Bin 0 -> 1000 bytes content/static/TIPE_2007/Octave/TFD - Octave.zip | Bin 0 -> 1321 bytes .../static/TIPE_2007/Octave/TFDI - Octave.tar.bz2 | Bin 0 -> 1046 bytes content/static/TIPE_2007/Octave/TFDI - Octave.zip | Bin 0 -> 1380 bytes cv.html | 170 ------- index.html | 55 --- pelicanconf.py | 34 ++ projets.html | 249 ----------- publishconf.py | 24 + styles/cv.css | 26 -- styles/projets.css | 17 - styles/simpleelegance03/images/button.gif | Bin 200 -> 0 bytes styles/simpleelegance03/images/colors.gif | Bin 1413 -> 0 bytes styles/simpleelegance03/images/hr.gif | Bin 160 -> 0 bytes styles/simpleelegance03/images/image.gif | Bin 706 -> 0 bytes styles/simpleelegance03/images/link.gif | Bin 56 -> 0 bytes styles/simpleelegance03/images/list.gif | Bin 51 -> 0 bytes styles/simpleelegance03/images/more.gif | Bin 58 -> 0 bytes styles/simpleelegance03/index.html | 100 ----- styles/simpleelegance03/style.css | 242 ---------- 92 files changed, 1184 insertions(+), 2032 deletions(-) delete mode 100644 CV/CV_1P.pdf delete mode 100644 CV/CV_2P.pdf create mode 100644 Makefile delete mode 100644 Projets/1A/Allumettes.jar delete mode 100644 Projets/1A/Particules.tar.gz delete mode 100644 Projets/1A/Rapport-Enigma.pdf delete mode 100644 Projets/1A/Rapport-Huffman.pdf delete mode 100644 Projets/1A/Rapport-Particules.pdf delete mode 100644 Projets/1A/Rapport-UML.pdf delete mode 100644 Projets/1A/UML.jar delete mode 100644 Projets/2A/Intergiciel.jar delete mode 100644 Projets/2A/MJC.tar.gz delete mode 100644 Projets/2A/Rapport-Intergiciel.pdf delete mode 100644 Projets/2A/Rapport-eBide.pdf delete mode 100644 Projets/2A/Rapport-uJava.pdf delete mode 100644 Projets/2A/Slides-eBide.pdf delete mode 100644 Projets/2A/VHDL.tar.bz2 delete mode 100644 Projets/2A/eBide.tar.gz delete mode 100644 Projets/UdeM/Rapport-ShadowMap.pdf delete mode 100644 Projets/UdeM/ShadowMap.tar.gz delete mode 100644 Projets/UdeM/Slides-kdtree.pdf delete mode 100644 Projets/UdeM/paper107.pdf delete mode 100644 TIPE_2007/C/Sauv/TFD - C.tar.bz2 delete mode 100644 TIPE_2007/C/Sauv/TFD - C.zip delete mode 100644 TIPE_2007/C/TFD - C.tar.bz2 delete mode 100644 TIPE_2007/C/TFD - C.zip delete mode 100644 TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf delete mode 100644 TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC delete mode 100644 TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf delete mode 100644 TIPE_2007/Maple/TFD - Old.mw delete mode 100644 TIPE_2007/Maple/TFD.mw delete mode 100644 TIPE_2007/Octave/Multiplication.m delete mode 100644 TIPE_2007/Octave/TFD - Octave.tar.bz2 delete mode 100644 TIPE_2007/Octave/TFD - Octave.zip delete mode 100644 TIPE_2007/Octave/TFDI - Octave.tar.bz2 delete mode 100644 TIPE_2007/Octave/TFDI - Octave.zip delete mode 100644 TIPE_2007/index.html delete mode 100644 TIPE_2007/index.html.plain create mode 100644 content/pages/a-propos.rst create mode 100644 content/pages/cv.rst create mode 100644 content/pages/tipe.rst create mode 100644 content/static/CV/CV_1P.pdf create mode 100644 content/static/CV/CV_2P.pdf create mode 100644 content/static/Projets/1A/Allumettes.jar create mode 100644 content/static/Projets/1A/Particules.tar.gz create mode 100644 content/static/Projets/1A/Rapport-Enigma.pdf create mode 100644 content/static/Projets/1A/Rapport-Huffman.pdf create mode 100644 content/static/Projets/1A/Rapport-Particules.pdf create mode 100644 content/static/Projets/1A/Rapport-UML.pdf create mode 100644 content/static/Projets/1A/UML.jar create mode 100644 content/static/Projets/2A/Intergiciel.jar create mode 100644 content/static/Projets/2A/MJC.tar.gz create mode 100644 content/static/Projets/2A/Rapport-Intergiciel.pdf create mode 100644 content/static/Projets/2A/Rapport-eBide.pdf create mode 100644 content/static/Projets/2A/Rapport-uJava.pdf create mode 100644 content/static/Projets/2A/Slides-eBide.pdf create mode 100644 content/static/Projets/2A/VHDL.tar.bz2 create mode 100644 content/static/Projets/2A/eBide.tar.gz create mode 100644 content/static/Projets/UdeM/Rapport-ShadowMap.pdf create mode 100644 content/static/Projets/UdeM/ShadowMap.tar.gz create mode 100644 content/static/Projets/UdeM/Slides-kdtree.pdf create mode 100644 content/static/Projets/UdeM/paper107.pdf create mode 100644 content/static/TIPE_2007/C/Sauv/TFD - C.tar.bz2 create mode 100644 content/static/TIPE_2007/C/Sauv/TFD - C.zip create mode 100644 content/static/TIPE_2007/C/TFD - C.tar.bz2 create mode 100644 content/static/TIPE_2007/C/TFD - C.zip create mode 100644 content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf create mode 100644 content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC create mode 100644 content/static/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf create mode 100644 content/static/TIPE_2007/Maple/TFD - Old.mw create mode 100644 content/static/TIPE_2007/Maple/TFD.mw create mode 100644 content/static/TIPE_2007/Octave/Multiplication.m create mode 100644 content/static/TIPE_2007/Octave/TFD - Octave.tar.bz2 create mode 100644 content/static/TIPE_2007/Octave/TFD - Octave.zip create mode 100644 content/static/TIPE_2007/Octave/TFDI - Octave.tar.bz2 create mode 100644 content/static/TIPE_2007/Octave/TFDI - Octave.zip delete mode 100644 cv.html delete mode 100644 index.html create mode 100644 pelicanconf.py delete mode 100644 projets.html create mode 100644 publishconf.py delete mode 100644 styles/cv.css delete mode 100644 styles/projets.css delete mode 100644 styles/simpleelegance03/images/button.gif delete mode 100644 styles/simpleelegance03/images/colors.gif delete mode 100644 styles/simpleelegance03/images/hr.gif delete mode 100644 styles/simpleelegance03/images/image.gif delete mode 100644 styles/simpleelegance03/images/link.gif delete mode 100644 styles/simpleelegance03/images/list.gif delete mode 100644 styles/simpleelegance03/images/more.gif delete mode 100644 styles/simpleelegance03/index.html delete mode 100644 styles/simpleelegance03/style.css diff --git a/CV/CV_1P.pdf b/CV/CV_1P.pdf deleted file mode 100644 index 1024c67..0000000 Binary files a/CV/CV_1P.pdf and /dev/null differ diff --git a/CV/CV_2P.pdf b/CV/CV_2P.pdf deleted file mode 100644 index 00ca488..0000000 Binary files a/CV/CV_2P.pdf and /dev/null differ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..1e744d9 --- /dev/null +++ b/Makefile @@ -0,0 +1,108 @@ +PY=python3 +PELICAN=pelican +PELICANOPTS= + +BASEDIR=$(CURDIR) +INPUTDIR=$(BASEDIR)/content +OUTPUTDIR=$(BASEDIR)/output +CONFFILE=$(BASEDIR)/pelicanconf.py +PUBLISHCONF=$(BASEDIR)/publishconf.py + +FTP_HOST=localhost +FTP_USER=anonymous +FTP_TARGET_DIR=/ + +SSH_HOST=www.chemicalstorm.org +SSH_PORT=22 +SSH_USER=storm +SSH_TARGET_DIR=/home/storm/ + +S3_BUCKET=my_s3_bucket + +CLOUDFILES_USERNAME=my_rackspace_username +CLOUDFILES_API_KEY=my_rackspace_api_key +CLOUDFILES_CONTAINER=my_cloudfiles_container + +DROPBOX_DIR=~/Dropbox/Public/ + +DEBUG ?= 0 +ifeq ($(DEBUG), 1) + PELICANOPTS += -D +endif + +help: + @echo 'Makefile for a pelican Web site ' + @echo ' ' + @echo 'Usage: ' + @echo ' make html (re)generate the web site ' + @echo ' make clean remove the generated files ' + @echo ' make regenerate regenerate files upon modification ' + @echo ' make publish generate using production settings ' + @echo ' make serve [PORT=8000] serve site at http://localhost:8000' + @echo ' make devserver [PORT=8000] start/restart develop_server.sh ' + @echo ' make stopserver stop local server ' + @echo ' make ssh_upload upload the web site via SSH ' + @echo ' make rsync_upload upload the web site via rsync+ssh ' + @echo ' make dropbox_upload upload the web site via Dropbox ' + @echo ' make ftp_upload upload the web site via FTP ' + @echo ' make s3_upload upload the web site via S3 ' + @echo ' make cf_upload upload the web site via Cloud Files' + @echo ' make github upload the web site via gh-pages ' + @echo ' ' + @echo 'Set the DEBUG variable to 1 to enable debugging, e.g. make DEBUG=1 html' + @echo ' ' + +html: + $(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS) + +clean: + [ ! -d $(OUTPUTDIR) ] || rm -rf $(OUTPUTDIR) + +regenerate: + $(PELICAN) -r $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS) + +serve: +ifdef PORT + cd $(OUTPUTDIR) && $(PY) -m pelican.server $(PORT) +else + cd $(OUTPUTDIR) && $(PY) -m pelican.server +endif + +devserver: +ifdef PORT + $(BASEDIR)/develop_server.sh restart $(PORT) +else + $(BASEDIR)/develop_server.sh restart +endif + +stopserver: + kill -9 `cat pelican.pid` + kill -9 `cat srv.pid` + @echo 'Stopped Pelican and SimpleHTTPServer processes running in background.' + +publish: + $(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(PUBLISHCONF) $(PELICANOPTS) + +ssh_upload: publish + scp -P $(SSH_PORT) -r $(OUTPUTDIR)/* $(SSH_USER)@$(SSH_HOST):$(SSH_TARGET_DIR) + +rsync_upload: publish + rsync -e "ssh -p $(SSH_PORT)" -P -rvz --delete $(OUTPUTDIR)/ $(SSH_USER)@$(SSH_HOST):$(SSH_TARGET_DIR) --cvs-exclude + +dropbox_upload: publish + cp -r $(OUTPUTDIR)/* $(DROPBOX_DIR) + +ftp_upload: publish + lftp ftp://$(FTP_USER)@$(FTP_HOST) -e "mirror -R $(OUTPUTDIR) $(FTP_TARGET_DIR) ; quit" + +s3_upload: publish + s3cmd sync $(OUTPUTDIR)/ s3://$(S3_BUCKET) --acl-public --delete-removed + +cf_upload: publish + cd $(OUTPUTDIR) && swift -v -A https://auth.api.rackspacecloud.com/v1.0 -U $(CLOUDFILES_USERNAME) -K $(CLOUDFILES_API_KEY) upload -c $(CLOUDFILES_CONTAINER) . + +github: publish + ghp-import $(OUTPUTDIR) + git push origin gh-pages + +.PHONY: html help clean regenerate serve devserver publish ssh_upload rsync_upload dropbox_upload ftp_upload s3_upload cf_upload github diff --git a/Projets/1A/Allumettes.jar b/Projets/1A/Allumettes.jar deleted file mode 100644 index d50b19c..0000000 Binary files a/Projets/1A/Allumettes.jar and /dev/null differ diff --git a/Projets/1A/Particules.tar.gz b/Projets/1A/Particules.tar.gz deleted file mode 100644 index 6df4bde..0000000 Binary files a/Projets/1A/Particules.tar.gz and /dev/null differ diff --git a/Projets/1A/Rapport-Enigma.pdf b/Projets/1A/Rapport-Enigma.pdf deleted file mode 100644 index 95d9b8e..0000000 Binary files a/Projets/1A/Rapport-Enigma.pdf and /dev/null differ diff --git a/Projets/1A/Rapport-Huffman.pdf b/Projets/1A/Rapport-Huffman.pdf deleted file mode 100644 index b87f8de..0000000 Binary files a/Projets/1A/Rapport-Huffman.pdf and /dev/null differ diff --git a/Projets/1A/Rapport-Particules.pdf b/Projets/1A/Rapport-Particules.pdf deleted file mode 100644 index cd1f6e0..0000000 Binary files a/Projets/1A/Rapport-Particules.pdf and /dev/null differ diff --git a/Projets/1A/Rapport-UML.pdf b/Projets/1A/Rapport-UML.pdf deleted file mode 100644 index a79de9a..0000000 Binary files a/Projets/1A/Rapport-UML.pdf and /dev/null differ diff --git a/Projets/1A/UML.jar b/Projets/1A/UML.jar deleted file mode 100644 index de8f86e..0000000 Binary files a/Projets/1A/UML.jar and /dev/null differ diff --git a/Projets/2A/Intergiciel.jar b/Projets/2A/Intergiciel.jar deleted file mode 100644 index f8c84ab..0000000 Binary files a/Projets/2A/Intergiciel.jar and /dev/null differ diff --git a/Projets/2A/MJC.tar.gz b/Projets/2A/MJC.tar.gz deleted file mode 100644 index b8a189a..0000000 Binary files a/Projets/2A/MJC.tar.gz and /dev/null differ diff --git a/Projets/2A/Rapport-Intergiciel.pdf b/Projets/2A/Rapport-Intergiciel.pdf deleted file mode 100644 index 24b92a4..0000000 Binary files a/Projets/2A/Rapport-Intergiciel.pdf and /dev/null differ diff --git a/Projets/2A/Rapport-eBide.pdf b/Projets/2A/Rapport-eBide.pdf deleted file mode 100644 index 8af09c7..0000000 Binary files a/Projets/2A/Rapport-eBide.pdf and /dev/null differ diff --git a/Projets/2A/Rapport-uJava.pdf b/Projets/2A/Rapport-uJava.pdf deleted file mode 100644 index c0c5fcd..0000000 Binary files a/Projets/2A/Rapport-uJava.pdf and /dev/null differ diff --git a/Projets/2A/Slides-eBide.pdf b/Projets/2A/Slides-eBide.pdf deleted file mode 100644 index 78e15d1..0000000 Binary files a/Projets/2A/Slides-eBide.pdf and /dev/null differ diff --git a/Projets/2A/VHDL.tar.bz2 b/Projets/2A/VHDL.tar.bz2 deleted file mode 100644 index 48de1fb..0000000 Binary files a/Projets/2A/VHDL.tar.bz2 and /dev/null differ diff --git a/Projets/2A/eBide.tar.gz b/Projets/2A/eBide.tar.gz deleted file mode 100644 index c5cfdb8..0000000 Binary files a/Projets/2A/eBide.tar.gz and /dev/null differ diff --git a/Projets/UdeM/Rapport-ShadowMap.pdf b/Projets/UdeM/Rapport-ShadowMap.pdf deleted file mode 100644 index 2804b04..0000000 Binary files a/Projets/UdeM/Rapport-ShadowMap.pdf and /dev/null differ diff --git a/Projets/UdeM/ShadowMap.tar.gz b/Projets/UdeM/ShadowMap.tar.gz deleted file mode 100644 index eddef2e..0000000 Binary files a/Projets/UdeM/ShadowMap.tar.gz and /dev/null differ diff --git a/Projets/UdeM/Slides-kdtree.pdf b/Projets/UdeM/Slides-kdtree.pdf deleted file mode 100644 index 4339dc4..0000000 Binary files a/Projets/UdeM/Slides-kdtree.pdf and /dev/null differ diff --git a/Projets/UdeM/paper107.pdf b/Projets/UdeM/paper107.pdf deleted file mode 100644 index 33c2f6b..0000000 Binary files a/Projets/UdeM/paper107.pdf and /dev/null differ diff --git a/TIPE_2007/C/Sauv/TFD - C.tar.bz2 b/TIPE_2007/C/Sauv/TFD - C.tar.bz2 deleted file mode 100644 index d8ca9fc..0000000 Binary files a/TIPE_2007/C/Sauv/TFD - C.tar.bz2 and /dev/null differ diff --git a/TIPE_2007/C/Sauv/TFD - C.zip b/TIPE_2007/C/Sauv/TFD - C.zip deleted file mode 100644 index bb60997..0000000 Binary files a/TIPE_2007/C/Sauv/TFD - C.zip and /dev/null differ diff --git a/TIPE_2007/C/TFD - C.tar.bz2 b/TIPE_2007/C/TFD - C.tar.bz2 deleted file mode 100644 index 9b207b7..0000000 Binary files a/TIPE_2007/C/TFD - C.tar.bz2 and /dev/null differ diff --git a/TIPE_2007/C/TFD - C.zip b/TIPE_2007/C/TFD - C.zip deleted file mode 100644 index 1e4a38f..0000000 Binary files a/TIPE_2007/C/TFD - C.zip and /dev/null differ diff --git a/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf b/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf deleted file mode 100644 index d6d5f29..0000000 Binary files a/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf and /dev/null differ diff --git a/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC b/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC deleted file mode 100644 index d8a7a47..0000000 Binary files a/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC and /dev/null differ diff --git a/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf b/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf deleted file mode 100644 index 25434b7..0000000 Binary files a/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf and /dev/null differ diff --git a/TIPE_2007/Maple/TFD - Old.mw b/TIPE_2007/Maple/TFD - Old.mw deleted file mode 100644 index 950dcc2..0000000 --- a/TIPE_2007/Maple/TFD - Old.mw +++ /dev/null @@ -1,496 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -restart: - - -
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure "na\303\257ve"</Font></Text-field> -Cette proc\303\251dure calcule les coefficients de Fourier par une m\303\251thode dite "naive". - - -TFDSimple:=proc(x) - -local n,X: -n:=nops(x): - -X:=[seq(sum(x[j]*exp(-2*I*(j-1)*(k-1)*Pi/n),j=1..n),k=1..n)]; - - -end proc: - - -
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure r\303\251cursive</Font></Text-field> -Cette proc\303\251dure prend en entr\303\251e une liste repr\303\251sentant les coefficients d'un polyn\303\264me dont on cherche \303\240 calculer les coefficients de Fourier. - - -TFDRecur:=proc(x) - -local N,CoefFFT,xp,xi,u,v,omega: -N:=nops(x): - -if N=1 then CoefFFT:=x: -else - -xp:=[seq(x[2*i],i=1..N/2)]: -xi:=[seq(x[2*i-1],i=1..N/2)]: -u:=TFDRecur(xp): -v:=TFDRecur(xi): - -omega:=exp(-2*I*Pi/N): - -CoefFFT:=[seq(omega^(k-1)*u[k]+v[k],k=1..N/2),seq(-omega^(k-1)*u[k]+v[k],k=1..N/2)]; -end if: -CoefFFT; - -end proc: - - -
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par it\303\251ration</Font></Text-field> -On va utiliser l'\303\251criture des divers coefficients en binaire. - - - -TFDIter:=proc(x) -local n,i,j,k,a,b,p,l,z,w,h,m,tmp: -n:=nops(x): -l:=x; -p:=n/2; #p: puissance max dans d\303\251composition. - -while p>=1 do -#On fait les signaux jusqu'a 2^p - z:=1; #premi\303\250re valeur de omega. - w:=exp(-I*Pi/p); #c'est omega. - - for h from 1 to p do #Variable servant \303\240 la d\303\251composition - for m from 1 to n/(2*p) do - #On va calculer le signal xm - #prendre l'exemple du Butterfly pour illustrer - a:=h+2*(m-1)*p:#indice du signal pour j_(r-1) - b:=a+p; - tmp:=(l[a]-l[b])*z: - l[a]:=l[a]+l[b]: - l[b]:=tmp: - end do: - #On passe au signal m+1 -> w<-w^(m+1) - z:=z*w: - end do: - p:=p/2: -end do: - -#On a maintenant notre liste contenant les signaux x_r -#Il reste \303\240 remettre les signaux dans le bon ordre. - -j:=1: -for i from 1 to n do - if j>i then tmp:=l[j]: - l[j]:=l[i]: - l[i]:=tmp: - end if: - p:=n/2: - while p>=2 and j>p do - j:=j-p: - p:=p/2: - end do: - j:=j+p: -end do: -return l; - - -end proc: - - -
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la Transform\303\251e Inverse.</Font></Text-field> -De m\303\252me, il est possible d'effectuer deux m\303\251thodes pour calculer la transform\303\251e inverse de Fourier : -
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode na\303\257ve</Font></Text-field> -En utilisant le m\303\252me algorithme, on obtient : - - -TFDISimple:=proc(X) - -local n,F: -n:=nops(X): - -F:=[seq((1/n)*sum(X[i]*exp(2*I*(j-1)*(i-1)*Pi/(n)),i=1..n),j=1..n)]; - -end proc: - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode r\303\251cursive</Font></Text-field> -Attention : Pour que l'on puisse retrouver les valeurs initiales, -il ne faut pas oublier de diviser par le nombre de valeurs. - - -TFDIRecur:=proc(X) -local Coef,N,Xi,Xp,U,V,Omega,k; -N:=nops(X); - -if N=1 then Coef:=X: -else - Xi:=[seq(X[2*k-1],k=1..N/2)]; - Xp:=[seq(X[2*k],k=1..N/2)]; - U:=TFDIRecur(Xi); - V:=TFDIRecur(Xp); - Omega:=exp(2*I*Pi/N); - Coef:=[seq(U[k]+Omega^(k-1)*V[k],k=1..N/2),seq(U[k]-Omega^(k-1)*V[k],k=1..N/2)]: - end if; -Coef; -end proc: - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode it\303\251rative</Font></Text-field> - - - -TFDIIter:=proc(x) -local n,i,j,k,a,b,p,l,z,w,h,m,tmp: -n:=nops(x): -l:=x; -p:=n/2; - -while p>=1 do - z:=1; - w:=exp(I*Pi/p); #C'est la diff\303\251rence - - for h from 1 to p do - for m from 1 to n/(2*p) do - a:=h+2*(m-1)*p: - b:=a+p; - tmp:=(l[a]-l[b])*z: - l[a]:=l[a]+l[b]: - l[b]:=tmp: - end do: - z:=z*w: - end do: - p:=p/2: -end do: - -j:=1: -for i from 1 to n do - if j>i then tmp:=l[j]: - l[j]:=l[i]: - l[i]:=tmp: - end if: - p:=n/2: - while p>=2 and j>p do - j:=j-p: - p:=p/2: - end do: - j:=j+p: -end do: -return l/n; -end proc: - - -
-
-
-<Text-field style="Heading 1" layout="Heading 1">Mesure du temps de calcul</Text-field> -On va ici s'inter\303\251sser \303\240 la mesure du temps pris pour calculer les coefficients de Fourier (Transform\303\251e Directe) par la m\303\251thode na\303\257ve et la m\303\251thode r\303\251cursive pour n grand, par exemple n=2^5, n=2^10, n=2^20. -Pour cela, on va d\303\251finir la liste de nos coefficients, entiers compris entre -50 et 50 par exemple, par une m\303\251thode "pseudo-al\303\251atoire" : - - - -with(RandomTools[MersenneTwister]); -A:=[seq(GenerateInteger32(),i=1..2^5)]: - - -NiQtSShtZmVuY2VkRzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiwtSSNtaUdGJTY5US5HZW5lcmF0ZUZsb2F0RigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUYtNjlRMEdlbmVyYXRlRmxvYXQ2NEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUYtNjlRMEdlbmVyYXRlSW50ZWdlckYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUYtNjlRMkdlbmVyYXRlSW50ZWdlcjMyRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRi02OVE2R2VuZXJhdGVVbnNpZ25lZEludDMyRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRi02OVEpR2V0U3RhdGVGKEYwRjNGNkY5RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZpbkZcby1GLTY5US1OZXdHZW5lcmF0b3JGKEYwRjNGNkY5RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZpbkZcby1GLTY5USlTZXRTdGF0ZUYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLyUlb3BlbkdRJyZsc3FiO0YoLyUmY2xvc2VHUScmcnNxYjtGKDcjNypJLkdlbmVyYXRlRmxvYXRHRihJMEdlbmVyYXRlRmxvYXQ2NEdGKEkwR2VuZXJhdGVJbnRlZ2VyR0YoSTJHZW5lcmF0ZUludGVnZXIzMkdGKEk2R2VuZXJhdGVVbnNpZ25lZEludDMyR0YoSSlHZXRTdGF0ZUdGKEktTmV3R2VuZXJhdG9yR0YoSSlTZXRTdGF0ZUdGKA== - - -
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode na\303\257ve</Font></Text-field> -On effectue le calcul pour la m\303\251thode it\303\251rative : - - -t:=time(): -N:=TFDSimple(A): -Temps := time()-t; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wOTZGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiMnKiEiJDcjRmhy - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode r\303\251cursive</Font></Text-field> -Calcul pour la m\303\251thode r\303\251cursive : - - -t:=time(): -R:=TFDRecur(A): -Temps := time()-t; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wMDRGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiIlISIkNyNGaHI= - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode it\303\251rative</Font></Text-field> - - - -t:=time(): -I:=TFDIter(A): -Temps:= time()-t; - - -Error, illegal use of an object as a name - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEjMC5GKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiIhRmlyNyNGaHI= - - - - - - - -
-
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Multiplication de polyn\303\264mes</Font></Text-field> -
-<Text-field style="Heading 2" layout="Heading 2">Algorithme</Text-field> -On va prendre en entr\303\251e deux listes contenant les coefficients des deux polyn\303\264mes dont on cherche \303\240 calculer le produit. -Utilise la m\303\251thode simple, car sinon impose en plus une condition sur le degr\303\251 des polyn\303\264mes. - - -Multiplication:=proc(P,Q) - -local n,N,R,A,B,i,j,k: - -n:=nops(P): - -#On cr\303\251e la liste des coefficients \303\251tendus \303\240 2n \303\251l\303\251ments. -A:=[seq(P[k],k=1..n),seq(0,k=n+1..2*n)]; -B:=[seq(Q[k],k=1..n),seq(0,k=n+1..2*n)]; - -#On calcule la TFD de chacune de ces listes. -A:=TFDIter(A): -B:=TFDIter(B): - -#On effectue les produits -R:=[seq(A[k]*B[k],k=1..2*n)]: - -#On r\303\251cup\303\250re les coefficients. -TFDIIter(R); - -end proc: - - - - - - - -
-
-<Text-field style="Heading 2" layout="Heading 2">Exemple</Text-field> -
-<Text-field style="Heading 3" layout="Heading 3">Maple</Text-field> -On va poser LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUEYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2Jy1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYnRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbb0ZncS1GIzYjLUZpczY5USMxMEYnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OVEjaVhGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3FGZ3E= et LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUUYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2KS1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYmRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbby1GaXM2OVEjMTBGJ0YvRjJGNUZcdEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZddEZbb0ZbcS8lLGFjY2VudHVuZGVyR0Y3RmdxLUklbXN1cEdGJDYlLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbb0ZndC8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3EtRmV0NiUtRiw2OVEiWEYnRi9GMkY1RjhGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm5GaG5GW29GZ3RGaXRGZ3FGZ3E= - - -P:=sum(i*X^i,i=0..15); - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJQRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2QC1GLTY5USJYRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRl9vNjNRJyZwbHVzO0YoRmJvRmVvRmdvL0Zqb1EwbWVkaXVtbWF0aHNwYWNlRigvRl1wRl9yRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiYtSSNtbkdGJTY5USIyRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GX282M1ExJkludmlzaWJsZVRpbWVzO0YoRmJvRmVvRmdvL0Zqb1EkMGVtRigvRl1wRl5zRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUklbXN1cEdGJTYlRmhxRmNyLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGKC9JK21zZW1hbnRpY3NHRiVRIipGKEZbci1GJDYmLUZkcjY5USIzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRlt0RmNzRmZzRltyLUYkNiYtRmRyNjlRIjRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGYnRGY3NGZnNGW3ItRiQ2Ji1GZHI2OVEiNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocUZpdEZjc0Zmc0Zbci1GJDYmLUZkcjY5USI2RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmB1RmNzRmZzRltyLUYkNiYtRmRyNjlRIjdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGZ3VGY3NGZnNGW3ItRiQ2Ji1GZHI2OVEiOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocUZedkZjc0Zmc0Zbci1GJDYmLUZkcjY5USI5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmV2RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRlx3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzExRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmN3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmp3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmF4RmNzRmZzRltyLUYkNiYtRmRyNjlRIzE0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmh4RmNzRmZzRltyLUYkNiYtRmRyNjlRIzE1RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRl95RmNzRmZzL0Znc1EiK0YoL0Znc1EjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUEdGKCxASSJYR0YoIiIiKiYiIiNGYnopRmF6RmR6RmJ6RmJ6KiYiIiRGYnopRmF6Rmd6RmJ6RmJ6KiYiIiVGYnopRmF6Rmp6RmJ6RmJ6KiYiIiZGYnopRmF6Rl1bbEZiekZieiomIiInRmJ6KUZhekZgW2xGYnpGYnoqJiIiKEZieilGYXpGY1tsRmJ6RmJ6KiYiIilGYnopRmF6RmZbbEZiekZieiomIiIqRmJ6KUZhekZpW2xGYnpGYnoqJiIjNUZieilGYXpGXFxsRmJ6RmJ6KiYiIzZGYnopRmF6Rl9cbEZiekZieiomIiM3RmJ6KUZhekZiXGxGYnpGYnoqJiIjOEZieilGYXpGZVxsRmJ6RmJ6KiYiIzlGYnopRmF6RmhcbEZiekZieiomIiM6RmJ6KUZhekZbXWxGYnpGYno3I0Zgeg== - - - - -Q:=sum(i^i*X^i,i=0..15); - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJRRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2Qi1JI21uR0YlNjlGZ3BGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GX282M1EnJnBsdXM7RihGYm9GZW9GZ28vRmpvUTBtZWRpdW1tYXRoc3BhY2VGKC9GXXBGYnJGXnBGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHEtRi02OVEiWEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvRl5yLUYkNiYtRmlxNjlRIjRGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZgc0ZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUZkci1GaXE2OVEiMkYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRigvSSttc2VtYW50aWNzR0YlUSIqRihGXnItRiQ2Ji1GaXE2OVEjMjdGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjNGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEkMjU2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyRmlyRmhzRlt0Rl5yLUYkNiYtRmlxNjlRJTMxMjVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEmNDY2NTZGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjZGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEnODIzNTQzRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USI3RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRKTE2Nzc3MjE2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USI4RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRKjM4NzQyMDQ4OUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zccy1GY3M2JUZkci1GaXE2OVEiOUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5USwxMDAwMDAwMDAwMEYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zccy1GY3M2JUZkci1GaXE2OVEjMTBGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEtMjg1MzExNjcwNjExRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxMUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5US44OTE2MTAwNDQ4MjU2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxMkYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5UTAzMDI4NzUxMDY1OTIyNTNGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIzEzRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRMjExMTEyMDA2ODI1NTU4MDE2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxNEYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5UTM0Mzc4OTM4OTAzODA4NTkzNzVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIzE1RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0L0ZcdFEiK0YoL0ZcdFEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUUdGKCxCIiIiRmpcbEkiWEdGKEZqXGwqJiIiJUZqXGwpRltdbCIiI0ZqXGxGalxsKiYiI0ZGalxsKUZbXWwiIiRGalxsRmpcbComIiRjI0ZqXGwpRltdbEZdXWxGalxsRmpcbComIiVESkZqXGwpRltdbCIiJkZqXGxGalxsKiYiJmNtJUZqXGwpRltdbCIiJ0ZqXGxGalxsKiYiJ1ZOIylGalxsKUZbXWwiIihGalxsRmpcbComIik7c3g7RmpcbClGW11sIiIpRmpcbEZqXGwqJiIqKls/dVFGalxsKUZbXWwiIipGalxsRmpcbComIiwrKysrKyJGalxsKUZbXWwiIzVGalxsRmpcbComIi02MW42YEdGalxsKUZbXWwiIzZGalxsRmpcbComIi5jI1svNTsqKUZqXGwpRltdbCIjN0ZqXGxGalxsKiYiMGBBZjFeKEdJRmpcbClGW11sIiM4RmpcbEZqXGwqJiIyOyFlYiNvKzc2IkZqXGwpRltdbCIjOUZqXGxGalxsKiYiM3YkZjNRISpRKnlWRmpcbClGW11sIiM6RmpcbEZqXGw3I0ZpXGw= - - - - -R:=expand(P*Q); - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2aG4tRi02OVEiWEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUZfbzYzUScmcGx1cztGKEZib0Zlb0Znby9Gam9RMG1lZGl1bW1hdGhzcGFjZUYoL0ZdcEZfckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYmLUkjbW5HRiU2OVE0NjI5NzE5NDU2NzcxNTQwMTQ5MEYoRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZec0ZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUZocS1GZHI2OVEjMjlGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG8vJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYoL0krbXNlbWFudGljc0dGJVEiKkYoRltyLUYkNiYtRmRyNjlRNDE4MDkwMTc2MzU1NTY1NzQ2NzhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzE5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRNDIyNTgzMzU2MTk2ODY3NzAzNzhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzIwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMzkxMDM4MTY2NzI5NjE3NTUyNEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MTM1OTY5OTY1MTQyNjM3NTI4N0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMThGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEiM0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiMkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USI5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmZ2RmZzRmlzRltyLUYkNiYtRmRyNjlRIzQyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USI0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRJDMzMUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USo0MjM2NDk1NzVGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRLDEwODI4NzIwODkzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMxMUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USc5Mjc0MjhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIjhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEpMTg1NzgyNTdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGYHdGZnNGaXNGW3ItRiQ2Ji1GZHI2OVElMzc0NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiNkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USY1MzgxNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5UTQ1NDAzNTU2NzY2MzAxNTgyMDkwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMyN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5UTQ1ODUyNzMxNzk3MTA3ODY3ODk0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMyOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5US0zMDY1NDU0NjI4MjJGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRLjk1MTgzNjI2NTMwMDdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMDMyMTYwNTI4NjQzNTQ0NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NjU2ODQwODM1NTcxMjg5MDYyNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMzBGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEyMTE3NDU2OTkwMzU3NzU4OTlGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzE1RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMzQ2MTA2MzY4MzE2NTk3NTcxMkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTZGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MjcwNzY1MzYwMzgxNjkxOTkxOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjFGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MzE1Njk3MTU4Nzk0NjM2OTgzN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjJGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MzYwNjI4OTU3MjA2MzM0MjkwOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjNGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDA1NTYwNzU1NTkyNDIzMzY2OEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDUwNDkyNTUzMzgzODA1NDg0NEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjVGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDk1NDI0MzM1NzU2MzE4MzM1NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjZGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXMvRmpzUSIrRigvRmpzUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJSR0YoLGhuSSJYR0YoIiIiKiYiNCFcLGFyblg+KEgnRlxmbClGW2ZsIiNIRlxmbEZcZmwqJiI0eVlkY2JqPCE0PUZcZmwpRltmbCIjPkZcZmxGXGZsKiYiNHkueCdvPmNMZUFGXGZsKUZbZmwiIz9GXGZsRlxmbComIjNDYjwnSG47UTUqRlxmbClGW2ZsIiM8RlxmbEZcZmwqJiI0KEd2alVeJypwZjhGXGZsKUZbZmwiIz1GXGZsRlxmbComIiIkRlxmbClGW2ZsIiIjRlxmbEZcZmwqJiIiKkZcZmwpRltmbEZiZ2xGXGZsRlxmbComIiNVRlxmbClGW2ZsIiIlRlxmbEZcZmwqJiIkSiRGXGZsKUZbZmwiIiZGXGZsRlxmbComIip2JlxPVUZcZmwpRltmbCIjNUZcZmxGXGZsKiYiLCQqM3NHMyJGXGZsKUZbZmwiIzZGXGZsRlxmbComIidHdSMqRlxmbClGW2ZsIiIpRlxmbEZcZmwqJiIpZCN5Jj1GXGZsKUZbZmxGZmdsRlxmbEZcZmwqJiIlWFBGXGZsKUZbZmwiIidGXGZsRlxmbComIiY6USZGXGZsKUZbZmwiIihGXGZsRlxmbComIjQhNCNlLGp3Y05TJkZcZmwpRltmbCIjRkZcZmxGXGZsKiYiNCUqeSd5NSh6SkYmZUZcZmwpRltmbCIjR0ZcZmxGXGZsKiYiLUFHWVhsSUZcZmwpRltmbCIjN0ZcZmxGXGZsKiYiLjJJbGkkPSYqRlxmbClGW2ZsIiM4RlxmbEZcZmwqJiIwWGFWJ0cwO0tGXGZsKUZbZmwiIzlGXGZsRlxmbComIjREMSpHcmIkMyVvbEZcZmwpRltmbCIjSUZcZmxGXGZsKiYiMioqZXhOISpwWDwiRlxmbClGW2ZsIiM6RlxmbEZcZmwqJiIzN2QoZjskb2o1WUZcZmwpRltmbCIjO0ZcZmxGXGZsKiYiND0qPnAiUWdgd3EjRlxmbClGW2ZsIiNARlxmbEZcZmwqJiI0UClwaiV6ZXJwOiRGXGZsKUZbZmwiI0FGXGZsRlxmbComIjQzSE1qP2QqRzFPRlxmbClGW2ZsIiNCRlxmbEZcZmwqJiI0b09CQ2ZiMmMwJUZcZmwpRltmbCIjQ0ZcZmxGXGZsKiYiNFdbMFFRYERcXSVGXGZsKUZbZmwiI0RGXGZsRlxmbComIjRiTD1qdk5WVSZcRlxmbClGW2ZsIiNFRlxmbEZcZmw3I0ZqZWw= - - - - - - - -
-
-<Text-field style="Heading 3" layout="Heading 3">Algo</Text-field> - - - -P:=[seq(i,i=0..15)]; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJQRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5USIwRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GanE2OUZncEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjJGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjZGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjdGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjhGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjlGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzEwRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USMxMUYoRjBGM0Y2Rl1yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZeckZcby1GanE2OVEjMTJGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzEzRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USMxNEYoRjBGM0Y2Rl1yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZeckZcby1GanE2OVEjMTVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8vJSVvcGVuR1EnJmxzcWI7RigvJSZjbG9zZUdRJyZyc3FiO0YoL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUEdGKDcyIiIhIiIiIiIjIiIkIiIlIiImIiInIiIoIiIpIiIqIiM1IiM2IiM3IiM4IiM5IiM6NyNGXXY= - - - - -Q:=[seq(i^i,i=0..15)]; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJRRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG9GaXEtRmpxNjlRIjRGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRIzI3RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USQyNTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRJTMxMjVGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRJjQ2NjU2RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USc4MjM1NDNGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRKTE2Nzc3MjE2RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USozODc0MjA0ODlGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRLDEwMDAwMDAwMDAwRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5US0yODUzMTE2NzA2MTFGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRLjg5MTYxMDA0NDgyNTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRMDMwMjg3NTEwNjU5MjI1M0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcby1GanE2OVEyMTExMTIwMDY4MjU1NTgwMTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRMzQzNzg5Mzg5MDM4MDg1OTM3NUYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcby8lJW9wZW5HUScmbHNxYjtGKC8lJmNsb3NlR1EnJnJzcWI7RigvSSttc2VtYW50aWNzR0YlUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJRR0YoNzIiIiJGW3YiIiUiI0YiJGMjIiVESiImY20lIidWTiMpIik7c3g7IioqWz91USIsKysrKysiIi02MW42YEciLmMjWy81OyopIjBgQWYxXihHSSIyOyFlYiNvKzc2IiIzdiRmM1EhKlEqeVY3I0ZqdQ== - - - - -R:=evalf(Multiplication(P,Q)): - - - - -R:=[seq(round(R[j]),j=1..20)]; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjgtRiQ2Ji1JI21uR0YlNjlRKy0zMDAwMDAwMDBGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZfbzYzUScmcGx1cztGKEZib0Zlb0Znby9Gam9RMG1lZGl1bW1hdGhzcGFjZUYoL0ZdcEZmckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYmLUZccjY5USsxMzAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvLUZfbzYzUTEmSW52aXNpYmxlVGltZXM7RihGYm9GZW9GZ28vRmpvUSQwZW1GKC9GXXBGYXNGXnBGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHEtRlxyNjlRLSZJbWFnaW5hcnlJO0YoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcby9JK21zZW1hbnRpY3NHRiVRIipGKC9GZ3NRIitGKC1GJDYmLUZccjY5USsyMzYwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmJyLUYkNiYtRlxyNjlRKzQwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVErNTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmcy1GJDYmLUZccjY5USwtMjMwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USsyMzAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRKy05MDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnJGYHRGaXMtRiQ2Ji1GXHI2OVErLTgwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZickZldEZpcy1GJDYmLUZccjY5USwtMTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZickZldEZpcy1GJDYmLUZccjY5USozMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErMTE0MjAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5USs0NTM3NTAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzLUYkNiYtRlxyNjlRKzEwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNDU2ODc1MDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmRmR3RmJyLUYkNiYtRlxyNjlRKzUxNTYyNTAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVErOTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USs1Mzg3NTAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRLTMwNzAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USs4ODUwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRLjk1MjAwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNzcwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5UTAzMjE2MDgwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNzY1NzUxNzk1N0YoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5UTIxMTc0NTY5ODM1MDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcby1GX282M1EoJm1pbnVzO0YoRmJvRmVvRmdvRmVyRmdyRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiYtRlxyNjlRKzIyMjQyOTM1ODlGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVEzNDYxMDYzNjg0MDAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmBbbC1GJDYmLUZccjY5USo5MDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVEzOTEwMzgxNjY5MTAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmBbbC1GJDYmLUZccjY5USsyMDAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRNDEzNTk2OTk2NTMwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYFtsLUYkNiYtRlxyNjlRKzMwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVE0MTgwOTAxNzYzNDAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZgW2wtRiQ2JkZldkZdc0Zjc0Zmc0Zpcy8lJW9wZW5HUScmbHNxYjtGKC8lJmNsb3NlR1EnJnJzcWI7RigvRmdzUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJSR0YoNzYsJiIqKysrKyQhIiIqJiIrKysrKzgiIiJeI0ZjX2xGY19sRmNfbCwmIisrKytnQkZjX2wqJiIrKysrK1NGY19sRmRfbEZjX2xGY19sKiYiKysrKytdRmNfbEZkX2xGY19sLCYiKysrKytCRmBfbComRlxgbEZjX2xGZF9sRmNfbEZjX2wsJiIqKysrKypGYF9sRmdfbEZjX2wsJiIqKysrKylGYF9sRmlfbEZjX2wsJiIrKysrKzVGYF9sRmlfbEZjX2wsJkZfX2xGY19sKiYiKysrK1U2RmNfbEZkX2xGY19sRmNfbComIisrK11QWEZjX2xGZF9sRmNfbCwmRmNgbEZjX2wqJiIrKyt2b1hGY19sRmRfbEZjX2xGY19sLCZGY2BsRmNfbComIisrK0RjXkZjX2xGZF9sRmNfbEZjX2wsJiIrKysrKyEqRmNfbComIisrK10oUSZGY19sRmRfbEZjX2xGY19sLCYiLSsrKytxSUZjX2wqJiIrKysrXSkpRmNfbEZkX2xGY19sRmNfbCwmIi4rKysrK18qRmNfbComIisrKysreEZjX2xGZF9sRmNfbEZjX2wsJiIwKysrKyEzO0tGY19sKiYiK2R6XmR3RmNfbEZkX2xGY19sRmNfbCwmIjIrKytdJClwWDwiRmNfbComIisqZSRIQ0FGY19sRmRfbEZjX2xGYF9sLCYiMysrKytTb2o1WUZjX2wqJkZfYGxGY19sRmRfbEZjX2xGYF9sLCYiMysrKysicDtRNSpGY19sKiYiKysrKys/RmNfbEZkX2xGY19sRmBfbCwmIjQrKysrSWwqcGY4RmNfbComIisrKysrSUZjX2xGZF9sRmNfbEZgX2wsJiI0KysrK1NqPCE0PUZjX2wqJkZfX2xGY19sRmRfbEZjX2xGYF9sNyNGXV9s - - - - - - - -
-
-
-
\ No newline at end of file diff --git a/TIPE_2007/Maple/TFD.mw b/TIPE_2007/Maple/TFD.mw deleted file mode 100644 index 87d6772..0000000 --- a/TIPE_2007/Maple/TFD.mw +++ /dev/null @@ -1,472 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -restart: - - -
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure "na\303\257ve"</Font></Text-field> -Cette proc\303\251dure calcule les coefficients de Fourier par une m\303\251thode dite "naive". - - -TFDSimple:=proc(x) - -local n,X: -n:=nops(x): - -X:=[seq(sum(x[j]*exp(-2*I*(j-1)*(k-1)*Pi/n),j=1..n),k=1..n)]; - -end proc: - - -
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure r\303\251cursive</Font></Text-field> -Cette proc\303\251dure prend en entr\303\251e une liste repr\303\251sentant les coefficients d'un polyn\303\264me dont on cherche \303\240 calculer les coefficients de Fourier. - - -TFDRecur:=proc(x) - -local N,CoefFFT,xp,xi,u,v,omega: -N:=nops(x): - -if N=1 then CoefFFT:=x: -else - -xp:=[seq(x[2*i],i=1..N/2)]: -xi:=[seq(x[2*i-1],i=1..N/2)]: -u:=TFDRecur(xp): -v:=TFDRecur(xi): - -omega:=exp(-2*I*Pi/N): - -CoefFFT:=[seq(omega^(k-1)*u[k]+v[k],k=1..N/2),seq(-omega^(k-1)*u[k]+v[k],k=1..N/2)]; -end if: -CoefFFT; - -end proc: - - -
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par it\303\251ration</Font></Text-field> -On va utiliser l'\303\251criture des divers coefficients en binaire. - - - -TFDIter:=proc(x) -local n,i,j,k,a,b,p,l,z,w,h,m,tmp: -n:=nops(x): -l:=Array(1..n): -l:=Array(x): -p:=n/2:#p: puissance de 2 dans d\303\251composition. - -while p>=1 do - z:=1: #premi\303\250re valeur de omega. - w:=exp(-I*Pi/p): #c'est omega. - - for h from 1 to p do #Variable servant \303\240 la d\303\251composition - for m from 1 to n/(2*p) do - #On va calculer le signal xm - a:=h+2*(m-1)*p: #Premi\303\250re valeur du signal x_(m-1) - b:=a+p: #Seconde valeur du signal x_(m-1) - tmp:=(l[a]-l[b])*z: - l[a]:=l[a]+l[b]: #x_m(a) = x_(m-1)(a)+x_(m-1)(b) - l[b]:=tmp: #x_m(b) = (x_(m-1)(a)-x_(m-1)(b))*z - end do: - #On passe au signal m+1 -> w<-w^(m+1) - z:=z*w: - end do: - p:=p/2: -end do: - -#On a maintenant notre liste contenant les signaux x_r -#Il reste \303\240 remettre les signaux dans le bon ordre. -j:=1: -for i from 1 to n do - if j>i then tmp:=l[j]: - l[j]:=l[i]: - l[i]:=tmp: - end if: - p:=n/2: - while p>=2 and j>p do - j:=j-p: - p:=p/2: - end do: - j:=j+p: -end do: -l; -end proc: - - -
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la Transform\303\251e Inverse.</Font></Text-field> -De m\303\252me, il est possible d'effectuer deux m\303\251thodes pour calculer la transform\303\251e inverse de Fourier : -
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode na\303\257ve</Font></Text-field> -En utilisant le m\303\252me algorithme, on obtient : - - -TFDISimple:=proc(X) - -local n,F: -n:=nops(X): - -F:=[seq((1/n)*sum(X[i]*exp(2*I*(j-1)*(i-1)*Pi/(n)),i=1..n),j=1..n)]; - -end proc: - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode r\303\251cursive</Font></Text-field> -Attention : Pour que l'on puisse retrouver les valeurs initiales, -il ne faut pas oublier de diviser par le nombre de valeurs. - - -TFDIRecur:=proc(X) -local Coef,N,Xi,Xp,U,V,Omega,k; -N:=nops(X); - -if N=1 then Coef:=X: -else - Xi:=[seq(X[2*k-1],k=1..N/2)]; - Xp:=[seq(X[2*k],k=1..N/2)]; - U:=TFDIRecur(Xi); - V:=TFDIRecur(Xp); - Omega:=exp(2*I*Pi/N); - Coef:=[seq(U[k]+Omega^(k-1)*V[k],k=1..N/2),seq(U[k]-Omega^(k-1)*V[k],k=1..N/2)]: - end if; -Coef; -end proc: - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode it\303\251rative</Font></Text-field> - - - -TFDIIter:=proc(x) -local n,i,j,k,a,b,p,l,z,w,h,m,tmp: -n:=nops(x): -l:=Array(1..n): -l:=Array(x): -p:=n/2: - -while p>=1 do - z:=1: - w:=exp(I*Pi/p); #C'est la diff\303\251rence - - for h from 1 to p do - for m from 1 to n/(2*p) do - a:=h+2*(m-1)*p: - b:=a+p: - tmp:=(l[a]-l[b])*z: - l[a]:=l[a]+l[b]: - l[b]:=tmp: - end do: - z:=z*w: - end do: - p:=p/2: -end do: - -j:=1: -for i from 1 to n do - if j>i then tmp:=l[j]: - l[j]:=l[i]: - l[i]:=tmp: - end if: - p:=n/2: - while p>=2 and j>p do - j:=j-p: - p:=p/2: - end do: - j:=j+p: -end do: -for i from 1 to n do - l[i]:=l[i]/n: -end do: -return l; -end proc: - - -
-
-
-<Text-field style="Heading 1" layout="Heading 1">Mesure du temps de calcul</Text-field> -On va ici s'int\303\251resser \303\240 la mesure du temps n\303\251cessaire pour calculer les coefficients de Fourier (Transform\303\251e Directe) pour n "grand", par exemple n=2^5, n=2^10,... . -Pour cela, on va d\303\251finir la liste de nos coefficients par une m\303\251thode "pseudo-al\303\251atoire" : - - - -with(RandomTools[MersenneTwister]): -A:=[seq(GenerateFloat(),i=1..2^8)]: - - -
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode na\303\257ve</Font></Text-field> -On effectue le calcul pour la m\303\251thode na\303\257ve : - - -t:=time(): -TFDSimple(A): -Temps := time()-t; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmNi40NzJGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiVzayEiJDcjRmhy - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode r\303\251cursive</Font></Text-field> -Calcul pour la m\303\251thode r\303\251cursive : - - -t:=time(): -TFDRecur(A): -Temps := time()-t; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wNzZGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiN3ISIkNyNGaHI= - - -
-
-<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode it\303\251rative</Font></Text-field> -Mesure pour la m\303\251thode it\303\251rative : - - -t:=time(): -TFDIter(A): -Temps:= time()-t; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wNDBGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiNTISIkNyNGaHI= - - -
-
-
-<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Multiplication de polyn\303\264mes</Font></Text-field> -
-<Text-field style="Heading 2" layout="Heading 2">Algorithme</Text-field> -On va prendre en entr\303\251e deux listes contenant les coefficients des deux polyn\303\264mes dont on cherche \303\240 calculer le produit. -Il faut prendre des pr\303\251cautions, car la proc\303\251dure ne v\303\251rifie pas si les deux polyn\303\264mes sont de m\303\252me degr\303\251, qui doit \303\252tre une puissance de 2, si l'on souhaite utiliser la m\303\251thode r\303\251cursive ou it\303\251rative. - - -Multiplication:=proc(P,Q) - -local n,N,R,A,B,i,j,k: - -n:=nops(P): -N:=2*n: - -#On cr\303\251e la liste des coefficients \303\251tendus \303\240 2n \303\251l\303\251ments. -A:=[seq(P[k],k=1..n),seq(0,k=n+1..N)]; -B:=[seq(Q[k],k=1..n),seq(0,k=n+1..N)]; - -#On calcule la TFD de chacune de ces listes. -A:=TFDIter(A): -B:=TFDIter(B): - -#On effectue les produits -R:=[seq(A[k]*B[k],k=1..N)]: - -#On r\303\251cup\303\250re les coefficients. -TFDIIter(R); - -end proc: - - -
-
-<Text-field style="Heading 2" layout="Heading 2">Exemple</Text-field> -On va poser LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUEYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2Jy1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYnRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbb0ZncS1GaXM2OVEiN0YnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OVEjaVhGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3FGZ3E= et LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUUYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2KS1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYmRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbby1GaXM2OVEiN0YnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OUZdc0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvRmd0LyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGJ0ZncS1GZXQ2JS1GLDY5USJYRidGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbb0ZndEZpdEZncUZncQ== doncLUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYpLUkjbW9HRiQ2M1ExJkludmlzaWJsZVRpbWVzO0YnLyUlZm9ybUdRJmluZml4RicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRjQvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Y5LyUpc3RyZXRjaHlHRjQvJSpzeW1tZXRyaWNHRjQvJShtYXhzaXplR1EpaW5maW5pdHlGJy8lKG1pbnNpemVHUSIxRicvJShsYXJnZW9wR0Y0LyUubW92YWJsZWxpbWl0c0dGNC8lJ2FjY2VudEdGNC8lMGZvbnRfc3R5bGVfbmFtZUdRKDJEfk1hdGhGJy8lJXNpemVHUSMxMkYnLyUrZm9yZWdyb3VuZEdRKFswLDAsMF1GJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRictSSNtaUdGJDY5USJuRicvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GJy8lJXNpemVHRlEvJSVib2xkR0Y0LyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y0LyUqc3Vic2NyaXB0R0Y0LyUsc3VwZXJzY3JpcHRHRjQvJStmb3JlZ3JvdW5kR0ZULyUrYmFja2dyb3VuZEdGVy8lJ29wYXF1ZUdGNC8lK2V4ZWN1dGFibGVHRjQvJSlyZWFkb25seUdGNC8lKWNvbXBvc2VkR0Y0LyUqY29udmVydGVkR0Y0LyUraW1zZWxlY3RlZEdGNC8lLHBsYWNlaG9sZGVyR0Y0LyUwZm9udF9zdHlsZV9uYW1lR0ZOLyUqbWF0aGNvbG9yR0ZULyUvbWF0aGJhY2tncm91bmRHRlcvJStmb250ZmFtaWx5R0Zobi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRicvJSltYXRoc2l6ZUdGUS1GLDYzUSI9RidGL0YyRjVGN0Y6RjxGPkZARkNGRkZIRkpGTEZPRlJGVS1JI21uR0YkNjlRIjhGJ0ZmbkZpbkZbby9GXm9GNEZgb0Zib0Zkb0Zmb0Zob0Zqb0ZccEZecEZgcEZicEZkcEZmcEZocEZqcEZccUZecS9GYXFRJ25vcm1hbEYnRmNxRmVxLUklbXN1cEdGJDYlLUZpcTY5USIyRidGZm5GaW5GW29GXHJGYG9GYm9GZG9GZm9GaG9Gam9GXHBGXnBGYHBGYnBGZHBGZnBGaHBGanBGXHFGXnFGXXJGY3EtRmlxNjlRIzMuRidGZm5GaW5GW29GXHJGYG9GYm9GZG9GZm9GaG9Gam9GXHBGXnBGYHBGYnBGZHBGZnBGaHBGanBGXHFGXnFGXXJGY3EvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnLUZZNjlRIUYnRmZuRmluRltvRl1vRmBvRmJvRmRvRmZvRmhvRmpvRlxwRl5wRmBwRmJwRmRwRmZwRmhwRmpwRlxxRl5xRmBxRmNx -
-<Text-field style="Heading 3" layout="Heading 3">Algo</Text-field> -On va demander la liste des coefficients du polyn\303\264me R=P*Q. Pour une lecture plus facile, nous en prendrons les valeurs arrondies. - - -P:=[seq(i,i=0..7)]: - - - - -Q:=[seq(i^i,i=0..7)]: - - - - -R:=evalf(Multiplication(P,Q)): - - - - -[seq(R[j],j=1..2*nops(P))]; - - -NiQtSShtZmVuY2VkRzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNjQtSSVtcm93R0YlNiYtSSNtbkdGJTY5USgwLjAwMDkxRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHRjsvJSp1bmRlcmxpbmVHRjsvJSpzdWJzY3JpcHRHRjsvJSxzdXBlcnNjcmlwdEdGOy8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjsvJStleGVjdXRhYmxlR0Y7LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOy8lKmNvbnZlcnRlZEdGOy8lK2ltc2VsZWN0ZWRHRjsvJSxwbGFjZWhvbGRlckdGOy8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZGLyUvbWF0aGJhY2tncm91bmRHRkkvJStmb250ZmFtaWx5R0Y1LyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0Y4LUkjbW9HRiU2M1EnJnBsdXM7RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y7LyUqc2VwYXJhdG9yR0Y7LyUnbHNwYWNlR1EwbWVkaXVtbWF0aHNwYWNlRigvJSdyc3BhY2VHRl1wLyUpc3RyZXRjaHlHRjsvJSpzeW1tZXRyaWNHRjsvJShtYXhzaXplR1EpaW5maW5pdHlGKC8lKG1pbnNpemVHUSIxRigvJShsYXJnZW9wR0Y7LyUubW92YWJsZWxpbWl0c0dGOy8lJ2FjY2VudEdGOy8lMGZvbnRfc3R5bGVfbmFtZUdGWi8lJXNpemVHRjgvJStmb3JlZ3JvdW5kR0ZGLyUrYmFja2dyb3VuZEdGSS1GLTYmLUYwNjlRJjAuMDAyRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vLUZhbzYzUTEmSW52aXNpYmxlVGltZXM7RihGZG9GZ29GaW8vRlxwUSQwZW1GKC9GX3BGYXJGYHBGYnBGZHBGZ3BGanBGXHFGXnFGYHFGYnFGZHFGZnEtRjA2OVEtJkltYWdpbmFyeUk7RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vL0krbXNlbWFudGljc0dGJVEiKkYoL0ZnclEiK0YoLUYtNiYtRjA2OVEnMS4wMDI0RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEnMC4wMDIwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEnMy4wMDQ1RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEmMC4wMDVGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGY3JGZnJGaXItRi02Ji1GMDY5USc5LjAwMDhGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GYG8tRi02Ji1GMDY5USgwLjAwMjIxRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEnNDEuOTk5RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEvMC4wMDMwMzEyNTAwMDBGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGY3JGZnJGaXItRi02Ji1GMDY5USgzMzAuOTk5RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEvMC4wMDI5NzUwMDAwMDBGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGY3JGZnJGaXItRi02Ji1GMDY5USkzNzQ1LjAwMEYoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0Zgby1GLTYmLUYwNjlRLzAuMDAzNzUwMDAwMDAwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEsNTM4MTUuMDAwMzVGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm8tRmFvNjNRKCZtaW51cztGKEZkb0Znb0Zpb0ZbcEZecEZgcEZicEZkcEZncEZqcEZccUZecUZgcUZicUZkcUZmcS1GLTYmLUYwNjlRLzAuMDAxMzQ4NjA1Mzk3RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEsOTI3NDIwLjAwMTNGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXHdGaHFGaXItRi02Ji1GLTYmLUYwNjlRLDEuODAxMDI0MDAwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yLUklbXN1cEdGJTYmLUYwNjlRIzEwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vLUYwNjlRIjZGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm8vJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYoL0ZnclEiXkYoRmZyRlx3LUYtNiYtRjA2OVEnMC4wMDMwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRi02Ji1GMDY5USwyLjY3NDYwMzAwMEYoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0ZdckZgeEZmckZcd0Zqc0Zpci1GLTYmLUYtNiYtRjA2OVEsMy41NDc5OTM5OTdGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGYHhGZnJGXHctRi02Ji1GMDY5USgwLjAwMTY1RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRi02Ji1GMDY5USw0LjQxOTUyNTk5N0YoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0ZdckZgeEZmckZcd0ZedUZpci1GLTYmLUYtNiYtRjA2OVEsNS4yNjc4NDk5OTlGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGYHhGZnJGXHctRi02Ji1GMDY5US8wLjAwMTc3NTAwMDAwMEYoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0ZdckZjckZmckZpci1GLTYmLUYtNiYtRjA2OVEsNS43NjQ4MDA5OTZGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGYHhGZnJGXHdGYnZGaXItRi02Ji1GMDY5USgwLjAwMjA1RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRlx3LUYtNiYtRjA2OVEwMC4wMDAwOTg2MDUzOTcyRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLyUlb3BlbkdRJyZsc3FiO0YoLyUmY2xvc2VHUScmcnNxYjtGKDcjNzIsJiQiIyIqISImIiIiKiYkIiIjISIkRmZdbF4jRmZdbEZmXWxGZl1sLCYkIiZDKyIhIiVGZl1sKiYkIiM/Rl9ebEZmXWxGW15sRmZdbEZmXWwsJiQiJlgrJEZfXmxGZl1sKiYkIiImRmpdbEZmXWxGW15sRmZdbEZmXWwsJiQiJjMrKkZfXmxGZl1sKiYkIiRAI0ZlXWxGZl1sRltebEZmXWxGZl1sLCYkIiYqKj4lRmpdbEZmXWwqJiQiKysrREpJISM3RmZdbEZbXmxGZl1sRmZdbCwmJCInKio0TEZqXWxGZl1sKiYkIisrKyt2SEZlX2xGZl1sRltebEZmXWxGZl1sLCYkIigrXXUkRmpdbEZmXWwqJiQiKysrK11QRmVfbEZmXWxGW15sRmZdbEZmXWwsJiQiK04rXSJRJkZlXWxGZl1sKiYkIisoUjAnWzhGZV9sRmZdbEZbXmxGZl1sISIiLCYkIis4Kz91IypGX15sRmZdbEZnXWxGaGBsLCYkIisrUy0sPUZqXWxGZl1sKiYkIiNJRl9ebEZmXWxGW15sRmZdbEZoYGwsJiQiKytJZ3VFRmpdbEZmXWxGZl5sRmhgbCwmJCIrKCpSKnphJEZqXWxGZl1sKiYkIiRsIkZlXWxGZl1sRltebEZmXWxGaGBsLCYkIisoKmZfPldGal1sRmZdbEZiX2xGaGBsLCYkIisqKipceUUmRmpdbEZmXWwqJiQiKysrK3Y8RmVfbEZmXWxGW15sRmZdbEZoYGwsJiQiKycqNCFbdyZGal1sRmZdbEZfYGxGaGBsLCYkIiQwI0ZlXWxGZl1sKiYkIipzUjAnKSohIzhGZl1sRltebEZmXWxGaGBs - - - - -R:=[seq(round(R[j]),j=1..2*nops(P))]; - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5USIwRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GanE2OUZncEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjlGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzQyRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USQzMzFGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRJTM3NDVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRJjUzODE1RihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USc5Mjc0MjBGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDE4MDEwMjRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDI2NzQ2MDNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDM1NDc5OTRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDQ0MTk1MjZGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDUyNjc4NTBGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDU3NjQ4MDFGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG9GaXEvJSVvcGVuR1EnJmxzcWI7RigvJSZjbG9zZUdRJyZyc3FiO0YoL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUkdGKDcyIiIhIiIiIiIkIiIqIiNVIiRKJCIlWFAiJjpRJiInP3UjKiIoQzUhPSIoLlluIyIoJSp6YSQiKEUmPlciKF15RSYiKCxbdyZGW3Y3I0ZqdQ== - - -
-
-<Text-field style="Heading 3" layout="Heading 3">Maple</Text-field> -On va evaluer le polyn\303\264me P*Q : - - -P:=sum(i*X^i,i=0..7): - - - - -Q:=sum(i^i*X^i,i=0..7): - - - - -sort(expand(P*Q),X,ascending); - - -NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNj4tSSNtaUdGJTY5USJYRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EnJnBsdXM7RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EwbWVkaXVtbWF0aHNwYWNlRigvJSdyc3BhY2VHRltwLyUpc3RyZXRjaHlHRjgvJSpzeW1tZXRyaWNHRjgvJShtYXhzaXplR1EpaW5maW5pdHlGKC8lKG1pbnNpemVHUSIxRigvJShsYXJnZW9wR0Y4LyUubW92YWJsZWxpbWl0c0dGOC8lJ2FjY2VudEdGOC8lMGZvbnRfc3R5bGVfbmFtZUdGWC8lJXNpemVHRjUvJStmb3JlZ3JvdW5kR0ZELyUrYmFja2dyb3VuZEdGRy1GJDYmLUkjbW5HRiU2OVEiM0YoRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZjckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUYsLUZpcTY5USIyRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGKC9JK21zZW1hbnRpY3NHRiVRIipGKEZeby1GJDYmLUZpcTY5USI5RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRixGaHFGW3NGXnNGXm8tRiQ2Ji1GaXE2OVEjNDJGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiNEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USQzMzFGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiNUYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USUzNzQ1RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRiwtRmlxNjlRIjZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GW3NGXnNGXm8tRiQ2Ji1GaXE2OVEmNTM4MTVGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiN0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USc5Mjc0MjBGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiOEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USgxODAxMDI0RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRixGY3NGW3NGXnNGXm8tRiQ2Ji1GaXE2OVEoMjY3NDYwM0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zfci1GZnI2JUYsLUZpcTY5USMxMEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USgzNTQ3OTk0RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRiwtRmlxNjlRIzExRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRltzRl5zRl5vLUYkNiYtRmlxNjlRKDQ0MTk1MjZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEjMTJGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GW3NGXnNGXm8tRiQ2Ji1GaXE2OVEoNTI2Nzg1MEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zfci1GZnI2JUYsLUZpcTY5USMxM0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USg1NzY0ODAxRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRiwtRmlxNjlRIzE0RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRltzRl5zL0Zfc1EiK0YoNyMsPkkiWEdGKCIiIiomIiIkRmh6KUZneiIiI0ZoekZoeiomIiIqRmh6KUZnekZqekZoekZoeiomIiNVRmh6KUZneiIiJUZoekZoeiomIiRKJEZoeilGZ3oiIiZGaHpGaHoqJiIlWFBGaHopRmd6IiInRmh6Rmh6KiYiJjpRJkZoeilGZ3oiIihGaHpGaHoqJiInP3UjKkZoeilGZ3oiIilGaHpGaHoqJiIoQzUhPUZoeilGZ3pGXltsRmh6Rmh6KiYiKC5ZbiNGaHopRmd6IiM1Rmh6Rmh6KiYiKCUqemEkRmh6KUZneiIjNkZoekZoeiomIihFJj5XRmh6KUZneiIjN0ZoekZoeiomIihdeUUmRmh6KUZneiIjOEZoekZoeiomIigsW3cmRmh6KUZneiIjOUZoekZoeg== - - - - - - - -
-
-
-
\ No newline at end of file diff --git a/TIPE_2007/Octave/Multiplication.m b/TIPE_2007/Octave/Multiplication.m deleted file mode 100644 index eb53abc..0000000 --- a/TIPE_2007/Octave/Multiplication.m +++ /dev/null @@ -1,22 +0,0 @@ -function[R]=Multiplication(P,Q) - -n=length(P); -N=2*n; -A=zeros(1,N); -B=zeros(1,N); -R=zeros(1,N); - -for i=1:n - A(i)=P(i); - B(i)=Q(i); -end - -%On calcule les transformées de chaque élément. -A=TFDB(A); -B=TFDB(B); -%On effectue les produits -for i=1:N - R(i)=A(i)*B(i); -end -R=TFDIB(R); -endfunction diff --git a/TIPE_2007/Octave/TFD - Octave.tar.bz2 b/TIPE_2007/Octave/TFD - Octave.tar.bz2 deleted file mode 100644 index 6ac824f..0000000 Binary files a/TIPE_2007/Octave/TFD - Octave.tar.bz2 and /dev/null differ diff --git a/TIPE_2007/Octave/TFD - Octave.zip b/TIPE_2007/Octave/TFD - Octave.zip deleted file mode 100644 index e540144..0000000 Binary files a/TIPE_2007/Octave/TFD - Octave.zip and /dev/null differ diff --git a/TIPE_2007/Octave/TFDI - Octave.tar.bz2 b/TIPE_2007/Octave/TFDI - Octave.tar.bz2 deleted file mode 100644 index 696a8a1..0000000 Binary files a/TIPE_2007/Octave/TFDI - Octave.tar.bz2 and /dev/null differ diff --git a/TIPE_2007/Octave/TFDI - Octave.zip b/TIPE_2007/Octave/TFDI - Octave.zip deleted file mode 100644 index 537115d..0000000 Binary files a/TIPE_2007/Octave/TFDI - Octave.zip and /dev/null differ diff --git a/TIPE_2007/index.html b/TIPE_2007/index.html deleted file mode 100644 index 48eeee2..0000000 --- a/TIPE_2007/index.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - -Algorithmes de calculs de TFD : Sources et programmes - - - - - - - - - - - - - - - - -
-
-
-

TIPE 2007

-

-

Voici mes réalisations effectuées pour le TIPE que j'ai réalisé lors de ma - seconde année de classes préparatoires. Le thème était Le Temps, j'ai pris - comme sujet La Transformée de Fourrier. -

-

Programme Maple :

-

- Télécharger le fichier : TFD.mw -
- (Faire "clique-droit/Enregistrer sous" car sinon, cela l'ouvre dans le - navigateur) -

- -

Sources Octave :

-
    -
  • Télécharger une archive contenant tous les fichiers concernant - la Transformée Directe : - -
  • -
  • Télécharger une archive contenant tous les fichiers concernant - la Transformée Inverse : - -
  • -
  • Source de l'algorithme de Multiplication de polynômes - (Nécessite la présence des deux archives précédentes, extraites dans le - même dossier) : Multiplication.m -
- -

Sources C++ :

-

Le programme ne peut s'éxecuter que sur un système GNU/Linux. -
- Archive contenant les sources : Format zip - Format tar.bz2 -

- -

Le dossier :

- -
-
- - -
- - diff --git a/TIPE_2007/index.html.plain b/TIPE_2007/index.html.plain deleted file mode 100644 index 56da487..0000000 --- a/TIPE_2007/index.html.plain +++ /dev/null @@ -1,73 +0,0 @@ - - - - -Algorithmes de calculs de TFD : Sources et programmes - - - - - - - - - - - - - - -

Algorithmes de calculs de Transformée de Fourier

-

Programme Maple :

-

-Télécharger le fichier : TFD.mw -
(Faire "clique-droit/Enregistrer sous" car sinon, cela l'ouvre dans le navigateur) -

-

Sources Octave :

-
    -
  • Télécharger une archive contenant tous les fichiers concernant la Transformée Directe : -Format zip - - Format tar.bz2
  • -
  • Télécharger une archive contenant tous les fichiers concernant la Transformée Inverse : - Format zip - - Format tar.bz2
  • -
  • Source de l'algorithme de Multiplication de polynômes (Nécessite la présence des deux archives précédentes, extraites dans le même dossier) : - Multiplication.m
  • -
- -

Sources C++ : (Sous licence GNU/GPL)

-

Le programme ne peut s'éxecuter que sur un système GNU/Linux.

- - -

Le dossier : (Sous licence Creative Commons)

- - - - - - diff --git a/content/pages/a-propos.rst b/content/pages/a-propos.rst new file mode 100644 index 0000000..7b878d7 --- /dev/null +++ b/content/pages/a-propos.rst @@ -0,0 +1,14 @@ +À propos de moi +############### + +:date: 2014-05-08 15:47 +:slug: about-me +:lang: fr + +Cette page recense quelques informations me concernant. + +* Mon CV_ +* Mon TIPE_ sur la transformée de Fourier réalisé en 2007 + +.. _CV: {filename}/pages/cv.rst +.. _TIPE: {filename}/pages/tipe.rst diff --git a/content/pages/cv.rst b/content/pages/cv.rst new file mode 100644 index 0000000..344c9fe --- /dev/null +++ b/content/pages/cv.rst @@ -0,0 +1,7 @@ +Curriculum Vitæ +############### + +:date: 2014-05-08 15:47 +:slug: resume +:lang: fr + diff --git a/content/pages/tipe.rst b/content/pages/tipe.rst new file mode 100644 index 0000000..a5dc6ef --- /dev/null +++ b/content/pages/tipe.rst @@ -0,0 +1,7 @@ +TIPE 2007 +######### + +:date: 2014-05-08 15:47 +:lang: fr + +TIPE diff --git a/content/static/CV/CV_1P.pdf b/content/static/CV/CV_1P.pdf new file mode 100644 index 0000000..1024c67 Binary files /dev/null and b/content/static/CV/CV_1P.pdf differ diff --git a/content/static/CV/CV_2P.pdf b/content/static/CV/CV_2P.pdf new file mode 100644 index 0000000..00ca488 Binary files /dev/null and b/content/static/CV/CV_2P.pdf differ diff --git a/content/static/Projets/1A/Allumettes.jar b/content/static/Projets/1A/Allumettes.jar new file mode 100644 index 0000000..d50b19c Binary files /dev/null and b/content/static/Projets/1A/Allumettes.jar differ diff --git a/content/static/Projets/1A/Particules.tar.gz b/content/static/Projets/1A/Particules.tar.gz new file mode 100644 index 0000000..6df4bde Binary files /dev/null and b/content/static/Projets/1A/Particules.tar.gz differ diff --git a/content/static/Projets/1A/Rapport-Enigma.pdf b/content/static/Projets/1A/Rapport-Enigma.pdf new file mode 100644 index 0000000..95d9b8e Binary files /dev/null and b/content/static/Projets/1A/Rapport-Enigma.pdf differ diff --git a/content/static/Projets/1A/Rapport-Huffman.pdf b/content/static/Projets/1A/Rapport-Huffman.pdf new file mode 100644 index 0000000..b87f8de Binary files /dev/null and b/content/static/Projets/1A/Rapport-Huffman.pdf differ diff --git a/content/static/Projets/1A/Rapport-Particules.pdf b/content/static/Projets/1A/Rapport-Particules.pdf new file mode 100644 index 0000000..cd1f6e0 Binary files /dev/null and b/content/static/Projets/1A/Rapport-Particules.pdf differ diff --git a/content/static/Projets/1A/Rapport-UML.pdf b/content/static/Projets/1A/Rapport-UML.pdf new file mode 100644 index 0000000..a79de9a Binary files /dev/null and b/content/static/Projets/1A/Rapport-UML.pdf differ diff --git a/content/static/Projets/1A/UML.jar b/content/static/Projets/1A/UML.jar new file mode 100644 index 0000000..de8f86e Binary files /dev/null and b/content/static/Projets/1A/UML.jar differ diff --git a/content/static/Projets/2A/Intergiciel.jar b/content/static/Projets/2A/Intergiciel.jar new file mode 100644 index 0000000..f8c84ab Binary files /dev/null and b/content/static/Projets/2A/Intergiciel.jar differ diff --git a/content/static/Projets/2A/MJC.tar.gz b/content/static/Projets/2A/MJC.tar.gz new file mode 100644 index 0000000..b8a189a Binary files /dev/null and b/content/static/Projets/2A/MJC.tar.gz differ diff --git a/content/static/Projets/2A/Rapport-Intergiciel.pdf b/content/static/Projets/2A/Rapport-Intergiciel.pdf new file mode 100644 index 0000000..24b92a4 Binary files /dev/null and b/content/static/Projets/2A/Rapport-Intergiciel.pdf differ diff --git a/content/static/Projets/2A/Rapport-eBide.pdf b/content/static/Projets/2A/Rapport-eBide.pdf new file mode 100644 index 0000000..8af09c7 Binary files /dev/null and b/content/static/Projets/2A/Rapport-eBide.pdf differ diff --git a/content/static/Projets/2A/Rapport-uJava.pdf b/content/static/Projets/2A/Rapport-uJava.pdf new file mode 100644 index 0000000..c0c5fcd Binary files /dev/null and b/content/static/Projets/2A/Rapport-uJava.pdf differ diff --git a/content/static/Projets/2A/Slides-eBide.pdf b/content/static/Projets/2A/Slides-eBide.pdf new file mode 100644 index 0000000..78e15d1 Binary files /dev/null and b/content/static/Projets/2A/Slides-eBide.pdf differ diff --git a/content/static/Projets/2A/VHDL.tar.bz2 b/content/static/Projets/2A/VHDL.tar.bz2 new file mode 100644 index 0000000..48de1fb Binary files /dev/null and b/content/static/Projets/2A/VHDL.tar.bz2 differ diff --git a/content/static/Projets/2A/eBide.tar.gz b/content/static/Projets/2A/eBide.tar.gz new file mode 100644 index 0000000..c5cfdb8 Binary files /dev/null and b/content/static/Projets/2A/eBide.tar.gz differ diff --git a/content/static/Projets/UdeM/Rapport-ShadowMap.pdf b/content/static/Projets/UdeM/Rapport-ShadowMap.pdf new file mode 100644 index 0000000..2804b04 Binary files /dev/null and b/content/static/Projets/UdeM/Rapport-ShadowMap.pdf differ diff --git a/content/static/Projets/UdeM/ShadowMap.tar.gz b/content/static/Projets/UdeM/ShadowMap.tar.gz new file mode 100644 index 0000000..eddef2e Binary files /dev/null and b/content/static/Projets/UdeM/ShadowMap.tar.gz differ diff --git a/content/static/Projets/UdeM/Slides-kdtree.pdf b/content/static/Projets/UdeM/Slides-kdtree.pdf new file mode 100644 index 0000000..4339dc4 Binary files /dev/null and b/content/static/Projets/UdeM/Slides-kdtree.pdf differ diff --git a/content/static/Projets/UdeM/paper107.pdf b/content/static/Projets/UdeM/paper107.pdf new file mode 100644 index 0000000..33c2f6b Binary files /dev/null and b/content/static/Projets/UdeM/paper107.pdf differ diff --git a/content/static/TIPE_2007/C/Sauv/TFD - C.tar.bz2 b/content/static/TIPE_2007/C/Sauv/TFD - C.tar.bz2 new file mode 100644 index 0000000..d8ca9fc Binary files /dev/null and b/content/static/TIPE_2007/C/Sauv/TFD - C.tar.bz2 differ diff --git a/content/static/TIPE_2007/C/Sauv/TFD - C.zip b/content/static/TIPE_2007/C/Sauv/TFD - C.zip new file mode 100644 index 0000000..bb60997 Binary files /dev/null and b/content/static/TIPE_2007/C/Sauv/TFD - C.zip differ diff --git a/content/static/TIPE_2007/C/TFD - C.tar.bz2 b/content/static/TIPE_2007/C/TFD - C.tar.bz2 new file mode 100644 index 0000000..9b207b7 Binary files /dev/null and b/content/static/TIPE_2007/C/TFD - C.tar.bz2 differ diff --git a/content/static/TIPE_2007/C/TFD - C.zip b/content/static/TIPE_2007/C/TFD - C.zip new file mode 100644 index 0000000..1e4a38f Binary files /dev/null and b/content/static/TIPE_2007/C/TFD - C.zip differ diff --git a/content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf b/content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf new file mode 100644 index 0000000..d6d5f29 Binary files /dev/null and b/content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf differ diff --git a/content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC b/content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC new file mode 100644 index 0000000..d8a7a47 Binary files /dev/null and b/content/static/TIPE_2007/Dossier/Dossier_TIPE_2007_TF.pdf.sansTOC differ diff --git a/content/static/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf b/content/static/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf new file mode 100644 index 0000000..25434b7 Binary files /dev/null and b/content/static/TIPE_2007/Dossier/Transparents_TIPE_2007_TF.pdf differ diff --git a/content/static/TIPE_2007/Maple/TFD - Old.mw b/content/static/TIPE_2007/Maple/TFD - Old.mw new file mode 100644 index 0000000..950dcc2 --- /dev/null +++ b/content/static/TIPE_2007/Maple/TFD - Old.mw @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +restart: + + +
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure "na\303\257ve"</Font></Text-field> +Cette proc\303\251dure calcule les coefficients de Fourier par une m\303\251thode dite "naive". + + +TFDSimple:=proc(x) + +local n,X: +n:=nops(x): + +X:=[seq(sum(x[j]*exp(-2*I*(j-1)*(k-1)*Pi/n),j=1..n),k=1..n)]; + + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure r\303\251cursive</Font></Text-field> +Cette proc\303\251dure prend en entr\303\251e une liste repr\303\251sentant les coefficients d'un polyn\303\264me dont on cherche \303\240 calculer les coefficients de Fourier. + + +TFDRecur:=proc(x) + +local N,CoefFFT,xp,xi,u,v,omega: +N:=nops(x): + +if N=1 then CoefFFT:=x: +else + +xp:=[seq(x[2*i],i=1..N/2)]: +xi:=[seq(x[2*i-1],i=1..N/2)]: +u:=TFDRecur(xp): +v:=TFDRecur(xi): + +omega:=exp(-2*I*Pi/N): + +CoefFFT:=[seq(omega^(k-1)*u[k]+v[k],k=1..N/2),seq(-omega^(k-1)*u[k]+v[k],k=1..N/2)]; +end if: +CoefFFT; + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par it\303\251ration</Font></Text-field> +On va utiliser l'\303\251criture des divers coefficients en binaire. + + + +TFDIter:=proc(x) +local n,i,j,k,a,b,p,l,z,w,h,m,tmp: +n:=nops(x): +l:=x; +p:=n/2; #p: puissance max dans d\303\251composition. + +while p>=1 do +#On fait les signaux jusqu'a 2^p + z:=1; #premi\303\250re valeur de omega. + w:=exp(-I*Pi/p); #c'est omega. + + for h from 1 to p do #Variable servant \303\240 la d\303\251composition + for m from 1 to n/(2*p) do + #On va calculer le signal xm + #prendre l'exemple du Butterfly pour illustrer + a:=h+2*(m-1)*p:#indice du signal pour j_(r-1) + b:=a+p; + tmp:=(l[a]-l[b])*z: + l[a]:=l[a]+l[b]: + l[b]:=tmp: + end do: + #On passe au signal m+1 -> w<-w^(m+1) + z:=z*w: + end do: + p:=p/2: +end do: + +#On a maintenant notre liste contenant les signaux x_r +#Il reste \303\240 remettre les signaux dans le bon ordre. + +j:=1: +for i from 1 to n do + if j>i then tmp:=l[j]: + l[j]:=l[i]: + l[i]:=tmp: + end if: + p:=n/2: + while p>=2 and j>p do + j:=j-p: + p:=p/2: + end do: + j:=j+p: +end do: +return l; + + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la Transform\303\251e Inverse.</Font></Text-field> +De m\303\252me, il est possible d'effectuer deux m\303\251thodes pour calculer la transform\303\251e inverse de Fourier : +
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode na\303\257ve</Font></Text-field> +En utilisant le m\303\252me algorithme, on obtient : + + +TFDISimple:=proc(X) + +local n,F: +n:=nops(X): + +F:=[seq((1/n)*sum(X[i]*exp(2*I*(j-1)*(i-1)*Pi/(n)),i=1..n),j=1..n)]; + +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode r\303\251cursive</Font></Text-field> +Attention : Pour que l'on puisse retrouver les valeurs initiales, +il ne faut pas oublier de diviser par le nombre de valeurs. + + +TFDIRecur:=proc(X) +local Coef,N,Xi,Xp,U,V,Omega,k; +N:=nops(X); + +if N=1 then Coef:=X: +else + Xi:=[seq(X[2*k-1],k=1..N/2)]; + Xp:=[seq(X[2*k],k=1..N/2)]; + U:=TFDIRecur(Xi); + V:=TFDIRecur(Xp); + Omega:=exp(2*I*Pi/N); + Coef:=[seq(U[k]+Omega^(k-1)*V[k],k=1..N/2),seq(U[k]-Omega^(k-1)*V[k],k=1..N/2)]: + end if; +Coef; +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode it\303\251rative</Font></Text-field> + + + +TFDIIter:=proc(x) +local n,i,j,k,a,b,p,l,z,w,h,m,tmp: +n:=nops(x): +l:=x; +p:=n/2; + +while p>=1 do + z:=1; + w:=exp(I*Pi/p); #C'est la diff\303\251rence + + for h from 1 to p do + for m from 1 to n/(2*p) do + a:=h+2*(m-1)*p: + b:=a+p; + tmp:=(l[a]-l[b])*z: + l[a]:=l[a]+l[b]: + l[b]:=tmp: + end do: + z:=z*w: + end do: + p:=p/2: +end do: + +j:=1: +for i from 1 to n do + if j>i then tmp:=l[j]: + l[j]:=l[i]: + l[i]:=tmp: + end if: + p:=n/2: + while p>=2 and j>p do + j:=j-p: + p:=p/2: + end do: + j:=j+p: +end do: +return l/n; +end proc: + + +
+
+
+<Text-field style="Heading 1" layout="Heading 1">Mesure du temps de calcul</Text-field> +On va ici s'inter\303\251sser \303\240 la mesure du temps pris pour calculer les coefficients de Fourier (Transform\303\251e Directe) par la m\303\251thode na\303\257ve et la m\303\251thode r\303\251cursive pour n grand, par exemple n=2^5, n=2^10, n=2^20. +Pour cela, on va d\303\251finir la liste de nos coefficients, entiers compris entre -50 et 50 par exemple, par une m\303\251thode "pseudo-al\303\251atoire" : + + + +with(RandomTools[MersenneTwister]); +A:=[seq(GenerateInteger32(),i=1..2^5)]: + + +NiQtSShtZmVuY2VkRzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiwtSSNtaUdGJTY5US5HZW5lcmF0ZUZsb2F0RigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUYtNjlRMEdlbmVyYXRlRmxvYXQ2NEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUYtNjlRMEdlbmVyYXRlSW50ZWdlckYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUYtNjlRMkdlbmVyYXRlSW50ZWdlcjMyRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRi02OVE2R2VuZXJhdGVVbnNpZ25lZEludDMyRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRi02OVEpR2V0U3RhdGVGKEYwRjNGNkY5RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZpbkZcby1GLTY5US1OZXdHZW5lcmF0b3JGKEYwRjNGNkY5RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZpbkZcby1GLTY5USlTZXRTdGF0ZUYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLyUlb3BlbkdRJyZsc3FiO0YoLyUmY2xvc2VHUScmcnNxYjtGKDcjNypJLkdlbmVyYXRlRmxvYXRHRihJMEdlbmVyYXRlRmxvYXQ2NEdGKEkwR2VuZXJhdGVJbnRlZ2VyR0YoSTJHZW5lcmF0ZUludGVnZXIzMkdGKEk2R2VuZXJhdGVVbnNpZ25lZEludDMyR0YoSSlHZXRTdGF0ZUdGKEktTmV3R2VuZXJhdG9yR0YoSSlTZXRTdGF0ZUdGKA== + + +
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode na\303\257ve</Font></Text-field> +On effectue le calcul pour la m\303\251thode it\303\251rative : + + +t:=time(): +N:=TFDSimple(A): +Temps := time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wOTZGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiMnKiEiJDcjRmhy + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode r\303\251cursive</Font></Text-field> +Calcul pour la m\303\251thode r\303\251cursive : + + +t:=time(): +R:=TFDRecur(A): +Temps := time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wMDRGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiIlISIkNyNGaHI= + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode it\303\251rative</Font></Text-field> + + + +t:=time(): +I:=TFDIter(A): +Temps:= time()-t; + + +Error, illegal use of an object as a name + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEjMC5GKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiIhRmlyNyNGaHI= + + + + + + + +
+
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Multiplication de polyn\303\264mes</Font></Text-field> +
+<Text-field style="Heading 2" layout="Heading 2">Algorithme</Text-field> +On va prendre en entr\303\251e deux listes contenant les coefficients des deux polyn\303\264mes dont on cherche \303\240 calculer le produit. +Utilise la m\303\251thode simple, car sinon impose en plus une condition sur le degr\303\251 des polyn\303\264mes. + + +Multiplication:=proc(P,Q) + +local n,N,R,A,B,i,j,k: + +n:=nops(P): + +#On cr\303\251e la liste des coefficients \303\251tendus \303\240 2n \303\251l\303\251ments. +A:=[seq(P[k],k=1..n),seq(0,k=n+1..2*n)]; +B:=[seq(Q[k],k=1..n),seq(0,k=n+1..2*n)]; + +#On calcule la TFD de chacune de ces listes. +A:=TFDIter(A): +B:=TFDIter(B): + +#On effectue les produits +R:=[seq(A[k]*B[k],k=1..2*n)]: + +#On r\303\251cup\303\250re les coefficients. +TFDIIter(R); + +end proc: + + + + + + + +
+
+<Text-field style="Heading 2" layout="Heading 2">Exemple</Text-field> +
+<Text-field style="Heading 3" layout="Heading 3">Maple</Text-field> +On va poser LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUEYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2Jy1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYnRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbb0ZncS1GIzYjLUZpczY5USMxMEYnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OVEjaVhGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3FGZ3E= et LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUUYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2KS1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYmRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbby1GaXM2OVEjMTBGJ0YvRjJGNUZcdEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZddEZbb0ZbcS8lLGFjY2VudHVuZGVyR0Y3RmdxLUklbXN1cEdGJDYlLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbb0ZndC8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3EtRmV0NiUtRiw2OVEiWEYnRi9GMkY1RjhGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm5GaG5GW29GZ3RGaXRGZ3FGZ3E= + + +P:=sum(i*X^i,i=0..15); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJQRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2QC1GLTY5USJYRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRl9vNjNRJyZwbHVzO0YoRmJvRmVvRmdvL0Zqb1EwbWVkaXVtbWF0aHNwYWNlRigvRl1wRl9yRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiYtSSNtbkdGJTY5USIyRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GX282M1ExJkludmlzaWJsZVRpbWVzO0YoRmJvRmVvRmdvL0Zqb1EkMGVtRigvRl1wRl5zRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUklbXN1cEdGJTYlRmhxRmNyLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGKC9JK21zZW1hbnRpY3NHRiVRIipGKEZbci1GJDYmLUZkcjY5USIzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRlt0RmNzRmZzRltyLUYkNiYtRmRyNjlRIjRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGYnRGY3NGZnNGW3ItRiQ2Ji1GZHI2OVEiNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocUZpdEZjc0Zmc0Zbci1GJDYmLUZkcjY5USI2RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmB1RmNzRmZzRltyLUYkNiYtRmRyNjlRIjdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGZ3VGY3NGZnNGW3ItRiQ2Ji1GZHI2OVEiOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocUZedkZjc0Zmc0Zbci1GJDYmLUZkcjY5USI5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmV2RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRlx3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzExRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmN3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmp3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmF4RmNzRmZzRltyLUYkNiYtRmRyNjlRIzE0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmh4RmNzRmZzRltyLUYkNiYtRmRyNjlRIzE1RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRl95RmNzRmZzL0Znc1EiK0YoL0Znc1EjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUEdGKCxASSJYR0YoIiIiKiYiIiNGYnopRmF6RmR6RmJ6RmJ6KiYiIiRGYnopRmF6Rmd6RmJ6RmJ6KiYiIiVGYnopRmF6Rmp6RmJ6RmJ6KiYiIiZGYnopRmF6Rl1bbEZiekZieiomIiInRmJ6KUZhekZgW2xGYnpGYnoqJiIiKEZieilGYXpGY1tsRmJ6RmJ6KiYiIilGYnopRmF6RmZbbEZiekZieiomIiIqRmJ6KUZhekZpW2xGYnpGYnoqJiIjNUZieilGYXpGXFxsRmJ6RmJ6KiYiIzZGYnopRmF6Rl9cbEZiekZieiomIiM3RmJ6KUZhekZiXGxGYnpGYnoqJiIjOEZieilGYXpGZVxsRmJ6RmJ6KiYiIzlGYnopRmF6RmhcbEZiekZieiomIiM6RmJ6KUZhekZbXWxGYnpGYno3I0Zgeg== + + + + +Q:=sum(i^i*X^i,i=0..15); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJRRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2Qi1JI21uR0YlNjlGZ3BGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GX282M1EnJnBsdXM7RihGYm9GZW9GZ28vRmpvUTBtZWRpdW1tYXRoc3BhY2VGKC9GXXBGYnJGXnBGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHEtRi02OVEiWEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvRl5yLUYkNiYtRmlxNjlRIjRGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZgc0ZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUZkci1GaXE2OVEiMkYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRigvSSttc2VtYW50aWNzR0YlUSIqRihGXnItRiQ2Ji1GaXE2OVEjMjdGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjNGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEkMjU2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyRmlyRmhzRlt0Rl5yLUYkNiYtRmlxNjlRJTMxMjVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEmNDY2NTZGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjZGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEnODIzNTQzRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USI3RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRKTE2Nzc3MjE2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USI4RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRKjM4NzQyMDQ4OUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zccy1GY3M2JUZkci1GaXE2OVEiOUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5USwxMDAwMDAwMDAwMEYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zccy1GY3M2JUZkci1GaXE2OVEjMTBGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEtMjg1MzExNjcwNjExRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxMUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5US44OTE2MTAwNDQ4MjU2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxMkYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5UTAzMDI4NzUxMDY1OTIyNTNGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIzEzRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRMjExMTEyMDA2ODI1NTU4MDE2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxNEYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5UTM0Mzc4OTM4OTAzODA4NTkzNzVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIzE1RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0L0ZcdFEiK0YoL0ZcdFEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUUdGKCxCIiIiRmpcbEkiWEdGKEZqXGwqJiIiJUZqXGwpRltdbCIiI0ZqXGxGalxsKiYiI0ZGalxsKUZbXWwiIiRGalxsRmpcbComIiRjI0ZqXGwpRltdbEZdXWxGalxsRmpcbComIiVESkZqXGwpRltdbCIiJkZqXGxGalxsKiYiJmNtJUZqXGwpRltdbCIiJ0ZqXGxGalxsKiYiJ1ZOIylGalxsKUZbXWwiIihGalxsRmpcbComIik7c3g7RmpcbClGW11sIiIpRmpcbEZqXGwqJiIqKls/dVFGalxsKUZbXWwiIipGalxsRmpcbComIiwrKysrKyJGalxsKUZbXWwiIzVGalxsRmpcbComIi02MW42YEdGalxsKUZbXWwiIzZGalxsRmpcbComIi5jI1svNTsqKUZqXGwpRltdbCIjN0ZqXGxGalxsKiYiMGBBZjFeKEdJRmpcbClGW11sIiM4RmpcbEZqXGwqJiIyOyFlYiNvKzc2IkZqXGwpRltdbCIjOUZqXGxGalxsKiYiM3YkZjNRISpRKnlWRmpcbClGW11sIiM6RmpcbEZqXGw3I0ZpXGw= + + + + +R:=expand(P*Q); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2aG4tRi02OVEiWEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUZfbzYzUScmcGx1cztGKEZib0Zlb0Znby9Gam9RMG1lZGl1bW1hdGhzcGFjZUYoL0ZdcEZfckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYmLUkjbW5HRiU2OVE0NjI5NzE5NDU2NzcxNTQwMTQ5MEYoRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZec0ZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUZocS1GZHI2OVEjMjlGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG8vJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYoL0krbXNlbWFudGljc0dGJVEiKkYoRltyLUYkNiYtRmRyNjlRNDE4MDkwMTc2MzU1NTY1NzQ2NzhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzE5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRNDIyNTgzMzU2MTk2ODY3NzAzNzhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzIwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMzkxMDM4MTY2NzI5NjE3NTUyNEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MTM1OTY5OTY1MTQyNjM3NTI4N0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMThGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEiM0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiMkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USI5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmZ2RmZzRmlzRltyLUYkNiYtRmRyNjlRIzQyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USI0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRJDMzMUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USo0MjM2NDk1NzVGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRLDEwODI4NzIwODkzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMxMUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USc5Mjc0MjhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIjhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEpMTg1NzgyNTdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGYHdGZnNGaXNGW3ItRiQ2Ji1GZHI2OVElMzc0NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiNkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USY1MzgxNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5UTQ1NDAzNTU2NzY2MzAxNTgyMDkwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMyN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5UTQ1ODUyNzMxNzk3MTA3ODY3ODk0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMyOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5US0zMDY1NDU0NjI4MjJGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRLjk1MTgzNjI2NTMwMDdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMDMyMTYwNTI4NjQzNTQ0NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NjU2ODQwODM1NTcxMjg5MDYyNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMzBGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEyMTE3NDU2OTkwMzU3NzU4OTlGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzE1RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMzQ2MTA2MzY4MzE2NTk3NTcxMkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTZGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MjcwNzY1MzYwMzgxNjkxOTkxOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjFGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MzE1Njk3MTU4Nzk0NjM2OTgzN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjJGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MzYwNjI4OTU3MjA2MzM0MjkwOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjNGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDA1NTYwNzU1NTkyNDIzMzY2OEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDUwNDkyNTUzMzgzODA1NDg0NEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjVGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDk1NDI0MzM1NzU2MzE4MzM1NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjZGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXMvRmpzUSIrRigvRmpzUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJSR0YoLGhuSSJYR0YoIiIiKiYiNCFcLGFyblg+KEgnRlxmbClGW2ZsIiNIRlxmbEZcZmwqJiI0eVlkY2JqPCE0PUZcZmwpRltmbCIjPkZcZmxGXGZsKiYiNHkueCdvPmNMZUFGXGZsKUZbZmwiIz9GXGZsRlxmbComIjNDYjwnSG47UTUqRlxmbClGW2ZsIiM8RlxmbEZcZmwqJiI0KEd2alVeJypwZjhGXGZsKUZbZmwiIz1GXGZsRlxmbComIiIkRlxmbClGW2ZsIiIjRlxmbEZcZmwqJiIiKkZcZmwpRltmbEZiZ2xGXGZsRlxmbComIiNVRlxmbClGW2ZsIiIlRlxmbEZcZmwqJiIkSiRGXGZsKUZbZmwiIiZGXGZsRlxmbComIip2JlxPVUZcZmwpRltmbCIjNUZcZmxGXGZsKiYiLCQqM3NHMyJGXGZsKUZbZmwiIzZGXGZsRlxmbComIidHdSMqRlxmbClGW2ZsIiIpRlxmbEZcZmwqJiIpZCN5Jj1GXGZsKUZbZmxGZmdsRlxmbEZcZmwqJiIlWFBGXGZsKUZbZmwiIidGXGZsRlxmbComIiY6USZGXGZsKUZbZmwiIihGXGZsRlxmbComIjQhNCNlLGp3Y05TJkZcZmwpRltmbCIjRkZcZmxGXGZsKiYiNCUqeSd5NSh6SkYmZUZcZmwpRltmbCIjR0ZcZmxGXGZsKiYiLUFHWVhsSUZcZmwpRltmbCIjN0ZcZmxGXGZsKiYiLjJJbGkkPSYqRlxmbClGW2ZsIiM4RlxmbEZcZmwqJiIwWGFWJ0cwO0tGXGZsKUZbZmwiIzlGXGZsRlxmbComIjREMSpHcmIkMyVvbEZcZmwpRltmbCIjSUZcZmxGXGZsKiYiMioqZXhOISpwWDwiRlxmbClGW2ZsIiM6RlxmbEZcZmwqJiIzN2QoZjskb2o1WUZcZmwpRltmbCIjO0ZcZmxGXGZsKiYiND0qPnAiUWdgd3EjRlxmbClGW2ZsIiNARlxmbEZcZmwqJiI0UClwaiV6ZXJwOiRGXGZsKUZbZmwiI0FGXGZsRlxmbComIjQzSE1qP2QqRzFPRlxmbClGW2ZsIiNCRlxmbEZcZmwqJiI0b09CQ2ZiMmMwJUZcZmwpRltmbCIjQ0ZcZmxGXGZsKiYiNFdbMFFRYERcXSVGXGZsKUZbZmwiI0RGXGZsRlxmbComIjRiTD1qdk5WVSZcRlxmbClGW2ZsIiNFRlxmbEZcZmw3I0ZqZWw= + + + + + + + +
+
+<Text-field style="Heading 3" layout="Heading 3">Algo</Text-field> + + + +P:=[seq(i,i=0..15)]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJQRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5USIwRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GanE2OUZncEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjJGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjZGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjdGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjhGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjlGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzEwRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USMxMUYoRjBGM0Y2Rl1yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZeckZcby1GanE2OVEjMTJGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzEzRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USMxNEYoRjBGM0Y2Rl1yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZeckZcby1GanE2OVEjMTVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8vJSVvcGVuR1EnJmxzcWI7RigvJSZjbG9zZUdRJyZyc3FiO0YoL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUEdGKDcyIiIhIiIiIiIjIiIkIiIlIiImIiInIiIoIiIpIiIqIiM1IiM2IiM3IiM4IiM5IiM6NyNGXXY= + + + + +Q:=[seq(i^i,i=0..15)]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJRRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG9GaXEtRmpxNjlRIjRGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRIzI3RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USQyNTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRJTMxMjVGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRJjQ2NjU2RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USc4MjM1NDNGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRKTE2Nzc3MjE2RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USozODc0MjA0ODlGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRLDEwMDAwMDAwMDAwRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5US0yODUzMTE2NzA2MTFGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRLjg5MTYxMDA0NDgyNTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRMDMwMjg3NTEwNjU5MjI1M0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcby1GanE2OVEyMTExMTIwMDY4MjU1NTgwMTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRMzQzNzg5Mzg5MDM4MDg1OTM3NUYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcby8lJW9wZW5HUScmbHNxYjtGKC8lJmNsb3NlR1EnJnJzcWI7RigvSSttc2VtYW50aWNzR0YlUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJRR0YoNzIiIiJGW3YiIiUiI0YiJGMjIiVESiImY20lIidWTiMpIik7c3g7IioqWz91USIsKysrKysiIi02MW42YEciLmMjWy81OyopIjBgQWYxXihHSSIyOyFlYiNvKzc2IiIzdiRmM1EhKlEqeVY3I0ZqdQ== + + + + +R:=evalf(Multiplication(P,Q)): + + + + +R:=[seq(round(R[j]),j=1..20)]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjgtRiQ2Ji1JI21uR0YlNjlRKy0zMDAwMDAwMDBGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZfbzYzUScmcGx1cztGKEZib0Zlb0Znby9Gam9RMG1lZGl1bW1hdGhzcGFjZUYoL0ZdcEZmckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYmLUZccjY5USsxMzAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvLUZfbzYzUTEmSW52aXNpYmxlVGltZXM7RihGYm9GZW9GZ28vRmpvUSQwZW1GKC9GXXBGYXNGXnBGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHEtRlxyNjlRLSZJbWFnaW5hcnlJO0YoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcby9JK21zZW1hbnRpY3NHRiVRIipGKC9GZ3NRIitGKC1GJDYmLUZccjY5USsyMzYwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmJyLUYkNiYtRlxyNjlRKzQwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVErNTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmcy1GJDYmLUZccjY5USwtMjMwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USsyMzAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRKy05MDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnJGYHRGaXMtRiQ2Ji1GXHI2OVErLTgwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZickZldEZpcy1GJDYmLUZccjY5USwtMTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZickZldEZpcy1GJDYmLUZccjY5USozMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErMTE0MjAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5USs0NTM3NTAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzLUYkNiYtRlxyNjlRKzEwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNDU2ODc1MDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmRmR3RmJyLUYkNiYtRlxyNjlRKzUxNTYyNTAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVErOTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USs1Mzg3NTAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRLTMwNzAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USs4ODUwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRLjk1MjAwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNzcwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5UTAzMjE2MDgwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNzY1NzUxNzk1N0YoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5UTIxMTc0NTY5ODM1MDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcby1GX282M1EoJm1pbnVzO0YoRmJvRmVvRmdvRmVyRmdyRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiYtRlxyNjlRKzIyMjQyOTM1ODlGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVEzNDYxMDYzNjg0MDAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmBbbC1GJDYmLUZccjY5USo5MDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVEzOTEwMzgxNjY5MTAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmBbbC1GJDYmLUZccjY5USsyMDAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRNDEzNTk2OTk2NTMwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYFtsLUYkNiYtRlxyNjlRKzMwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVE0MTgwOTAxNzYzNDAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZgW2wtRiQ2JkZldkZdc0Zjc0Zmc0Zpcy8lJW9wZW5HUScmbHNxYjtGKC8lJmNsb3NlR1EnJnJzcWI7RigvRmdzUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJSR0YoNzYsJiIqKysrKyQhIiIqJiIrKysrKzgiIiJeI0ZjX2xGY19sRmNfbCwmIisrKytnQkZjX2wqJiIrKysrK1NGY19sRmRfbEZjX2xGY19sKiYiKysrKytdRmNfbEZkX2xGY19sLCYiKysrKytCRmBfbComRlxgbEZjX2xGZF9sRmNfbEZjX2wsJiIqKysrKypGYF9sRmdfbEZjX2wsJiIqKysrKylGYF9sRmlfbEZjX2wsJiIrKysrKzVGYF9sRmlfbEZjX2wsJkZfX2xGY19sKiYiKysrK1U2RmNfbEZkX2xGY19sRmNfbComIisrK11QWEZjX2xGZF9sRmNfbCwmRmNgbEZjX2wqJiIrKyt2b1hGY19sRmRfbEZjX2xGY19sLCZGY2BsRmNfbComIisrK0RjXkZjX2xGZF9sRmNfbEZjX2wsJiIrKysrKyEqRmNfbComIisrK10oUSZGY19sRmRfbEZjX2xGY19sLCYiLSsrKytxSUZjX2wqJiIrKysrXSkpRmNfbEZkX2xGY19sRmNfbCwmIi4rKysrK18qRmNfbComIisrKysreEZjX2xGZF9sRmNfbEZjX2wsJiIwKysrKyEzO0tGY19sKiYiK2R6XmR3RmNfbEZkX2xGY19sRmNfbCwmIjIrKytdJClwWDwiRmNfbComIisqZSRIQ0FGY19sRmRfbEZjX2xGYF9sLCYiMysrKytTb2o1WUZjX2wqJkZfYGxGY19sRmRfbEZjX2xGYF9sLCYiMysrKysicDtRNSpGY19sKiYiKysrKys/RmNfbEZkX2xGY19sRmBfbCwmIjQrKysrSWwqcGY4RmNfbComIisrKysrSUZjX2xGZF9sRmNfbEZgX2wsJiI0KysrK1NqPCE0PUZjX2wqJkZfX2xGY19sRmRfbEZjX2xGYF9sNyNGXV9s + + + + + + + +
+
+
+
\ No newline at end of file diff --git a/content/static/TIPE_2007/Maple/TFD.mw b/content/static/TIPE_2007/Maple/TFD.mw new file mode 100644 index 0000000..87d6772 --- /dev/null +++ b/content/static/TIPE_2007/Maple/TFD.mw @@ -0,0 +1,472 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +restart: + + +
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure "na\303\257ve"</Font></Text-field> +Cette proc\303\251dure calcule les coefficients de Fourier par une m\303\251thode dite "naive". + + +TFDSimple:=proc(x) + +local n,X: +n:=nops(x): + +X:=[seq(sum(x[j]*exp(-2*I*(j-1)*(k-1)*Pi/n),j=1..n),k=1..n)]; + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure r\303\251cursive</Font></Text-field> +Cette proc\303\251dure prend en entr\303\251e une liste repr\303\251sentant les coefficients d'un polyn\303\264me dont on cherche \303\240 calculer les coefficients de Fourier. + + +TFDRecur:=proc(x) + +local N,CoefFFT,xp,xi,u,v,omega: +N:=nops(x): + +if N=1 then CoefFFT:=x: +else + +xp:=[seq(x[2*i],i=1..N/2)]: +xi:=[seq(x[2*i-1],i=1..N/2)]: +u:=TFDRecur(xp): +v:=TFDRecur(xi): + +omega:=exp(-2*I*Pi/N): + +CoefFFT:=[seq(omega^(k-1)*u[k]+v[k],k=1..N/2),seq(-omega^(k-1)*u[k]+v[k],k=1..N/2)]; +end if: +CoefFFT; + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par it\303\251ration</Font></Text-field> +On va utiliser l'\303\251criture des divers coefficients en binaire. + + + +TFDIter:=proc(x) +local n,i,j,k,a,b,p,l,z,w,h,m,tmp: +n:=nops(x): +l:=Array(1..n): +l:=Array(x): +p:=n/2:#p: puissance de 2 dans d\303\251composition. + +while p>=1 do + z:=1: #premi\303\250re valeur de omega. + w:=exp(-I*Pi/p): #c'est omega. + + for h from 1 to p do #Variable servant \303\240 la d\303\251composition + for m from 1 to n/(2*p) do + #On va calculer le signal xm + a:=h+2*(m-1)*p: #Premi\303\250re valeur du signal x_(m-1) + b:=a+p: #Seconde valeur du signal x_(m-1) + tmp:=(l[a]-l[b])*z: + l[a]:=l[a]+l[b]: #x_m(a) = x_(m-1)(a)+x_(m-1)(b) + l[b]:=tmp: #x_m(b) = (x_(m-1)(a)-x_(m-1)(b))*z + end do: + #On passe au signal m+1 -> w<-w^(m+1) + z:=z*w: + end do: + p:=p/2: +end do: + +#On a maintenant notre liste contenant les signaux x_r +#Il reste \303\240 remettre les signaux dans le bon ordre. +j:=1: +for i from 1 to n do + if j>i then tmp:=l[j]: + l[j]:=l[i]: + l[i]:=tmp: + end if: + p:=n/2: + while p>=2 and j>p do + j:=j-p: + p:=p/2: + end do: + j:=j+p: +end do: +l; +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la Transform\303\251e Inverse.</Font></Text-field> +De m\303\252me, il est possible d'effectuer deux m\303\251thodes pour calculer la transform\303\251e inverse de Fourier : +
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode na\303\257ve</Font></Text-field> +En utilisant le m\303\252me algorithme, on obtient : + + +TFDISimple:=proc(X) + +local n,F: +n:=nops(X): + +F:=[seq((1/n)*sum(X[i]*exp(2*I*(j-1)*(i-1)*Pi/(n)),i=1..n),j=1..n)]; + +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode r\303\251cursive</Font></Text-field> +Attention : Pour que l'on puisse retrouver les valeurs initiales, +il ne faut pas oublier de diviser par le nombre de valeurs. + + +TFDIRecur:=proc(X) +local Coef,N,Xi,Xp,U,V,Omega,k; +N:=nops(X); + +if N=1 then Coef:=X: +else + Xi:=[seq(X[2*k-1],k=1..N/2)]; + Xp:=[seq(X[2*k],k=1..N/2)]; + U:=TFDIRecur(Xi); + V:=TFDIRecur(Xp); + Omega:=exp(2*I*Pi/N); + Coef:=[seq(U[k]+Omega^(k-1)*V[k],k=1..N/2),seq(U[k]-Omega^(k-1)*V[k],k=1..N/2)]: + end if; +Coef; +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode it\303\251rative</Font></Text-field> + + + +TFDIIter:=proc(x) +local n,i,j,k,a,b,p,l,z,w,h,m,tmp: +n:=nops(x): +l:=Array(1..n): +l:=Array(x): +p:=n/2: + +while p>=1 do + z:=1: + w:=exp(I*Pi/p); #C'est la diff\303\251rence + + for h from 1 to p do + for m from 1 to n/(2*p) do + a:=h+2*(m-1)*p: + b:=a+p: + tmp:=(l[a]-l[b])*z: + l[a]:=l[a]+l[b]: + l[b]:=tmp: + end do: + z:=z*w: + end do: + p:=p/2: +end do: + +j:=1: +for i from 1 to n do + if j>i then tmp:=l[j]: + l[j]:=l[i]: + l[i]:=tmp: + end if: + p:=n/2: + while p>=2 and j>p do + j:=j-p: + p:=p/2: + end do: + j:=j+p: +end do: +for i from 1 to n do + l[i]:=l[i]/n: +end do: +return l; +end proc: + + +
+
+
+<Text-field style="Heading 1" layout="Heading 1">Mesure du temps de calcul</Text-field> +On va ici s'int\303\251resser \303\240 la mesure du temps n\303\251cessaire pour calculer les coefficients de Fourier (Transform\303\251e Directe) pour n "grand", par exemple n=2^5, n=2^10,... . +Pour cela, on va d\303\251finir la liste de nos coefficients par une m\303\251thode "pseudo-al\303\251atoire" : + + + +with(RandomTools[MersenneTwister]): +A:=[seq(GenerateFloat(),i=1..2^8)]: + + +
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode na\303\257ve</Font></Text-field> +On effectue le calcul pour la m\303\251thode na\303\257ve : + + +t:=time(): +TFDSimple(A): +Temps := time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmNi40NzJGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiVzayEiJDcjRmhy + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode r\303\251cursive</Font></Text-field> +Calcul pour la m\303\251thode r\303\251cursive : + + +t:=time(): +TFDRecur(A): +Temps := time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wNzZGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiN3ISIkNyNGaHI= + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode it\303\251rative</Font></Text-field> +Mesure pour la m\303\251thode it\303\251rative : + + +t:=time(): +TFDIter(A): +Temps:= time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wNDBGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiNTISIkNyNGaHI= + + +
+
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Multiplication de polyn\303\264mes</Font></Text-field> +
+<Text-field style="Heading 2" layout="Heading 2">Algorithme</Text-field> +On va prendre en entr\303\251e deux listes contenant les coefficients des deux polyn\303\264mes dont on cherche \303\240 calculer le produit. +Il faut prendre des pr\303\251cautions, car la proc\303\251dure ne v\303\251rifie pas si les deux polyn\303\264mes sont de m\303\252me degr\303\251, qui doit \303\252tre une puissance de 2, si l'on souhaite utiliser la m\303\251thode r\303\251cursive ou it\303\251rative. + + +Multiplication:=proc(P,Q) + +local n,N,R,A,B,i,j,k: + +n:=nops(P): +N:=2*n: + +#On cr\303\251e la liste des coefficients \303\251tendus \303\240 2n \303\251l\303\251ments. +A:=[seq(P[k],k=1..n),seq(0,k=n+1..N)]; +B:=[seq(Q[k],k=1..n),seq(0,k=n+1..N)]; + +#On calcule la TFD de chacune de ces listes. +A:=TFDIter(A): +B:=TFDIter(B): + +#On effectue les produits +R:=[seq(A[k]*B[k],k=1..N)]: + +#On r\303\251cup\303\250re les coefficients. +TFDIIter(R); + +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2">Exemple</Text-field> +On va poser LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUEYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2Jy1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYnRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbb0ZncS1GaXM2OVEiN0YnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OVEjaVhGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3FGZ3E= et LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUUYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2KS1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYmRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbby1GaXM2OVEiN0YnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OUZdc0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvRmd0LyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGJ0ZncS1GZXQ2JS1GLDY5USJYRidGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbb0ZndEZpdEZncUZncQ== doncLUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYpLUkjbW9HRiQ2M1ExJkludmlzaWJsZVRpbWVzO0YnLyUlZm9ybUdRJmluZml4RicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRjQvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Y5LyUpc3RyZXRjaHlHRjQvJSpzeW1tZXRyaWNHRjQvJShtYXhzaXplR1EpaW5maW5pdHlGJy8lKG1pbnNpemVHUSIxRicvJShsYXJnZW9wR0Y0LyUubW92YWJsZWxpbWl0c0dGNC8lJ2FjY2VudEdGNC8lMGZvbnRfc3R5bGVfbmFtZUdRKDJEfk1hdGhGJy8lJXNpemVHUSMxMkYnLyUrZm9yZWdyb3VuZEdRKFswLDAsMF1GJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRictSSNtaUdGJDY5USJuRicvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GJy8lJXNpemVHRlEvJSVib2xkR0Y0LyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y0LyUqc3Vic2NyaXB0R0Y0LyUsc3VwZXJzY3JpcHRHRjQvJStmb3JlZ3JvdW5kR0ZULyUrYmFja2dyb3VuZEdGVy8lJ29wYXF1ZUdGNC8lK2V4ZWN1dGFibGVHRjQvJSlyZWFkb25seUdGNC8lKWNvbXBvc2VkR0Y0LyUqY29udmVydGVkR0Y0LyUraW1zZWxlY3RlZEdGNC8lLHBsYWNlaG9sZGVyR0Y0LyUwZm9udF9zdHlsZV9uYW1lR0ZOLyUqbWF0aGNvbG9yR0ZULyUvbWF0aGJhY2tncm91bmRHRlcvJStmb250ZmFtaWx5R0Zobi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRicvJSltYXRoc2l6ZUdGUS1GLDYzUSI9RidGL0YyRjVGN0Y6RjxGPkZARkNGRkZIRkpGTEZPRlJGVS1JI21uR0YkNjlRIjhGJ0ZmbkZpbkZbby9GXm9GNEZgb0Zib0Zkb0Zmb0Zob0Zqb0ZccEZecEZgcEZicEZkcEZmcEZocEZqcEZccUZecS9GYXFRJ25vcm1hbEYnRmNxRmVxLUklbXN1cEdGJDYlLUZpcTY5USIyRidGZm5GaW5GW29GXHJGYG9GYm9GZG9GZm9GaG9Gam9GXHBGXnBGYHBGYnBGZHBGZnBGaHBGanBGXHFGXnFGXXJGY3EtRmlxNjlRIzMuRidGZm5GaW5GW29GXHJGYG9GYm9GZG9GZm9GaG9Gam9GXHBGXnBGYHBGYnBGZHBGZnBGaHBGanBGXHFGXnFGXXJGY3EvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnLUZZNjlRIUYnRmZuRmluRltvRl1vRmBvRmJvRmRvRmZvRmhvRmpvRlxwRl5wRmBwRmJwRmRwRmZwRmhwRmpwRlxxRl5xRmBxRmNx +
+<Text-field style="Heading 3" layout="Heading 3">Algo</Text-field> +On va demander la liste des coefficients du polyn\303\264me R=P*Q. Pour une lecture plus facile, nous en prendrons les valeurs arrondies. + + +P:=[seq(i,i=0..7)]: + + + + +Q:=[seq(i^i,i=0..7)]: + + + + +R:=evalf(Multiplication(P,Q)): + + + + +[seq(R[j],j=1..2*nops(P))]; + + +NiQtSShtZmVuY2VkRzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNjQtSSVtcm93R0YlNiYtSSNtbkdGJTY5USgwLjAwMDkxRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHRjsvJSp1bmRlcmxpbmVHRjsvJSpzdWJzY3JpcHRHRjsvJSxzdXBlcnNjcmlwdEdGOy8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjsvJStleGVjdXRhYmxlR0Y7LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOy8lKmNvbnZlcnRlZEdGOy8lK2ltc2VsZWN0ZWRHRjsvJSxwbGFjZWhvbGRlckdGOy8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZGLyUvbWF0aGJhY2tncm91bmRHRkkvJStmb250ZmFtaWx5R0Y1LyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0Y4LUkjbW9HRiU2M1EnJnBsdXM7RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y7LyUqc2VwYXJhdG9yR0Y7LyUnbHNwYWNlR1EwbWVkaXVtbWF0aHNwYWNlRigvJSdyc3BhY2VHRl1wLyUpc3RyZXRjaHlHRjsvJSpzeW1tZXRyaWNHRjsvJShtYXhzaXplR1EpaW5maW5pdHlGKC8lKG1pbnNpemVHUSIxRigvJShsYXJnZW9wR0Y7LyUubW92YWJsZWxpbWl0c0dGOy8lJ2FjY2VudEdGOy8lMGZvbnRfc3R5bGVfbmFtZUdGWi8lJXNpemVHRjgvJStmb3JlZ3JvdW5kR0ZGLyUrYmFja2dyb3VuZEdGSS1GLTYmLUYwNjlRJjAuMDAyRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vLUZhbzYzUTEmSW52aXNpYmxlVGltZXM7RihGZG9GZ29GaW8vRlxwUSQwZW1GKC9GX3BGYXJGYHBGYnBGZHBGZ3BGanBGXHFGXnFGYHFGYnFGZHFGZnEtRjA2OVEtJkltYWdpbmFyeUk7RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vL0krbXNlbWFudGljc0dGJVEiKkYoL0ZnclEiK0YoLUYtNiYtRjA2OVEnMS4wMDI0RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEnMC4wMDIwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEnMy4wMDQ1RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEmMC4wMDVGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGY3JGZnJGaXItRi02Ji1GMDY5USc5LjAwMDhGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GYG8tRi02Ji1GMDY5USgwLjAwMjIxRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEnNDEuOTk5RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEvMC4wMDMwMzEyNTAwMDBGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGY3JGZnJGaXItRi02Ji1GMDY5USgzMzAuOTk5RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRmBvLUYtNiYtRjA2OVEvMC4wMDI5NzUwMDAwMDBGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGY3JGZnJGaXItRi02Ji1GMDY5USkzNzQ1LjAwMEYoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0Zgby1GLTYmLUYwNjlRLzAuMDAzNzUwMDAwMDAwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEsNTM4MTUuMDAwMzVGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm8tRmFvNjNRKCZtaW51cztGKEZkb0Znb0Zpb0ZbcEZecEZgcEZicEZkcEZncEZqcEZccUZecUZgcUZicUZkcUZmcS1GLTYmLUYwNjlRLzAuMDAxMzQ4NjA1Mzk3RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRjA2OVEsOTI3NDIwLjAwMTNGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXHdGaHFGaXItRi02Ji1GLTYmLUYwNjlRLDEuODAxMDI0MDAwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yLUklbXN1cEdGJTYmLUYwNjlRIzEwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vLUYwNjlRIjZGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm8vJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYoL0ZnclEiXkYoRmZyRlx3LUYtNiYtRjA2OVEnMC4wMDMwRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRi02Ji1GMDY5USwyLjY3NDYwMzAwMEYoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0ZdckZgeEZmckZcd0Zqc0Zpci1GLTYmLUYtNiYtRjA2OVEsMy41NDc5OTM5OTdGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGYHhGZnJGXHctRi02Ji1GMDY5USgwLjAwMTY1RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLUYtNiYtRi02Ji1GMDY5USw0LjQxOTUyNTk5N0YoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0ZdckZgeEZmckZcd0ZedUZpci1GLTYmLUYtNiYtRjA2OVEsNS4yNjc4NDk5OTlGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGYHhGZnJGXHctRi02Ji1GMDY5US8wLjAwMTc3NTAwMDAwMEYoRjNGNkY5RjxGPkZARkJGREZHRkpGTEZORlBGUkZURlZGWEZlbkZnbkZpbkZbb0Zeb0ZdckZjckZmckZpci1GLTYmLUYtNiYtRjA2OVEsNS43NjQ4MDA5OTZGKEYzRjZGOUY8Rj5GQEZCRkRGR0ZKRkxGTkZQRlJGVEZWRlhGZW5GZ25GaW5GW29GXm9GXXJGYHhGZnJGXHdGYnZGaXItRi02Ji1GMDY5USgwLjAwMjA1RihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRlx3LUYtNiYtRjA2OVEwMC4wMDAwOTg2MDUzOTcyRihGM0Y2RjlGPEY+RkBGQkZERkdGSkZMRk5GUEZSRlRGVkZYRmVuRmduRmluRltvRl5vRl1yRmNyRmZyRmlyLyUlb3BlbkdRJyZsc3FiO0YoLyUmY2xvc2VHUScmcnNxYjtGKDcjNzIsJiQiIyIqISImIiIiKiYkIiIjISIkRmZdbF4jRmZdbEZmXWxGZl1sLCYkIiZDKyIhIiVGZl1sKiYkIiM/Rl9ebEZmXWxGW15sRmZdbEZmXWwsJiQiJlgrJEZfXmxGZl1sKiYkIiImRmpdbEZmXWxGW15sRmZdbEZmXWwsJiQiJjMrKkZfXmxGZl1sKiYkIiRAI0ZlXWxGZl1sRltebEZmXWxGZl1sLCYkIiYqKj4lRmpdbEZmXWwqJiQiKysrREpJISM3RmZdbEZbXmxGZl1sRmZdbCwmJCInKio0TEZqXWxGZl1sKiYkIisrKyt2SEZlX2xGZl1sRltebEZmXWxGZl1sLCYkIigrXXUkRmpdbEZmXWwqJiQiKysrK11QRmVfbEZmXWxGW15sRmZdbEZmXWwsJiQiK04rXSJRJkZlXWxGZl1sKiYkIisoUjAnWzhGZV9sRmZdbEZbXmxGZl1sISIiLCYkIis4Kz91IypGX15sRmZdbEZnXWxGaGBsLCYkIisrUy0sPUZqXWxGZl1sKiYkIiNJRl9ebEZmXWxGW15sRmZdbEZoYGwsJiQiKytJZ3VFRmpdbEZmXWxGZl5sRmhgbCwmJCIrKCpSKnphJEZqXWxGZl1sKiYkIiRsIkZlXWxGZl1sRltebEZmXWxGaGBsLCYkIisoKmZfPldGal1sRmZdbEZiX2xGaGBsLCYkIisqKipceUUmRmpdbEZmXWwqJiQiKysrK3Y8RmVfbEZmXWxGW15sRmZdbEZoYGwsJiQiKycqNCFbdyZGal1sRmZdbEZfYGxGaGBsLCYkIiQwI0ZlXWxGZl1sKiYkIipzUjAnKSohIzhGZl1sRltebEZmXWxGaGBs + + + + +R:=[seq(round(R[j]),j=1..2*nops(P))]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5USIwRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GanE2OUZncEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjlGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzQyRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USQzMzFGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRJTM3NDVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRJjUzODE1RihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USc5Mjc0MjBGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDE4MDEwMjRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDI2NzQ2MDNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDM1NDc5OTRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDQ0MTk1MjZGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDUyNjc4NTBGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRKDU3NjQ4MDFGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG9GaXEvJSVvcGVuR1EnJmxzcWI7RigvJSZjbG9zZUdRJyZyc3FiO0YoL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUkdGKDcyIiIhIiIiIiIkIiIqIiNVIiRKJCIlWFAiJjpRJiInP3UjKiIoQzUhPSIoLlluIyIoJSp6YSQiKEUmPlciKF15RSYiKCxbdyZGW3Y3I0ZqdQ== + + +
+
+<Text-field style="Heading 3" layout="Heading 3">Maple</Text-field> +On va evaluer le polyn\303\264me P*Q : + + +P:=sum(i*X^i,i=0..7): + + + + +Q:=sum(i^i*X^i,i=0..7): + + + + +sort(expand(P*Q),X,ascending); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNj4tSSNtaUdGJTY5USJYRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EnJnBsdXM7RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EwbWVkaXVtbWF0aHNwYWNlRigvJSdyc3BhY2VHRltwLyUpc3RyZXRjaHlHRjgvJSpzeW1tZXRyaWNHRjgvJShtYXhzaXplR1EpaW5maW5pdHlGKC8lKG1pbnNpemVHUSIxRigvJShsYXJnZW9wR0Y4LyUubW92YWJsZWxpbWl0c0dGOC8lJ2FjY2VudEdGOC8lMGZvbnRfc3R5bGVfbmFtZUdGWC8lJXNpemVHRjUvJStmb3JlZ3JvdW5kR0ZELyUrYmFja2dyb3VuZEdGRy1GJDYmLUkjbW5HRiU2OVEiM0YoRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZjckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUYsLUZpcTY5USIyRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGKC9JK21zZW1hbnRpY3NHRiVRIipGKEZeby1GJDYmLUZpcTY5USI5RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRixGaHFGW3NGXnNGXm8tRiQ2Ji1GaXE2OVEjNDJGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiNEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USQzMzFGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiNUYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USUzNzQ1RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRiwtRmlxNjlRIjZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GW3NGXnNGXm8tRiQ2Ji1GaXE2OVEmNTM4MTVGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiN0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USc5Mjc0MjBGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEiOEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USgxODAxMDI0RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRixGY3NGW3NGXnNGXm8tRiQ2Ji1GaXE2OVEoMjY3NDYwM0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zfci1GZnI2JUYsLUZpcTY5USMxMEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USgzNTQ3OTk0RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRiwtRmlxNjlRIzExRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRltzRl5zRl5vLUYkNiYtRmlxNjlRKDQ0MTk1MjZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GX3ItRmZyNiVGLC1GaXE2OVEjMTJGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG9GW3NGXnNGXm8tRiQ2Ji1GaXE2OVEoNTI2Nzg1MEYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zfci1GZnI2JUYsLUZpcTY5USMxM0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcb0Zbc0Zec0Zeby1GJDYmLUZpcTY5USg1NzY0ODAxRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRl9yLUZmcjYlRiwtRmlxNjlRIzE0RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvRltzRl5zL0Zfc1EiK0YoNyMsPkkiWEdGKCIiIiomIiIkRmh6KUZneiIiI0ZoekZoeiomIiIqRmh6KUZnekZqekZoekZoeiomIiNVRmh6KUZneiIiJUZoekZoeiomIiRKJEZoeilGZ3oiIiZGaHpGaHoqJiIlWFBGaHopRmd6IiInRmh6Rmh6KiYiJjpRJkZoeilGZ3oiIihGaHpGaHoqJiInP3UjKkZoeilGZ3oiIilGaHpGaHoqJiIoQzUhPUZoeilGZ3pGXltsRmh6Rmh6KiYiKC5ZbiNGaHopRmd6IiM1Rmh6Rmh6KiYiKCUqemEkRmh6KUZneiIjNkZoekZoeiomIihFJj5XRmh6KUZneiIjN0ZoekZoeiomIihdeUUmRmh6KUZneiIjOEZoekZoeiomIigsW3cmRmh6KUZneiIjOUZoekZoeg== + + + + + + + +
+
+
+
\ No newline at end of file diff --git a/content/static/TIPE_2007/Octave/Multiplication.m b/content/static/TIPE_2007/Octave/Multiplication.m new file mode 100644 index 0000000..eb53abc --- /dev/null +++ b/content/static/TIPE_2007/Octave/Multiplication.m @@ -0,0 +1,22 @@ +function[R]=Multiplication(P,Q) + +n=length(P); +N=2*n; +A=zeros(1,N); +B=zeros(1,N); +R=zeros(1,N); + +for i=1:n + A(i)=P(i); + B(i)=Q(i); +end + +%On calcule les transformées de chaque élément. +A=TFDB(A); +B=TFDB(B); +%On effectue les produits +for i=1:N + R(i)=A(i)*B(i); +end +R=TFDIB(R); +endfunction diff --git a/content/static/TIPE_2007/Octave/TFD - Octave.tar.bz2 b/content/static/TIPE_2007/Octave/TFD - Octave.tar.bz2 new file mode 100644 index 0000000..6ac824f Binary files /dev/null and b/content/static/TIPE_2007/Octave/TFD - Octave.tar.bz2 differ diff --git a/content/static/TIPE_2007/Octave/TFD - Octave.zip b/content/static/TIPE_2007/Octave/TFD - Octave.zip new file mode 100644 index 0000000..e540144 Binary files /dev/null and b/content/static/TIPE_2007/Octave/TFD - Octave.zip differ diff --git a/content/static/TIPE_2007/Octave/TFDI - Octave.tar.bz2 b/content/static/TIPE_2007/Octave/TFDI - Octave.tar.bz2 new file mode 100644 index 0000000..696a8a1 Binary files /dev/null and b/content/static/TIPE_2007/Octave/TFDI - Octave.tar.bz2 differ diff --git a/content/static/TIPE_2007/Octave/TFDI - Octave.zip b/content/static/TIPE_2007/Octave/TFDI - Octave.zip new file mode 100644 index 0000000..537115d Binary files /dev/null and b/content/static/TIPE_2007/Octave/TFDI - Octave.zip differ diff --git a/cv.html b/cv.html deleted file mode 100644 index 13f9e09..0000000 --- a/cv.html +++ /dev/null @@ -1,170 +0,0 @@ - - - - -Bienvenue sur la page de Audric Schiltknecht - CV - - - - - - - - - - - - - - - -
-
-
-

Curriculum Vitæ

-
Versions PDF disponibles ici : court (1 page) et long.
-

- -
-

Audric Schiltknecht

-

Né le 13 Octobre 1987

-
-

Ingénieur Informatique - ENSEEIHT

-

3 ans d'expérience

-
- -

Formation

-
-

2007 - 2010

-

École Nationale Supérieure D'Électrotechnique, D'Électronique, D'Informatique, D'Hydraulique et des Télécommunications

-

ENSEEIHT

-
Toulouse, France
-

- Ingénieur en informatique et mathématiques appliquées, spécialité informatique.
- Étude des systèmes et langages informatiques, réseaux informatiques, mathématiques.
-

- -

2009 (Septembre - Décembre)

-

Université de Montréal

-

UdeM

-
Montréal, Canada
-

- Semestre d'échange au département informatique : -

    -
  • Synthèse d’image
  • -
  • Bio-informatique
  • -
  • Technologies du Web
  • -
  • Intelligence artificielle
  • -
-

- -

2005-2007

-

Classes préparatoires

-

Lycée Dumont D'Urville

-
Toulon, France
-

Fillière MPSI/MP

- -

2007

-

Baccalauréat, Série Scientifique

-

Lycée Bonaparte

-
Toulon, France
-

Mention Très Bien

- -

Compétences

-
-
    -
  • Développement logiciel : JavaSE/JavaEE, C/C++, Perl, Prolog
  • -
  • Génie logiciel : UML, Eclipse, Ant, Make, VCS (SVN)
  • -
  • Technologies de l'Internet : XML (DTD, schéma, XPath, XSLT), XHTML, CSS, JavaScript, PHP
  • -
  • Bibliothèques logicielles : -
      -
    • Java : JUnit, Javassist, Hibernate, Swing, JSF, OpenFaces.
    • -
    • C++ : CPPUnit, STL, Gtkmm
    • -
    -
  • -
  • Systèmes d'exploitation : -
      -
    • GNU/LINUX (Debian, Ubuntu) : Utilisation/Administration
    • -
    • UNIX (OpenBSD) : Utilisation/Administration
    • -
    • Windows
    • -
    -
  • -
  • Architecture réseaux, systèmes
  • -
- -

Stages

-
-

Été 2009 : 6 semaines

-

ENSEEIHT

-
Toulouse, France
-

- Travail sur un générateur de compilateurs réalisé par un professeur de l'école, et utilisé - durant le cours de Traduction des Langages et Compilation : ajout du typage au compilateur. -
- Intégration des modifications dans le plugin pour l'intégration dans l' - IDE Eclipse. -

- -

Été 2008 : 4 semaines

-

Fondation d'Auteuil - Direction régionale

-
Marseille, France
-

- Mise en place de blogs pour la réalisation d'un journal interne pour la région -
- Réalisation d'un ensemble de macro Visual Basic pour la gestion d'une base de donnée - d'entreprises (5 000 entrées) servant à la prospection et au suivi commercial. -

- -

Langues

-
-
    -
  • Anglais : Bon niveau (lu, écrit, parlé). Score au - TOEIC (en Juin 2009) : 955/990. -
  • -
  • Espagnol : Niveau scolaire
  • -
  • Notions de japonais (apprentissage durant mes deux années à l'ENSEEIHT)
  • -
- -

Loisirs

-
-
    -
  • Ancien membre du club informatique de l'ENSEEIHT - (Net7), ainsi que du club informatique de l'INP-Toulouse - (INP-net) : -
      -
    • Gestion du réseau des étudiants (1 500 étudiants) : gestion des inscriptions à l'association étudiante, maintenance du fichier des cotisants
    • -
    • Formations : utilisation de GNU/Linux, langages informatiques (xHTML, PHP, LaTeX, etc)
    • -
    • Dépannages
    • -
    -
  • -
  • Plongée : Niveau 2 FFESSM, - 2* CMAS
  • -
  • Notions de japonais (apprentissage durant mes deux années à l'ENSEEIHT)
  • -
- - - -
-
-
- - diff --git a/index.html b/index.html deleted file mode 100644 index d70070f..0000000 --- a/index.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - -Bienvenue sur la page de Audric Schiltknecht - - - - - - - - - - - - - - -
-
-
-

Bienvenue sur mon site personnel

-

- -

Ce site contient diverses informations me concernant : CV, projets personnels et réalisés au cours de ma scolarité.

-

Bonne navigation !

- - - - -
-
-
- - diff --git a/pelicanconf.py b/pelicanconf.py new file mode 100644 index 0000000..79a3270 --- /dev/null +++ b/pelicanconf.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- # +from __future__ import unicode_literals + +AUTHOR = 'Audric Schiltknecht' +SITENAME = 'Site personnel de Audric Schiltknecht' +SITEURL = '' + +TIMEZONE = 'Europe/Paris' + +DEFAULT_LANG = 'fr' + +# Feed generation is usually not desired when developing +FEED_ALL_ATOM = None +CATEGORY_FEED_ATOM = None +TRANSLATION_FEED_ATOM = None + +# Blogroll +#LINKS = (('Pelican', 'http://getpelican.com/'), +# ('Python.org', 'http://python.org/'), +# ('Jinja2', 'http://jinja.pocoo.org/'), +# ('You can modify those links in your config file', '#'),) + +# Social widget +#SOCIAL = (('You can add links in your config file', '#'), +# ('Another social link', '#'),) + +DEFAULT_PAGINATION = 10 + +# Uncomment following line if you want document-relative URLs when developing +#RELATIVE_URLS = True + +# THEMES +THEME = "notmyidea" diff --git a/projets.html b/projets.html deleted file mode 100644 index 7fbf7dc..0000000 --- a/projets.html +++ /dev/null @@ -1,249 +0,0 @@ - - - - -Bienvenue sur la page de Audric Schiltknecht - Projets - - - - - - - - - - - - - - - -
-
-
-

Projets réalisés

-

- -

Voici un ensemble des projets réalisés au cours de mes 3 années à l'ENSEEIHT, ainsi que mes projets personnels.

- - - -

Projets personnels

-
-

Animation d'un système de particules

-

C++

-

- Ayant apprécié le projet de modélisation d'un système de particules, - j'ai décidé pour améliorer mon expérience en programmation, de porter ce projet en C++. - Je n'ai cependant pas souhaité l'améliorer au niveau du moteur physique, mais plutôt me pencher - sur la ré-écriture du code noyau dans un paradigme orienté objet. Pratiquant régulièrement le Java à l'école, - j'ai voulu me pencher plus sérieusement sur cet autre langage qu'est le C++, pour en améliorer mon utilisation. -
- Vous pouvez vous rendre sur la page dédiée à ce projet. -

- - -

UdeM - 3ème année

-
- -

Ombres douces en temps réel

-

C++

-
Automne 2009
-

- Implémentation d'un algorithme de calcul en temps réel d'ombres douces, - décrit par « Single Sample Soft Shadows Using Depth Maps », - de Stefan Brabec et Hans-Peter Seidel, publié dans Graphics Interfacei, 2002 -
- C++, OpenGL et GLSL. -

- - -

Illumination globale en temps réel

-

Analyse et présentation d'article

-
Novembre 2009
-

- Présentation de l'article « An efficient GPU-based approach for interactive global illumination », - de Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao, - publié dans ACM Transactions on Graphics, Vol. 28, No. 3, August 2009. -
- Calculs de radiance, kd-tree, - CUDA. -

- - - -

2ème année

-
- -

Site de e-commerce

-

Java EE

-
Mai - Juin 2009
-

- Mise en place d'un site internet commerçant en utilisant la technologie JavaEE : - réalisation d'un site de vente aux enchères. -
- EJB3, serveur d'applications JBoss, - librairies JSF : - Project Mojorra, librairies additionnelles OpenFaces. -

- - -

Compilateur µ-Java

-

EGG/Java

-
Mai - Juin 2009
-

- Création d'un compilateur pour un sous ensemble de Java, µ-Java : gestion des classes, de l'héritage, surcharge de méthodes. -
- Utilisation du générateur de compilateur EGG, réalisé à l'ENSEEIHT. -

- - -

UART

-

VHDL

-
Avril - Mai 2009
-

- Développement d'une unité d'émission/réception (UART) - en VHDL. - Simulation sur FPGA. -

- - - -

Objets dupliqués

-

Java

-
Mars - Avril 2009
-

- Mise en œuvre d'un service de partage d'objets répartis et dupliqués : gestions des accès concurrents, - cohérences des objets, génération de stubs. -
- Réalisation au dessus de la couche RMI de Java. - Utilisation de l'introspection pour la réalisation des stubs. - Utilisation de Javassist pour la création dynamique de classes. -

- - -

1ère année

-
- -

Simulateur de diagrammes d'état UML

-

Java

-
Mai - Juin 2008
-

- Projet en groupe assigné visant à réaliser un simulateur de diagramme d'états UML : - visualisation des états, franchissement des transitions, possibilité de modifier l'environnement en direct. -
- Interface utilisateur en Swing. -

- - -

Jeu des Allumettes

-

Java

-
Avril 2008
-

- Projet de programmation orientée objets : jeu des 13 allumettes. -
- Développement à partir d'un diagramme des classes UML, tests unitaires avec JUnit -

- - -

Processeur CRAPS

-

SHDL

-
Mars - Juin 2008
-

- Réalisation d'un processeur de type RISC - basé sur un jeu d'instruction SPARC et implémentation en SHDL - (langage de description matérielle, developpé à l'ENSEEIHT) sur FPGA. -

- - -

Simulation de particules

-

C

-
Mars - Avril 2008
-

- Projet visant à réaliser une simulation de particules, avec contraintes - (position fixe, espacement entre deux particules, ressorts, etc). -
- Gestion du fichier de description du système, interface utilisateur en GTK+. -

- - -

Machine Enigma

-

C

-
Janvier 2008
-

- Projet de programmation impérative pour la réalisation d'une machine - Enigma. -

- - - -

Compression de Huffman

-

Caml

-
Novembre - Décembre 2007
-

- Projet de programmation fonctionnelle, dont le but est de réaliser une compression - de Huffman -

- - - - - -
-
-
- - diff --git a/publishconf.py b/publishconf.py new file mode 100644 index 0000000..f920be9 --- /dev/null +++ b/publishconf.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- # +from __future__ import unicode_literals + +# This file is only used if you use `make publish` or +# explicitly specify it as your config file. + +import os +import sys +sys.path.append(os.curdir) +from pelicanconf import * + +SITEURL = 'http://www.schiltknecht.fr' +RELATIVE_URLS = False + +FEED_ALL_ATOM = 'feeds/all.atom.xml' +CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml' + +DELETE_OUTPUT_DIRECTORY = True + +# Following items are often useful when publishing + +#DISQUS_SITENAME = "" +#GOOGLE_ANALYTICS = "" diff --git a/styles/cv.css b/styles/cv.css deleted file mode 100644 index 2a054e0..0000000 --- a/styles/cv.css +++ /dev/null @@ -1,26 +0,0 @@ -#profil { - text-align: center; -} - -#profil h2 { - font-size: 1.5em; - margin-top: 0; -} - -#profil h3 { - font-size: 1.2em; -} - -h2 { - font-size: 2em; - margin-top: 40px; - margin-bottom: 10px; -} - -p+h3 { - margin-top: 30px; -} - -h5+p { - margin-top: 5px; -} \ No newline at end of file diff --git a/styles/projets.css b/styles/projets.css deleted file mode 100644 index 01249a8..0000000 --- a/styles/projets.css +++ /dev/null @@ -1,17 +0,0 @@ -h2 { - font-size: 1.5em; - margin-top: 40px; - margin-bottom: 10px; -} - -h3 { - margin-top: 40px; -} - -hr+h3 { - margin-top: 0; -} - -h5+p { - margin-top: 5px; -} \ No newline at end of file diff --git a/styles/simpleelegance03/images/button.gif b/styles/simpleelegance03/images/button.gif deleted file mode 100644 index 288a85c..0000000 Binary files a/styles/simpleelegance03/images/button.gif and /dev/null differ diff --git a/styles/simpleelegance03/images/colors.gif b/styles/simpleelegance03/images/colors.gif deleted file mode 100644 index a1da25b..0000000 Binary files a/styles/simpleelegance03/images/colors.gif and /dev/null differ diff --git a/styles/simpleelegance03/images/hr.gif b/styles/simpleelegance03/images/hr.gif deleted file mode 100644 index e63adf9..0000000 Binary files a/styles/simpleelegance03/images/hr.gif and /dev/null differ diff --git a/styles/simpleelegance03/images/image.gif b/styles/simpleelegance03/images/image.gif deleted file mode 100644 index 6f120ff..0000000 Binary files a/styles/simpleelegance03/images/image.gif and /dev/null differ diff --git a/styles/simpleelegance03/images/link.gif b/styles/simpleelegance03/images/link.gif deleted file mode 100644 index 76130db..0000000 Binary files a/styles/simpleelegance03/images/link.gif and /dev/null differ diff --git a/styles/simpleelegance03/images/list.gif b/styles/simpleelegance03/images/list.gif deleted file mode 100644 index 5f9782e..0000000 Binary files a/styles/simpleelegance03/images/list.gif and /dev/null differ diff --git a/styles/simpleelegance03/images/more.gif b/styles/simpleelegance03/images/more.gif deleted file mode 100644 index 4ddb1d4..0000000 Binary files a/styles/simpleelegance03/images/more.gif and /dev/null differ diff --git a/styles/simpleelegance03/index.html b/styles/simpleelegance03/index.html deleted file mode 100644 index d59cf35..0000000 --- a/styles/simpleelegance03/index.html +++ /dev/null @@ -1,100 +0,0 @@ - - - -Simple Elegance 03 - - - - - - - -
-
-
-

Headline (h1, h2, h3)

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur massa. Nullam enim arcu, adipiscing id, porta eget, consequat ut, lacus. Aliquam nibh. Etiam tortor ligula, facilisis sed, mattis sit amet, faucibus ut, turpis. In risus ipsum, pharetra eu, placerat id, mollis quis, justo. Mauris sollicitudin tincidunt justo. Sed suscipit tristique nulla. Suspendisse sit amet massa. -

Read more! Read more...

-

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur massa. Nullam enim arcu, adipiscing id, porta eget, consequat ut, lacus. Aliquam nibh. Etiam tortor ligula, facilisis sed, mattis sit amet, faucibus ut, turpis. In risus ipsum, pharetra eu, placerat id, mollis quis, justo. Mauris sollicitudin tincidunt justo. Sed suscipit tristique nulla. Suspendisse sit amet massa.

-
-
-
-

Gallery (h4, h5, h6)

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur massa. Nullam enim arcu, adipiscing id, porta eget, consequat ut, lacus. Aliquam nibh. Etiam tortor ligula, facilisis sed, mattis sit amet, faucibus ut, turpis. In risus ipsum, pharetra eu, placerat id, mollis quis, justo. Mauris sollicitudin tincidunt justo. Sed suscipit tristique nulla. Suspendisse sit amet massa. -

-
-
-
-

List

-
    -
  • Item one
  • -
  • Item two
  • -
  • Item three
  • -
  • Item four
  • -
  • Item five
  • -
-

Color Scheme

-

Colors

-
-
-
-

Form

-
-

- - -

-

- - -

-

- - -

-
- - -
-
-
-
-
-
-

Weblinks

- -
- -
- - diff --git a/styles/simpleelegance03/style.css b/styles/simpleelegance03/style.css deleted file mode 100644 index ba2bf33..0000000 --- a/styles/simpleelegance03/style.css +++ /dev/null @@ -1,242 +0,0 @@ -body { - margin: 0; - padding: 0; - line-height: 1.5em; - background: #fff; - font: 76%/ 160% verdana, arial, helvetica, sans-serif; - color: #000; - letter-spacing: 1px; -} - -#header { - background-color: #f5f5dc; - padding-top: 20px; - font-size: 2.4em; - font-weight: normal; - letter-spacing: 20px; - height: 40px; - text-align: center; - border-bottom: 1px solid #000; -} - -ul#navtop { - background-color: #f5f5dc; - margin: 0; - padding: 10px 0 10px 30px; - white-space: nowrap; - border-bottom: 1px solid #000; -} - -/*Navigation Styles*/ -#navtop li { - display: inline; - list-style-type: none; -} - -#navtop a { - padding: 3px 10px; -} - -#navtop a:link,#navtop a:visited { - color: #000; - text-decoration: none; - border: 1px solid #f5f5dc; - outline: none; -} - -#navtop a:hover { - color: #000; - background-color: #f9f9ea; - text-decoration: none; - border: 1px solid #000; -} - -#current { - font-weight: bold; -} - -.navbottom { - margin-left: 0; - padding-left: 0; -} - -#maincontainer { - width: 700px; - margin: 50px auto; -} - -#contentwrapper { - float: left; - width: 100%; - margin-bottom: 50px; -} - -/*Content Styles*/ -#contentcolumn { - font-size: 1em; -} - -a,a:active,a:visited { - outline: none; - color: #626258; - text-decoration: underline; -} - -a:hover { - color: #939384; - text-decoration: none; -} - -h1 { - font-size: 2em; - margin-bottom: 1em; - color: #626258; -} - -h2,h3 { - font-size: 1.3em; - margin: 0; - color: #626258; -} - -h4,h5,h6 { - font-size: 1.1em; - margin: 0; - color: #626258 -} - -.list { - margin-left: 20px; - padding-left: 0; - list-style: none; -} - -.list li { - padding-left: 10px; - background: url(images/list.gif) no-repeat 0 7px; -} - -div.hr { - margin: 20px 0 20px 0; - height: 10px; - background: #fff url(images/hr.gif); -} - -div.hr hr { - display: none; -} - -#columns { - margin: 0; -} - -#columns li { - list-style-type: none; -} - -#leftcolumn { - float: left; - width: 48%; - font-size: 1em; -} - -#leftcolumn li { - padding-left: 15px; - background: url(images/link.gif) no-repeat 0 5px; -} - -#rightcolumn { - float: right; - width: 48%; - font-size: 1em; -} - -#rightcolumn li { - padding-left: 15px; - background: url(images/link.gif) no-repeat 0 5px; -} - -#footer { - clear: left; - width: 100%; - margin: 70px 20px 20px 20px; - border-top: 5px dotted black; - text-align: center; - /*border-bottom: 20px solid #fff;*/ - font-size: 0.8em; -} - -/*Image and Gallery Styles*/ -.imgleft { - float: left; - margin: 6px 10px 0 0; -} - -.imgright { - float: right; - margin: 6px 0 0 10px; -} - -.gallery { - margin-right: 5px; - border: none; -} - -.gallery_right_img { - margin-right: 0; - border: none; -} - -/*Form Styles*/ -.form { - margin: 20px 0px 20px 0px; -} - -.form p { - width: 300px; - clear: left; - margin: 0; - padding: 5px 0 8px 0; - padding-left: 155px; - height: 1%; -} - -.form label { - font-weight: bold; - float: left; - margin-left: -155px; - width: 150px; -} - -.form .input { - width: 275px; - background-color: #f5f5dc; - border: 1px solid #f5f5dc; - letter-spacing: 1px; - padding: 4px; -} - -.form textarea { - width: 275px; - height: 150px; - background-color: #f5f5dc; - border: 1px solid #f5f5dc; - font: 1em/ 160% verdana, arial, helvetica, sans-serif; - letter-spacing: 1px; - padding: 4px; -} - -#submit { - margin-left: 155px; -} - -* html #submit { - margin-left: 158px; -} - -.submitbutton { - border: 1px solid #939384; - background: #f5f5dc url(images/button.gif); - letter-spacing: 1px; - width: 140px; -} \ No newline at end of file -- cgit v1.2.3-70-g09d2