Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mooc-rr
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
5991bb927ed63ac4311ecaac385463e8
mooc-rr
Commits
122fcafb
Commit
122fcafb
authored
Apr 20, 2020
by
Alain Leraut
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
HTML première version
parent
6c983131
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
363 additions
and
0 deletions
+363
-0
toy_document_orgmode_python_fr.html
module2/exo1/toy_document_orgmode_python_fr.html
+363
-0
No files found.
module2/exo1/toy_document_orgmode_python_fr.html
0 → 100644
View file @
122fcafb
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html
xmlns=
"http://www.w3.org/1999/xhtml"
lang=
"fr"
xml:lang=
"fr"
>
<head>
<!-- 2020-04-20 lun. 18:01 -->
<meta
http-equiv=
"Content-Type"
content=
"text/html;charset=utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
/>
<title>
À propos du calcul de π
</title>
<meta
name=
"generator"
content=
"Org mode"
/>
<meta
name=
"author"
content=
"Leraut Alain"
/>
<style
type=
"text/css"
>
<!
--
/*
--
><![
CDATA
[/*><!
--
*/
.title
{
text-align
:
center
;
margin-bottom
:
.2em
;
}
.subtitle
{
text-align
:
center
;
font-size
:
medium
;
font-weight
:
bold
;
margin-top
:
0
;
}
.todo
{
font-family
:
monospace
;
color
:
red
;
}
.done
{
font-family
:
monospace
;
color
:
green
;
}
.priority
{
font-family
:
monospace
;
color
:
orange
;
}
.tag
{
background-color
:
#eee
;
font-family
:
monospace
;
padding
:
2px
;
font-size
:
80%
;
font-weight
:
normal
;
}
.timestamp
{
color
:
#bebebe
;
}
.timestamp-kwd
{
color
:
#5f9ea0
;
}
.org-right
{
margin-left
:
auto
;
margin-right
:
0px
;
text-align
:
right
;
}
.org-left
{
margin-left
:
0px
;
margin-right
:
auto
;
text-align
:
left
;
}
.org-center
{
margin-left
:
auto
;
margin-right
:
auto
;
text-align
:
center
;
}
.underline
{
text-decoration
:
underline
;
}
#postamble
p
,
#preamble
p
{
font-size
:
90%
;
margin
:
.2em
;
}
p
.verse
{
margin-left
:
3%
;
}
pre
{
border
:
1px
solid
#ccc
;
box-shadow
:
3px
3px
3px
#eee
;
padding
:
8pt
;
font-family
:
monospace
;
overflow
:
auto
;
margin
:
1.2em
;
}
pre
.src
{
position
:
relative
;
overflow
:
visible
;
padding-top
:
1.2em
;
}
pre
.src
:before
{
display
:
none
;
position
:
absolute
;
background-color
:
white
;
top
:
-10px
;
right
:
10px
;
padding
:
3px
;
border
:
1px
solid
black
;
}
pre
.src
:hover:before
{
display
:
inline
;}
/* Languages per Org manual */
pre
.src-asymptote
:before
{
content
:
'Asymptote'
;
}
pre
.src-awk
:before
{
content
:
'Awk'
;
}
pre
.src-C
:before
{
content
:
'C'
;
}
/* pre.src-C++ doesn't work in CSS */
pre
.src-clojure
:before
{
content
:
'Clojure'
;
}
pre
.src-css
:before
{
content
:
'CSS'
;
}
pre
.src-D
:before
{
content
:
'D'
;
}
pre
.src-ditaa
:before
{
content
:
'ditaa'
;
}
pre
.src-dot
:before
{
content
:
'Graphviz'
;
}
pre
.src-calc
:before
{
content
:
'Emacs Calc'
;
}
pre
.src-emacs-lisp
:before
{
content
:
'Emacs Lisp'
;
}
pre
.src-fortran
:before
{
content
:
'Fortran'
;
}
pre
.src-gnuplot
:before
{
content
:
'gnuplot'
;
}
pre
.src-haskell
:before
{
content
:
'Haskell'
;
}
pre
.src-hledger
:before
{
content
:
'hledger'
;
}
pre
.src-java
:before
{
content
:
'Java'
;
}
pre
.src-js
:before
{
content
:
'Javascript'
;
}
pre
.src-latex
:before
{
content
:
'LaTeX'
;
}
pre
.src-ledger
:before
{
content
:
'Ledger'
;
}
pre
.src-lisp
:before
{
content
:
'Lisp'
;
}
pre
.src-lilypond
:before
{
content
:
'Lilypond'
;
}
pre
.src-lua
:before
{
content
:
'Lua'
;
}
pre
.src-matlab
:before
{
content
:
'MATLAB'
;
}
pre
.src-mscgen
:before
{
content
:
'Mscgen'
;
}
pre
.src-ocaml
:before
{
content
:
'Objective Caml'
;
}
pre
.src-octave
:before
{
content
:
'Octave'
;
}
pre
.src-org
:before
{
content
:
'Org mode'
;
}
pre
.src-oz
:before
{
content
:
'OZ'
;
}
pre
.src-plantuml
:before
{
content
:
'Plantuml'
;
}
pre
.src-processing
:before
{
content
:
'Processing.js'
;
}
pre
.src-python
:before
{
content
:
'Python'
;
}
pre
.src-R
:before
{
content
:
'R'
;
}
pre
.src-ruby
:before
{
content
:
'Ruby'
;
}
pre
.src-sass
:before
{
content
:
'Sass'
;
}
pre
.src-scheme
:before
{
content
:
'Scheme'
;
}
pre
.src-screen
:before
{
content
:
'Gnu Screen'
;
}
pre
.src-sed
:before
{
content
:
'Sed'
;
}
pre
.src-sh
:before
{
content
:
'shell'
;
}
pre
.src-sql
:before
{
content
:
'SQL'
;
}
pre
.src-sqlite
:before
{
content
:
'SQLite'
;
}
/* additional languages in org.el's org-babel-load-languages alist */
pre
.src-forth
:before
{
content
:
'Forth'
;
}
pre
.src-io
:before
{
content
:
'IO'
;
}
pre
.src-J
:before
{
content
:
'J'
;
}
pre
.src-makefile
:before
{
content
:
'Makefile'
;
}
pre
.src-maxima
:before
{
content
:
'Maxima'
;
}
pre
.src-perl
:before
{
content
:
'Perl'
;
}
pre
.src-picolisp
:before
{
content
:
'Pico Lisp'
;
}
pre
.src-scala
:before
{
content
:
'Scala'
;
}
pre
.src-shell
:before
{
content
:
'Shell Script'
;
}
pre
.src-ebnf2ps
:before
{
content
:
'ebfn2ps'
;
}
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre
.src-cpp
:before
{
content
:
'C++'
;
}
pre
.src-abc
:before
{
content
:
'ABC'
;
}
pre
.src-coq
:before
{
content
:
'Coq'
;
}
pre
.src-groovy
:before
{
content
:
'Groovy'
;
}
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre
.src-bash
:before
{
content
:
'bash'
;
}
pre
.src-csh
:before
{
content
:
'csh'
;
}
pre
.src-ash
:before
{
content
:
'ash'
;
}
pre
.src-dash
:before
{
content
:
'dash'
;
}
pre
.src-ksh
:before
{
content
:
'ksh'
;
}
pre
.src-mksh
:before
{
content
:
'mksh'
;
}
pre
.src-posh
:before
{
content
:
'posh'
;
}
/* Additional Emacs modes also supported by the LaTeX listings package */
pre
.src-ada
:before
{
content
:
'Ada'
;
}
pre
.src-asm
:before
{
content
:
'Assembler'
;
}
pre
.src-caml
:before
{
content
:
'Caml'
;
}
pre
.src-delphi
:before
{
content
:
'Delphi'
;
}
pre
.src-html
:before
{
content
:
'HTML'
;
}
pre
.src-idl
:before
{
content
:
'IDL'
;
}
pre
.src-mercury
:before
{
content
:
'Mercury'
;
}
pre
.src-metapost
:before
{
content
:
'MetaPost'
;
}
pre
.src-modula-2
:before
{
content
:
'Modula-2'
;
}
pre
.src-pascal
:before
{
content
:
'Pascal'
;
}
pre
.src-ps
:before
{
content
:
'PostScript'
;
}
pre
.src-prolog
:before
{
content
:
'Prolog'
;
}
pre
.src-simula
:before
{
content
:
'Simula'
;
}
pre
.src-tcl
:before
{
content
:
'tcl'
;
}
pre
.src-tex
:before
{
content
:
'TeX'
;
}
pre
.src-plain-tex
:before
{
content
:
'Plain TeX'
;
}
pre
.src-verilog
:before
{
content
:
'Verilog'
;
}
pre
.src-vhdl
:before
{
content
:
'VHDL'
;
}
pre
.src-xml
:before
{
content
:
'XML'
;
}
pre
.src-nxml
:before
{
content
:
'XML'
;
}
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre
.src-conf
:before
{
content
:
'Configuration File'
;
}
table
{
border-collapse
:
collapse
;
}
caption
.t-above
{
caption-side
:
top
;
}
caption
.t-bottom
{
caption-side
:
bottom
;
}
td
,
th
{
vertical-align
:
top
;
}
th
.org-right
{
text-align
:
center
;
}
th
.org-left
{
text-align
:
center
;
}
th
.org-center
{
text-align
:
center
;
}
td
.org-right
{
text-align
:
right
;
}
td
.org-left
{
text-align
:
left
;
}
td
.org-center
{
text-align
:
center
;
}
dt
{
font-weight
:
bold
;
}
.footpara
{
display
:
inline
;
}
.footdef
{
margin-bottom
:
1em
;
}
.figure
{
padding
:
1em
;
}
.figure
p
{
text-align
:
center
;
}
.inlinetask
{
padding
:
10px
;
border
:
2px
solid
gray
;
margin
:
10px
;
background
:
#ffffcc
;
}
#org-div-home-and-up
{
text-align
:
right
;
font-size
:
70%
;
white-space
:
nowrap
;
}
textarea
{
overflow-x
:
auto
;
}
.linenr
{
font-size
:
smaller
}
.code-highlighted
{
background-color
:
#ffff00
;
}
.org-info-js_info-navigation
{
border-style
:
none
;
}
#org-info-js_console-label
{
font-size
:
10px
;
font-weight
:
bold
;
white-space
:
nowrap
;
}
.org-info-js_search-highlight
{
background-color
:
#ffff00
;
color
:
#000000
;
font-weight
:
bold
;
}
.org-svg
{
width
:
90%
;
}
/*]]>*/
--
>
</style>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"http://www.pirilampo.org/styles/readtheorg/css/htmlize.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"http://www.pirilampo.org/styles/readtheorg/css/readtheorg.css"
/>
<script
src=
"https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"
></script>
<script
src=
"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"
></script>
<script
type=
"text/javascript"
src=
"http://www.pirilampo.org/styles/lib/js/jquery.stickytableheaders.js"
></script>
<script
type=
"text/javascript"
src=
"http://www.pirilampo.org/styles/readtheorg/js/readtheorg.js"
></script>
<script
type=
"text/javascript"
>
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
<!--
/*--><![CDATA[/*><!--*/
function
CodeHighlightOn
(
elem
,
id
)
{
var
target
=
document
.
getElementById
(
id
);
if
(
null
!=
target
)
{
elem
.
cacheClassElem
=
elem
.
className
;
elem
.
cacheClassTarget
=
target
.
className
;
target
.
className
=
"code-highlighted"
;
elem
.
className
=
"code-highlighted"
;
}
}
function
CodeHighlightOff
(
elem
,
id
)
{
var
target
=
document
.
getElementById
(
id
);
if
(
elem
.
cacheClassElem
)
elem
.
className
=
elem
.
cacheClassElem
;
if
(
elem
.
cacheClassTarget
)
target
.
className
=
elem
.
cacheClassTarget
;
}
/*]]>*/
//-->
</script>
</head>
<body>
<div
id=
"content"
>
<h1
class=
"title"
>
À propos du calcul de π
</h1>
<div
id=
"table-of-contents"
>
<h2>
Table des matières
</h2>
<div
id=
"text-table-of-contents"
>
<ul>
<li><a
href=
"#orgd10738e"
>
1. En demandant à la lib maths
</a></li>
<li><a
href=
"#org50a725d"
>
2. En utilisant la méthode des aiguilles de Buffon
</a></li>
<li><a
href=
"#org7d95588"
>
3. Avec un argument "fréquentiel" de surface
</a></li>
</ul>
</div>
</div>
<div
id=
"outline-container-orgd10738e"
class=
"outline-2"
>
<h2
id=
"orgd10738e"
><span
class=
"section-number-2"
>
1
</span>
En demandant à la lib maths
</h2>
<div
class=
"outline-text-2"
id=
"text-1"
>
<p>
Mon ordinateur m'indique que π vaut approximativement:
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #a020f0;"
>
from
</span>
math
<span
style=
"color: #a020f0;"
>
import
</span>
*
<span
style=
"color: #a020f0;"
>
print
</span>
(pi)
</pre>
</div>
<pre
class=
"example"
>
3.141592653589793
</pre>
</div>
</div>
<div
id=
"outline-container-org50a725d"
class=
"outline-2"
>
<h2
id=
"org50a725d"
><span
class=
"section-number-2"
>
2
</span>
En utilisant la méthode des aiguilles de Buffon
</h2>
<div
class=
"outline-text-2"
id=
"text-2"
>
<p>
Mais calculé avec la méthode des aiguilles de Buffon, on obtiendrait
comme approximation :
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #a020f0;"
>
import
</span>
numpy
<span
style=
"color: #a020f0;"
>
as
</span>
np
np.random.seed(seed=42)
<span
style=
"color: #a0522d;"
>
N
</span>
= 10000
<span
style=
"color: #a0522d;"
>
x
</span>
= np.random.uniform(size=N, low=0, high=1)
<span
style=
"color: #a0522d;"
>
theta
</span>
= np.random.uniform(size=N, low=0, high=pi/2)
<span
style=
"color: #a0522d;"
>
valeur
</span>
= 2/(
<span
style=
"color: #483d8b;"
>
sum
</span>
((x+np.sin(theta))
>
1)/N)
<span
style=
"color: #a020f0;"
>
print
</span>
(valeur)
</pre>
</div>
<pre
class=
"example"
>
3.128911138923655
</pre>
</div>
</div>
<div
id=
"outline-container-org7d95588"
class=
"outline-2"
>
<h2
id=
"org7d95588"
><span
class=
"section-number-2"
>
3
</span>
Avec un argument "fréquentiel" de surface
</h2>
<div
class=
"outline-text-2"
id=
"text-3"
>
<p>
Sinon, une méthode plus simple à comprendre et ne faisant pas
intervenir d'appel à la fonction sinus se base sur le fait que si
X∼U(0,1) et Y∼U(0,1) alors P[X2+Y2≤1]=π/4 (voir méthode de Monte
Carlo sur Wikipedia). Le code suivant illustre ce fait :
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #a020f0;"
>
import
</span>
matplotlib.pyplot
<span
style=
"color: #a020f0;"
>
as
</span>
plt
np.random.seed(seed=42)
<span
style=
"color: #a0522d;"
>
N
</span>
= 1000
<span
style=
"color: #a0522d;"
>
x
</span>
= np.random.uniform(size=N, low=0, high=1)
<span
style=
"color: #a0522d;"
>
y
</span>
= np.random.uniform(size=N, low=0, high=1)
<span
style=
"color: #a0522d;"
>
accept
</span>
= (x*x+y*y)
<
= 1
<span
style=
"color: #a0522d;"
>
reject
</span>
= np.logical_not(accept)
<span
style=
"color: #a0522d;"
>
fig
</span>
,
<span
style=
"color: #a0522d;"
>
ax
</span>
= plt.subplots(1)
ax.scatter(x[accept], y[accept], c=
<span
style=
"color: #8b2252;"
>
'b'
</span>
, alpha=0.2, edgecolor=
<span
style=
"color: #008b8b;"
>
None
</span>
)
ax.scatter(x[reject], y[reject], c=
<span
style=
"color: #8b2252;"
>
'r'
</span>
, alpha=0.2, edgecolor=
<span
style=
"color: #008b8b;"
>
None
</span>
)
ax.set_aspect(
<span
style=
"color: #8b2252;"
>
'equal'
</span>
)
plt.savefig(matplot_lib_filename)
<span
style=
"color: #a020f0;"
>
print
</span>
(matplot_lib_filename)
</pre>
</div>
<div
class=
"figure"
>
<p><img
src=
"./valeurpip.png"
alt=
"valeurpip.png"
/>
</p>
</div>
<p>
Il est alors aisé d'obtenir une approximation (pas terrible) de π en
comptant combien de fois, en moyenne, X2+Y2 est inférieur à 1 :
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #a020f0;"
>
print
</span>
(
<span
style=
"color: #8b2252;"
>
'{:1.13f}'
</span>
.
<span
style=
"color: #483d8b;"
>
format
</span>
(4*np.mean(accept)))
</pre>
</div>
<pre
class=
"example"
>
3.1120000000000
</pre>
<p>
Auteur: Konrad Hinsen
</p>
<p>
Created: 2019-03-28 Thu 11:06
</p>
</div>
</div>
</div>
<div
id=
"postamble"
class=
"status"
>
<p
class=
"author"
>
Auteur: Leraut Alain
</p>
<p
class=
"date"
>
Created: 2020-04-20 lun. 18:01
</p>
<p
class=
"validation"
><a
href=
"http://validator.w3.org/check?uri=referer"
>
Validate
</a></p>
</div>
</body>
</html>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment