Start exercice perl

This commit is contained in:
flyingscorpio@clevo 2022-07-08 08:25:21 +02:00
parent cb5f3ea514
commit 0294e0d310
3 changed files with 140 additions and 0 deletions

16
scripting/perl/Makefile Normal file
View file

@ -0,0 +1,16 @@
filename=$(shell basename $(shell pwd))
timestamp=$(shell date +%Y-%m-%d_%H:%M)
all: exercice
exercice: exercice.tex
@latexmk -pdf exercice.tex
@if ! cmp --silent build/exercice.pdf exercice_${filename}*.pdf; then \
touch exercice_${filename}_tmp.pdf; \
rm exercice*.pdf; \
cp build/exercice.pdf exercice_${filename}_${timestamp}.pdf; \
echo "Updated"; \
fi
clean:
@rm -rf build 2>/dev/null

View file

@ -0,0 +1,30 @@
\documentclass[a4paper,french,12pt]{article}
\title{Scripting --- Exercices PowerShell}
\author{Tunui Franken}
\date{Dernière compilation~: \today{} à \currenttime}
\usepackage{styles}
\usepackage{enumitem}
\begin{document}
\maketitle
\begin{enumerate}
\item Écrire un programme qui calcule la circonférence dun cercle avec le rayon de 12.5.
La circonférence est $2\pi$ fois le rayon de la circonférence (la valeur de $\pi$ est approximativement 3.141592654).
\item Modifiez le programme précédent pour permettre à lutilisateur du programme de saisir la valeur du rayon.
\item Modifiez le programme précédent en sorte que si lutilisateur saisit le nombre inférieur à 0, la valeur reportée sera 0 (plutôt que négative).
\item Écrire un programme qui lit les valeurs de 2 nombres et affiche à lécran leur produit.
\item Écrire un programme qui lit une chaîne de caractères et un nombre et affiche, sur les lignes séparées, la chaine en question le nombre de fois indiqué par le nombre saisi.
Si lutilisateur saisit `Fred' et `3', la sortie sera donc: \texttt{Fred Fred Fred}.
\end{enumerate}
\end{document}

94
scripting/perl/styles.sty Normal file
View file

@ -0,0 +1,94 @@
\ProvidesPackage{styles}
\usepackage[
%showframe,
a4paper,includeheadfoot,margin=2cm,top=1cm,bottom=1cm
]{geometry}
\setcounter{tocdepth}{2}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{datetime}
\usepackage{color}
\usepackage{amsmath}
\usepackage{amsfonts}
\everymath{\displaystyle}
\newcommand*\dif{\mathop{}\!\mathrm{d}}
\usepackage{booktabs}
\usepackage{tabularx}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{makecell}
\usepackage{parskip}
\usepackage{microtype}
\usepackage{listingsutf8}
\lstset{%
inputencoding=utf8/latin1,
basicstyle=\small\ttfamily,
columns=flexible,
breaklines=true,
extendedchars=true,
literate=
{á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'\i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1
{Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1
{à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`\i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1
{À}{{\`A}}1 {È}{{\`E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1
{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"\i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1
{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1
{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^\i}}1 {ô}{{\^o}}1 {û}{{\^u}}1
{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1
{Ã}{{\~A}}1 {ã}{{\~a}}1 {Õ}{{\~O}}1 {õ}{{\~o}}1 {œ}{{\oe}}1
{Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1 {ű}{{\H{u}}}1
{Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1 {ç}{{\c c}}1
{Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1
{€}{{\euro}}1 {£}{{\pounds}}1 {«}{{\guillemotleft}}1
{»}{{\guillemotright}}1 {ñ}{{\~n}}1 {Ñ}{{\~N}}1 {¿}{{?`}}1
}
\let\oldlstinputlisting\lstinputlisting
% make \lstinputlisting always have frame
\renewcommand{\lstinputlisting}[2][]{\oldlstinputlisting[frame=single,#1]{#2}}
\lstnewenvironment{console}[1][]{%
\lstset{%
inputencoding=utf8/latin1,
basicstyle=\small\ttfamily\color{white},
columns=flexible,
breaklines=true,
extendedchars=true,
literate=
{á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'\i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1
{Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1
{à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`\i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1
{À}{{\`A}}1 {È}{{\`E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1
{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"\i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1
{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1
{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^\i}}1 {ô}{{\^o}}1 {û}{{\^u}}1
{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1
{Ã}{{\~A}}1 {ã}{{\~a}}1 {Õ}{{\~O}}1 {õ}{{\~o}}1 {œ}{{\oe}}1
{Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1 {ű}{{\H{u}}}1
{Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1 {ç}{{\c c}}1
{Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1
{€}{{\euro}}1 {£}{{\pounds}}1 {«}{{\guillemotleft}}1
{»}{{\guillemotright}}1 {ñ}{{\~n}}1 {Ñ}{{\~N}}1 {¿}{{?`}}1,
backgroundcolor=\color{black}, #1
}%
}{}
\usepackage{graphicx}
\usepackage[hyphens]{url}
\usepackage[colorlinks,hidelinks]{hyperref}
\usepackage{letltxmacro}
\LetLtxMacro{\normalparagraph}{\paragraph}
\renewcommand{\paragraph}[1]{\normalparagraph{#1}\mbox{}}
\sloppy