####################################################################################################################################### # # # V I S U A L I S A T I O N D E S N O M B R E S " F R I A B L E S " : # # # # # # Author of '$xiirv/.NFRI.31.1.$U' : # # # # Jean-Francois COLONNA (LACTAMME, 20220915140217). # # # ####################################################################################################################################### $Z setParam _____RVB $NEXIST $Z # Parametre introduit le 20220920104236... # $Z setParam _____Nombre 100000 $Z setParam _____Operateur "+" $Z setParam _____Fonction $xrv/neutre$X #20220921123328____:$Z setParam _____Palette $xiP/verte_rouge.01 # $Z setParam _____Palette $xiP/verte_rouge.02 $Z # Parametre introduit le 20220920104236... # $Z @ NoMbReS1 = 2 $Z @ NoMbReSN = $_____Nombre $Z saut $Z echo "PremierNombreEntier=$NoMbReS1" $Z echo "DernierNombreEntier=$NoMbReSN" $Z # Editions introduites le 20220925122025... # $Z saut $Z set HoMoThEtIe=`$xcg/INVZ.01$X x=$NoMbReSN` $Z FilSTmpB FaCtOrs $Z $xci/valeurs_prem$X \ $Z premiere=$NoMbReS1 derniere=$NoMbReSN \ $Z editer_diviseurs=VRAI \ $Z editer_nombres=VRAI \ $Z diviseurs_premiers=VRAI \ $Z multiplicite_diviseurs_premiers=FAUX \ $Z editer_fonction=FAUX \ $Z editer_somme_diviseurs=FAUX \ $Z >> $FaCtOrs $Z $CA $FaCtOrs | \ $Z $SE -e 's/:.*$//' \ $Z > $FaCtOrs.NombresEntiers $Z $CA $xcs/csh$Y \ $Z > $FaCtOrs$Y $Z $CA $FaCtOrs | \ $Z $SE -e "s/^[^:][^:]*://" \ $Z -e "s/=//g" \ $Z -e "s/ //g" \ $Z -e "s/^+//g" \ $Z -e "s/+/ $_____Operateur /g" \ $Z -e "s/^/@ SoMmE = /" \ $Z -e 's/$/ ; echo $SoMmE/' \ $Z >> $FaCtOrs$Y $Z (source $FaCtOrs$Y) | \ $Z $_____Fonction ne=0 \ $Z fichier== \ $Z > $FaCtOrs.SommesDiviseurs $Z # Calcul de la somme des diviseurs premiers de chaque nombre entier en ignorant leur # $Z # multiplicite (par exemple elle vaudra 2 pour le nombre 8...). # $Z FilSTmpB LiStE_PoInTs $Z set MiNiMuM_X=`$xci/coordonnees$X normaliser=VRAI abscisse=VRAI x=$Xmin ordonnee=FAUX signe="$K_VIDE"` $Z set MaXiMuM_X=`$xci/coordonnees$X normaliser=VRAI abscisse=VRAI x=$Xmax ordonnee=FAUX signe="$K_VIDE"` $Z IfBasic ("$_____Fonction" != "$xrv/neutre$X") ThenBasic $Z @ YMiN = $Ymin + 1 $Z @ YMaX = $Ymax - 1 $Z ElseBasic $Z @ YMiN = $Ymin $Z @ YMaX = $Ymax $Z EndifBasic $Z set MiNiMuM_Y=`$xci/coordonnees$X normaliser=VRAI abscisse=FAUX ordonnee=VRAI y=$YMiN signe="$K_VIDE"` $Z set MaXiMuM_Y=`$xci/coordonnees$X normaliser=VRAI abscisse=FAUX ordonnee=VRAI y=$YMaX signe="$K_VIDE"` $Z $xrv/normalise.01$X ne=0 \ $Z fichier=$FaCtOrs.NombresEntiers \ $Z origine=$MiNiMuM_X extremite=$MaXiMuM_X \ $Z > $LiStE_PoInTs$COORD_X $Z $xrv/normalise.01$X ne=0 \ $Z fichier=$FaCtOrs.SommesDiviseurs \ $Z origine=$MiNiMuM_Y extremite=$MaXiMuM_Y \ $Z > $LiStE_PoInTs$COORD_Y $Z $xrv/normalise.01$X ne=0 \ $Z fichier=$FaCtOrs.SommesDiviseurs \ $Z origine=$NOIR_PLANCHER extremite=$BLANC \ $Z > $LiStE_PoInTs$NIVEAU $Z # Plus la somme des diviseurs d'un nombre entier est petite, plus sa luminance sera grande... # $Z set NPointsX=`$CA $LiStE_PoInTs$COORD_X | $WCl` $Z set NPointsY=`$CA $LiStE_PoInTs$COORD_Y | $WCl` $Z set NPoints_=`$xcg/MAX2.01$X x=$NPointsX y=$NPointsY` #20220920104236_____:$Z $xrv/store_image$X \ # #20220920104236_____:$Z ne=$NPoints_ \ # #20220920104236_____:$Z Xnormalisees=VRAI \ # #20220920104236_____:$Z LISTE_X=$LiStE_PoInTs$COORD_X \ # #20220920104236_____:$Z Ynormalisees=VRAI \ # #20220920104236_____:$Z LISTE_Y=$LiStE_PoInTs$COORD_Y \ # #20220920104236_____:$Z LISTE_Z=0 \ # #20220920104236_____:$Z Ndenormalises=VRAI \ # #20220920104236_____:$Z LISTE_NIVEAU=$LiStE_PoInTs$NIVEAU \ # #20220920104236_____:$Z histogramme=VRAI \ # #20220920104236_____:$Z standard=VRAI \ # #20220920104236_____:$Z R=$_____ImageR \ # #20220920104236_____:$Z $formatI # $Z $xrv/store_image$X \ $Z ne=$NPoints_ \ $Z Xnormalisees=VRAI \ $Z LISTE_X=$LiStE_PoInTs$COORD_X \ $Z Ynormalisees=VRAI \ $Z LISTE_Y=$LiStE_PoInTs$COORD_Y \ $Z LISTE_Z=0 \ $Z Ndenormalises=VRAI \ $Z LISTE_NIVEAU=$LiStE_PoInTs$NIVEAU \ $Z histogramme=VRAI \ $Z standard=VRAI \ $Z R=$xTV/HISTOGRAMME \ $Z $formatI $Z FilSTmpE LiStE_PoInTs $Z FilSTmpE FaCtOrs $Z IfBasic ($_____RVB == $NEXIST) ThenBasic $Z # Test introduit le 20220920104236... # $Z $xci/neutre$X \ $Z A=$xTV/HISTOGRAMME \ $Z R=$_____ImageR \ $Z $formatI $Z ElseBasic $Z set SaVe_DimX=$dimX $Z ext Shu 0 $Z @ MaIlLe_X = $dimX / $SaVe_DimX $Z $xci/vraies_C$X \ $Z A=$xTV/HISTOGRAMME \ $Z p=$_____Palette \ $Z R=$xTV/HISTOGRAMME \ $Z $formatI $Z $xci/grille.01$X \ $Z A=$NOIR \ $Z barres_horizontales=FAUX barres_verticales=VRAI \ $Z mx=$MaIlLe_X \ $Z $formatI | \ $Z $xci/complement$X \ $Z R=$xTV/BARRES \ $Z $formatI $Z execRVB $xci/and$X \ $Z A1=$xTV/HISTOGRAMME%s \ $Z A2=$xTV/BARRES \ $Z R=$_____ImageR%s \ $Z $formatI $Z EndifBasic