MATH_Constantes [Utilitaires]
Par Teddy Linet (Math4D v2)
Nouvelle recherche
Si (Faux)
` MATH_Constantes [Teddy LINET 05/2003]
` ---------------------------------------------
` Crée les constantes des méthodes de MATH4D
` dans la structure si celles-ci n'existe pas
` ---------------------------------------------
` Prend un parametre optionnel
` -1 : suppression des constantes
` 0 : mise à jour "automatique" (correspond à +1)
` Ne crée pas 2 fois les constantes une fois fait (sauf forcer)
` ---------------------------------------------
` MATHERROR : N'attend pas d'erreur
` ---------------------------------------------
` EXEMPLES :
` MATH_Constantes : création des constantes
Fin de si
C_ENTIER LONG($1;$vCommande_L)
TABLEAU ENTIER LONG($tNumerosRessource_L;0)
TABLEAU TEXTE($tNomsRessource_T;0)
TABLEAU TEXTE($tNomsConstantes_T;0)
C_ENTIER LONG($i_L;$vNumRessourceSTRD_L;$vNumRessource4DKD_L)
C_BLOB($vBlobRessource_Q)
C_TEXTE($vAlerte_T)
C_BOOLEEN($vPoursuivre_B)
C_ENTIER LONG($vVersionConstantes_L)
Si (Nombre de parametres>0)
$vCommande_L:=$1
Sinon
$vCommande_L:=0
Fin de si
LISTE RESSOURCES("4DK#";$tNumerosRessource_L;$tNomsRessource_T)
$i_L:=Chercher dans tableau($tNomsRessource_T;"MATH_ConstantesMethodes")
Si ($i_L=-1) ` Le fichier n'existe pas déjà
$vPoursuivre_B:=Vrai
Sinon
SUPPRIMER RESSOURCE("4DK#";$tNumerosRessource_L{$i_L})
Au cas ou
: ($vCommande_L=1) ` Forcer => on efface avant de recommencer
$vPoursuivre_B:=Vrai
: ($vCommande_L=-1) ` Supprimer => on efface avant de recommencer
$vPoursuivre_B:=Faux
: ($vCommande_L=0) ` Mise à jour "automatique" : pas de différence avec +1 à ce jour
$vPoursuivre_B:=Vrai
Sinon
$vPoursuivre_B:=Faux
Fin de cas
Fin de si
Si ($vPoursuivre_B)
` On crée d'abord un ficher "STR#"
LISTE RESSOURCES("STR#";$tNumerosRessource_L;$tNomsRessource_T)
$vNumRessourceSTRD_L:=15000
Tant que (Chercher dans tableau($tNumerosRessource_L;$vNumRessourceSTRD_L)#-1) `dans un endroit libre de préférence
$vNumRessourceSTRD_L:=$vNumRessourceSTRD_L+1
Fin tant que
` On crée le tableau des constantes pour la méthode MATH_Unités
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_Constantes:1:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_Categorie:2:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_UniteReference:3:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_ValeurConversion:4:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_ValeurZero:5:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_Dimension:6:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_SystemeMetrique:7:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_Totale:8:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_NomComplet:9:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_NomUI:10:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_ConstantesForcées:11:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_ToutesUnites:Toutes:S"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_Symbole:13:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Unite_CategorieParUnite:14:L"
` Pour la méthode MATH_IntervalleConfiance
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Confiance_Proportions:1:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Confiance_Moyenne:2:L"
` Pour la méthode MATH_LoiNormale
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Normale_p:p:S"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Normale_Z:Z:S"
` Pour la méthode MATH_MatriceLigne
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Matrice_Multiplier:1:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Matrice_Permuter:2:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Matrice_Ajouter:3:L"
` Pour la méthode MATH_Newton
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Newton_F:1:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Newton_FP:2:L"
` Pour la méthode MATH_Segment
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Segment_Corde:1:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Segment_Arc:2:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Segment_Fleche:3:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Segment_Surface:4:L"
` Pour la méthode MATH_SurfaceGraphe
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Graphe_Abscisses:1:L"
INSERER LIGNES($tNomsConstantes_T;1)
$tNomsConstantes_T{1}:="Graphe_Origine:2:L"
TABLEAU VERS LISTE DE CHAINES($tNomsConstantes_T;$vNumRessourceSTRD_L)
` On crée ensuite un ficher "4DK#"
LISTE RESSOURCES("4DK#";$tNumerosRessource_L;$tNomsRessource_T)
$vNumRessource4DKD_L:=15001
Tant que (Chercher dans tableau($tNumerosRessource_L;$vNumRessource4DKD_L)#-1) `dans un endroit libre de préférence
$vNumRessource4DKD_L:=$vNumRessource4DKD_L+1
Fin tant que
` On déplace les "STR#" fraichement créés vers les constantes "4DK#"
LIRE RESSOURCE("STR#";$vNumRessourceSTRD_L;$vBlobRessource_Q)
SUPPRIMER RESSOURCE("STR#";$vNumRessourceSTRD_L) ` Plus utile => poubelle !
ECRIRE RESSOURCE("4DK#";$vNumRessource4DKD_L;$vBlobRessource_Q)
ECRIRE NOM RESSOURCE("4DK#";$vNumRessource4DKD_L;"MATH_ConstantesMethodes")
$vAlerte_T:="Les constantes des unités sont inclues à la structure;"+Caractere(Retour chariot )
$vAlerte_T:=$vAlerte_T+"Réouvrir la base pour pouvoir en profiter;"
ALERTE($vAlerte_T)
Fin de si