Nuvola apps important.png Attention, suite à une analyse de sécurité, les liens vers quelques serveurs d'exploration sont désactivés.

-

Wicri:EuropiumV1/Génération tableau

De Wicri Terre

Cette page contient les codes sources nécessaires à la génération d'un modèle contenant un tableau périodique pour la version EuropiumV1 du « Serveur d'exploration sur l'europium ».

Programme de génération

#include <stdio.h>     
#include <stdlib.h>    
#include <getopt.h>
#include <time.h>
#include <math.h>
#include "SxmlNode.h"
#include "StrDict.h"


SxmlNode *indexNode, *keyNode;
char *key;
char *frequenceStr;
int max,frequence,niveau,frequenceElem;

main()
 {
   
   StrDict *table;
   table = NewStrDict();
  
   while ((indexNode=SxmlInputNextDocumentElement()))
     {
       keyNode=SxmlGetFirstChildByTagName(indexNode, "kw");
       if (!keyNode)
         {
           perror("File not fit (no element kw)");
           exit (EXIT_FAILURE);
         }
       key=SxmlLeafText(keyNode);
       frequenceStr=SxmlLeafText(SxmlGetFirstChildByTagName(indexNode, "f"));
 
       StrDictSet (table, strdup(key), strdup(frequenceStr));
       frequence=atoi(frequenceStr);
       if(frequence>max)
         {
           max=frequence;
         }      
     }
   /* printf("%s\n", StrDictSearch(table,"Cl"));
      printf("%d\n", max);  */ 

   StrDictIteratorReset(table);

   printf("{{Tableau périodique pondéré flottant\n");
   printf(" | niveau=0 \n");
   while (key=StrDictNext(table))
  {
    frequenceElem=atoi(StrDictValue(table));
    niveau=(8*frequenceElem/max)+1;
    printf("| %s niveau=%d\n",key,niveau);
    /*printf(" | %s lien=%d\n",key));*/
  }          
   printf ("}}\n");

   StrDictFree(table);
}

Compilation

gcc EuropiumV1/Import/generTableau.c $DILIB_CC -o EuropiumV1/bin/generTableau

Génération

HfdCat EuropiumV1/Data/Main/Exploration/elemChimie.i.hfd| SxmlCut idx/l | ./EuropiumV1/bin/generTableau

Mise en œuvre

WicriGetPage -l wicri-terre.fr -p "Wicri:EuropiumV1/Génération tableau" | MediaWikiExtractSources -w | HfdStoreFile