Accueil > Xcas > Divers

Divers

Dernier ajout : 20 mai 2008.

Articles de cette rubrique

    20 mai 2008

  • Répartition des caractères dans les langues officielles de l’UE

    L’Union européene compte actuellement 23 langues officielles. Les liens suivants vous donneront un même texte traduit dans ces différentes langues. On dispose de sa transcription mais aussi de son enregistrement :

    - l’allemand
    - l’anglais
    - le bulgare
    - le danois
    - l’espagnol
    - l’estonien
    - le finnois
    - le français
    - le grec
    - le hongrois
    - l’irlandais
    - l’italien
    - le letton
    - le lituanien
    - le maltais
    - le néerlandais
    - le polonais
    - le portugais
    - le roumain
    - le slovaque
    - le slovène
    - le suédois
    - le tchèque

    Ces différentes traductions ont été analysées par un programme de comptage de caractères pour connaître les différentes répartitions.

    Les résultats sont fournis dans l’archive suivante :

    Zip - 87.2 ko
    langues_UE.zip

    On y trouve les fichiers suivant :
    - langues.tex : résultats par langue au format latex
    - langues.pdf : résultats par langue au format pdf
    - langue_tab.ods : résultats par langue sous forme de tableau openoffice
    - langues-recap.ods : récapitulatif sous forme de tableau openoffice


  • 18 mai 2008

  • Comptage des caractères d’un texte avec Xcas

    Voici un petit programme Xcas permettant d’analyser un texte pour en connaĩtre la répartition de ses caractères. :

    Zip - 2.3 ko
    francais.xws.zip

    Le programme "compte_car"



    compte_car(Texte,List_car) :=
    local m,n,nbcar,j,k ;
    m := size(Texte) ;
    n :=size(List_car) ;
    nbcar :=0 ;
    for (j :=1 ;j<=m ;j :=j+1)

    for (k :=1 ;k<=n ;k :=k+1)

    if (Texte[j-1]==List_car[k-1])

    nbcar :=nbcar+1 ;



    return nbcar ;

     : ;

    Le programme "analyse_texte"



    analyse_texte(Texte) :=
    local listes ;
    local list_A,list_B,list_C,list_D,list_E,list_F,list_G,list_H,list_I,list_J ;
    local list_K,list_L,list_M,list_N,list_O,list_P,list_Q,list_R,list_S,list_T ;
    local list_U,list_V,list_W,list_X,list_Y,list_Z,list_espace,list_ponctuation ;
    local j,M,S,Taille ;

    M :=matrix(31,3,0) ;
    Taille :=size(Texte) ;

    list_A :=["a","A","à","á","â","ä","å","ã"] ;
    list_B :=["b","B"] ;
    list_C :=["c","C","ç"] ;
    list_D :=["d","D"] ;
    list_E :=["e","E","è","é","ê"] ;
    list_F :=["f","F"] ;
    list_G :=["g","G"] ;
    list_H :=["h","H"] ;
    list_I :=["i","I","í","ì"] ;
    list_J :=["j","J"] ;
    list_K :=["k","K"] ;
    list_L :=["l","L"] ;
    list_M :=["m","M"] ;
    list_N :=["n","N"] ;
    list_O :=["o","O","ö","õ","ó","ò"] ;
    list_P :=["p","P"] ;
    list_Q :=["q","Q"] ;
    list_R :=["r","R"] ;
    list_S :=["s","S"] ;
    list_T :=["t","T"] ;
    list_U :=["u","U","ù","ú","ü"] ;
    list_V :=["v","V"] ;
    list_W :=["w","W"] ;
    list_X :=["x","X"] ;
    list_Y :=["y","Y"] ;
    list_Z :=["z","Z"] ;
    list_espace :=[" "] ;
    list_ponctuation :=[".",","," :"," ;"," !"," ?"] ;
    liste_retour_ligne :=("
    ") ;

    listes :=[list_A,list_B,list_C,list_D,list_E,list_F,list_G,list_H,list_I,list_J,
    list_K,list_L,list_M,list_N,list_O,list_P,list_Q,list_R,list_S,list_T,
    list_U,list_V,list_W,list_X,list_Y,list_Z,list_espace,list_ponctuation,liste_retour_ligne] ;

    M[0,0] :="a" ;
    M[1,0] :="b" ;
    M[2,0] :="c" ;
    M[3,0] :="d" ;
    M[4,0] :="e" ;
    M[5,0] :="f" ;
    M[6,0] :="g" ;
    M[7,0] :="h" ;
    M[8,0] :="i" ;
    M[9,0] :="j" ;
    M[10,0] :="k" ;
    M[11,0] :="l" ;
    M[12,0] :="m" ;
    M[13,0] :="n" ;
    M[14,0] :="o" ;
    M[15,0] :="p" ;
    M[16,0] :="q" ;
    M[17,0] :="r" ;
    M[18,0] :="s" ;
    M[19,0] :="t" ;
    M[20,0] :="u" ;
    M[21,0] :="v" ;
    M[22,0] :="w" ;
    M[23,0] :="x" ;
    M[24,0] :="y" ;
    M[25,0] :="z" ;
    M[26,0] :="espace" ;
    M[27,0] :="ponctuation" ;
    M[28,0] :="Retour a la ligne" ;
    M[29,0] :="autres" ;
    M[30,0] :="Total" ;

    S :=0 ;
    for (j :=1 ;j<=29 ;j :=j+1)

    M[j-1,1] :=compte_car(Texte,listes[j-1]) ;
    M[j-1,2] :=format(evalf(M[j-1,1]/Taille*100),"f2") ;
    S :=S+M[j-1,1] ;

    M[29,1] :=Taille-S ;
    M[29,2] :=format(evalf(M[29,1]/Taille*100),"f2") ;
    M[30,1] :=Taille ;
    M[30,2] :=100 ;

    return M ;

     : ;

    Comment les utiliser ?


    Dans un fichier xcas :

    1) Rentrer le programme "compte_car".

    2) Rentrer le programme "analyse_texte".

    3) Rentrer un texte "T" ;


    T :="L’Union européenne (UE) est une famille de pays démocratiques européens décidés à ?uvrer ensemble à la paix et à la prospérité.
    Il ne s’agit pas d’un État destiné à se substituer aux États existants, mais l’Union européenne va plus loin que toute autre organisation internationale.
    En fait, c’est une organisation unique en son genre. Les États qui la composent ont mis en place des institutions communes auxquelles ils délèguent une partie de leur souveraineté, afin que les décisions sur des questions spécifiques d’intérêt commun puissent se prendre démocratiquement au niveau européen.
    L’Europe est un continent caractérisé par de nombreuses traditions et langues différentes, mais aussi par des valeurs communes.
    Ce sont ces valeurs que défend l’Union européenne en instaurant une coopération toujours plus étroite entre ses peuples, en renforçant l’unité tout en préservant la diversité et en faisant en sorte que les décisions soient prises le plus près possible du citoyen.
    Dans le monde de plus en plus interdépendant qui sera celui du XXIe siècle, le citoyen européen devra plus que jamais coopérer avec des peuples d’autres pays, dans un esprit de curiosité, de tolérance et de solidarité."

    4) Analyser le texte :

    P:=analyse_texte(T)

    On obtient la matrice avec la répartition des caractères :

    
\left(\begin{array}{lll}
\mbox{a} & 66 & \mbox{5.5} \\
\mbox{b} & 4 & \mbox{0.33} \\
\mbox{c} & 27 & \mbox{2.2} \\
\mbox{d} & 37 & \mbox{3.1} \\
\mbox{e} & 176 & \mbox{15} \\
\mbox{f} & 9 & \mbox{0.75} \\
\mbox{g} & 6 & \mbox{0.5} \\
\mbox{h} & 0 & \mbox{0} \\
\mbox{i} & 73 & \mbox{6.1} \\
\mbox{j} & 2 & \mbox{0.17} \\
\mbox{k} & 0 & \mbox{0} \\
\mbox{l} & 43 & \mbox{3.6} \\
\mbox{m} & 18 & \mbox{1.5} \\
\mbox{n} & 92 & \mbox{7.6} \\
\mbox{o} & 55 & \mbox{4.6} \\
\mbox{p} & 39 & \mbox{3.2} \\
\mbox{q} & 13 & \mbox{1.1} \\
\mbox{r} & 58 & \mbox{4.8} \\
\mbox{s} & 96 & \mbox{8} \\
\mbox{t} & 75 & \mbox{6.2} \\
\mbox{u} & 73 & \mbox{6.1} \\
\mbox{v} & 10 & \mbox{0.83} \\
\mbox{w} & 0 & \mbox{0} \\
\mbox{x} & 6 & \mbox{0.5} \\
\mbox{y} & 4 & \mbox{0.33} \\
\mbox{z} & 0 & \mbox{0} \\
\mbox{espace} & 187 & \mbox{16} \\
\mbox{ponctuation} & 16 & \mbox{1.3} \\
\mbox{Retour a la ligne} & 5 & \mbox{0.41} \\
\mbox{autres} & 15 & \mbox{1.2} \\
\mbox{Total} & 1205 & 100
\end{array}\right)


SPIP | | Plan du site | Suivre la vie du site RSS 2.0