\NewDocumentCommand
\eratosthene
\group_begin:
\int_new:N
\l_ERA_diviseur_max_int
\int_set:Nn
\l_ERA_diviseur_max_int
\fp_to_int:n
\intarray_new:Nn
\__ERA_qt_ia
\intarray_new:Nn
\__ERA_dv_ia
\cs_new:Nn
\ERA_marquer_de_a_par:nnn
\int_set:Nn
\l_tmpa_int
\int_step_inline:nnnn
\int_compare:nNnT
\intarray_item:Nn
\__ERA_dv_ia
\intarray_gset:Nnn
\__ERA_dv_ia
\intarray_gset:Nnn
\__ERA_qt_ia
\l_tmpa_int
\int_incr:N
\l_tmpa_int
\int_set:Nn
\l_tmpa_int
\int_step_inline:nnnn
\intarray_gset:Nnn
\__ERA_dv_ia
\intarray_gset:Nnn
\__ERA_qt_ia
\l_tmpa_int
\int_incr:N
\l_tmpa_int
\int_set:Nn
\l_tmpb_int
\int_while_do:nNnn
\l_tmpb_int
\l_ERA_diviseur_max_int
\ERA_marquer_de_a_par:nnn
\l_tmpb_int
\l_tmpb_int
\int_do_until:nNnn
\intarray_item:Nn
\__ERA_dv_ia
\l_tmpb_int
\int_add:Nn
\l_tmpb_int
\int_step_inline:nnnn
\int_compare:nNnT
\intarray_item:Nn
\__ERA_dv_ia
\intarray_gset:Nnn
\__ERA_dv_ia
\intarray_gset:Nnn
\__ERA_qt_ia
\cs_undefine:N
\l_ERA_diviseur_max_int
\group_end:
\cs_new:Nn
\ERA_presenter_nieme:n
\group_begin:
\int_set:Nn
\l_tmpa_int
\intarray_item:Nn
\__ERA_qt_ia
\int_set:Nn
\l_tmpb_int
\int_mod:nn
\framebox[4em]
\strut
\footnotesize
\int_compare:nNnTF
\l_tmpa_int
\textbf
\textcolor
\int_to_arabic:n
\int_compare:nNnT
\l_tmpa_int
\int_set:Nn
\l_tmpa_int
\intarray_item:Nn
\__ERA_dv_ia
\langle
\int_to_arabic:n
\l_tmpa_int
\rangle
\)
\kern
\fboxrule
\int_compare:nNnT
\l_tmpb_int
\par
\nointerlineskip
\kern-
\fboxrule
\noindent
\group_end:
\NewDocumentCommand
\EcrireCribleEratosthene
\par
\noindent
\int_step_inline:nn
\ERA_presenter_nieme:n
\NewDocumentCommand
\EcrireDiviseurs
\group_begin:
\int_new:N
\l_ERA_nv_qt_int
\int_set:Nn
\l_ERA_nv_qt_int
\int_new:N
\l_ERA_vx_dv_int
\int_set:Nn
\l_ERA_vx_dv_int
\int_new:N
\l_ERA_nv_dv_int
\int_set:Nn
\l_ERA_nv_dv_int
\intarray_item:Nn
\__ERA_dv_ia
\par
\(
\int_to_arabic:n
\int_while_do:nNnn
\l_ERA_nv_qt_int
\int_compare:nNnT
\l_ERA_vx_dv_int
\times
\int_to_arabic:n
\l_ERA_nv_dv_int
\int_set:Nn
\l_ERA_vx_dv_int
\l_ERA_nv_dv_int
\int_set:Nn
\l_ERA_nv_qt_int
\intarray_item:Nn
\__ERA_qt_ia
\l_ERA_nv_qt_int
\int_set:Nn
\l_ERA_nv_dv_int
\intarray_item:Nn
\__ERA_dv_ia
\l_ERA_nv_qt_int
\)
\cs_undefine:N
\l_ERA_nv_qt_int
\cs_undefine:N
\l_ERA_vx_dv_int
\cs_undefine:N
\l_ERA_nv_dv_int
\group_end:
