Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: ALONSOQ en 2 Julio 2012, 12:27 pm



Título: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 12:27 pm
Hola,

Estoy tratando de hacer lo siguiente: introducir un texto, que lo convierta en minúsculas todo y que diga las veces que aparece cada letra

Código
  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<string.h>
  4. #include<ctype.h>
  5. main()
  6. {
  7. char cadena[255];
  8. char aux[255];
  9. int i,j, tamano;
  10. int a=0;
  11. printf ("dime una palabra:");
  12. gets(cadena);
  13. tamano=strlen(cadena);
  14. for (i=0;i<tamano;i++)
  15. {
  16.    for (j=0;j<255;j++)
  17.    {
  18.    if (cadena[i]=j)
  19.   a++;
  20.    }
  21.  
  22.    printf("%d\t",aux[a]);
  23. }    
  24.    getch();      
  25. }


Título: Re: contar letras de un texto
Publicado por: 0xDani en 2 Julio 2012, 13:52 pm
Si le pones etiquetas de codigo lo leo.


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 2 Julio 2012, 14:06 pm
En el texto no te sale la dimensión de algunos arrays porque querías poner, por ejemplo:

Código
  1. Variable[i]

Y el código

Código:
[i]

Es para poner en cursiva un texto. Para solucionarlo, ponlo entre etiquetas GeSHi como ha dicho ya daniyo, y entonces, lo leeremos.

Saludos.


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 15:30 pm
Lo siento pero no tengo ni idea de que son esas etiquetas

un saludo


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 2 Julio 2012, 15:37 pm
Dale a editar mensaje, seleccionas el código, y arriba a la derecha (donde está para poner negrita, subrayado...),. hay un cuadro en el que pone "GeSHi", pulsas, buscas C y ya.

La etiqueta de code=c ponla al principio del código, y la de /code ponla al final


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 15:55 pm
Muchisimas gracias


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 2 Julio 2012, 16:03 pm
A mí se me ocurre lo siguiente:

Podrías crear una cadena auxiliar, en la que copiaras el contenido de la cadena de caracteres que quieres contar el número de veces que aparece cada letra.

Con un bucle for anidado, vas comprobando el primer carácter con todos los demás de la cadena, y en caso de coincidir, aumentas el el contador de dicha letra en uno. Además, si coinciden, sustituyes en la cadena auxiliar dicho carácter por un espacio, para que cuando el bucle for llegue a dicho carácter no tengas que contar letras.

Espero haberme expresado bien...

Saludos.


Título: Re: contar letras de un texto
Publicado por: 0xDani en 2 Julio 2012, 16:18 pm
Para empezar no necesitas conio.h.
Despues, ¿tiene que decirte las veces que aparece cada letra del abecedario o las veces que aparece una determinada letra?
Te dejo esto:
Código
  1. #include <string.h>
  2. #include <ctype.h>
  3. #include <stdio.h>
  4.  
  5. int main(){
  6. char cadena[256];
  7. char letra;
  8. printf("Introduce una cadena:\t");
  9. gets(cadena);
  10. int tamano=strlen(cadena);
  11. for(int i=0; i<tamano; i++){
  12.  cadena[i]=tolower(cadena[i]);
  13. }
  14. printf("Las letras de su cadena son:")//aqui no se que quieres hacer
  15. printf("¿Que letra quiere contar?");
  16. gets(letra);
  17. int count=0;
  18. for(j=0; j<tamano; j++){
  19.  if(strcmp(cadena[j], letra)==0)count++;
  20. }
  21. printf("La letra aparece %i veces", count);
  22. return 0;
  23. }
  24.  

Saludos, espero que te sirva.


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 2 Julio 2012, 16:26 pm
Daniyo, unas aclaraciones. En C, cuando es sólo un carácter, no se puede pedir con gets, hay que utilizar scanf.

Además, para comparar dos caracteres, no se usa la función strcmp, sino como si compararas dos números.

También creo que se refiere el enunciado a que cuentes todos los caracteres de la cadena, no solo uno que le pida el usuario.

Te dejo el código de daniyo corregido, AlonsoQ. En caso de que sea contando todos los caracteres de la cadena, prueba a mirar lo que te dije en mi último mensaje, y si tienes alguna duda, pregunta y te intento ayudar a hacer el código.

Código
  1. #include <string.h>
  2. #include <ctype.h>
  3. #include <stdio.h>
  4.  
  5. int main(){
  6. char cadena[256];
  7. char letra;
  8. int i;
  9. printf("Introduce una cadena:\t");
  10. gets(cadena);
  11. int tamano=strlen(cadena);
  12. for( i=0; i<tamano; i++){
  13.  cadena[i]=tolower(cadena[i]);
  14. }
  15.  
  16. printf("¿Que letra quiere contar?");
  17. scanf("%c", &letra);
  18. int count=0;
  19. for(j=0; j<tamano; j++){
  20.  if(cadena[j] == letra) count++;
  21. }
  22. printf("La letra aparece %d veces", count);
  23. return 0;
  24. }
  25.  
  26.  
  27.  

Edito:

Por cierto, AlonsoQ, te recomiendo inicializar todas las variables justo después de "int main(){", y no esparcidas por todo el código. Ahora mismo no pasa nada, porque son códigos sencillos, pero mejor que te vayas acostumbrando para cuando trabajes con programas más complejos.


Título: Re: contar letras de un texto
Publicado por: 0xDani en 2 Julio 2012, 16:56 pm
Gracias, DickGumshoe, es que tu sabes que soy de C++, y no  sabia muy bien como iban gets y scanf. De todas formas no tenia muy claro que era lo que queria hacer, y le he dejado un pequeño codigo improvisado para que lo modifique y haga lo que quiera.
Saludos.


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 19:19 pm
Gracias a los dos,

Pero el problema no es ese exactamente, pues el programa ha de contar todas y cada una de las letras. Ejemplo salida, para la palabra foro; f:1;   o:2;  r:1

un saludo


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 2 Julio 2012, 19:21 pm
¿Has probado con esto que dije?

Citar
A mí se me ocurre lo siguiente:

Podrías crear una cadena auxiliar, en la que copiaras el contenido de la cadena de caracteres que quieres contar el número de veces que aparece cada letra.

Con un bucle for anidado, vas comprobando el primer carácter con todos los demás de la cadena, y en caso de coincidir, aumentas el el contador de dicha letra en uno. Además, si coinciden, sustituyes en la cadena auxiliar dicho carácter por un espacio, para que cuando el bucle for llegue a dicho carácter no tengas que contar letras.

Espero haberme expresado bien...

Saludos.

Sino, te lo intento explicar mejor.

Saludos.


Título: Re: contar letras de un texto
Publicado por: 0xDani en 2 Julio 2012, 19:32 pm
Yo creo que con lo que te hemos dejado, te puedes hacer el resto del codigo.

Saludos.


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 20:06 pm
Lo he modificado tratando de escribir según me indicas. Lo siento pero a pesar de que intento pasarlo al lenguaje del ordenador lo más que consigo es lo que he modificado

un saludo


Título: Re: contar letras de un texto
Publicado por: 0xDani en 2 Julio 2012, 20:22 pm
conio.h sobra, ya te lo he dicho. Y podrias crear una matriz con todas las letras del abecedario y luego ir comparando, o algo asi. Yo creo que con lo que te hemos dado no es muy dificil hacer el resto.

Saludos.


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 2 Julio 2012, 20:23 pm
Inténtalo, y te ayudamos a partir de lo que pongas  :)


Título: Re: contar letras de un texto
Publicado por: BlackZeroX (Astaroth) en 2 Julio 2012, 21:17 pm

Código
  1.  
  2. #include <iostream>
  3. #include <algorithm>
  4. #include <map>
  5. #include <string>
  6.  
  7. using std::cout;
  8. using std::endl;
  9. using std::cin;
  10. using std::string;
  11. using std::map;
  12. using std::sort;
  13.  
  14. int main() {     // ==============
  15.    string cadena;
  16.    map<char, size_t> contador;
  17.    register map<char, size_t>::iterator it;
  18.  
  19.    cout << "ingresa el texto: ";
  20.    cin >> cadena;
  21.    cout << endl;
  22.    cout << "Longitud: " << cadena.length() << endl;
  23.  
  24.    for (register size_t i = 0; i < cadena.length(); i++) {
  25.        contador[cadena[i]]++;
  26.    }
  27.  
  28.    cout << "Caracter.\tRepeticiones." << endl;
  29.    for (it = contador.begin(); it != contador.end(); ++it) {
  30.         cout << (*it).first << "\t" << (*it).second << endl;
  31.    }
  32.  
  33.    con.get();  //  Pausamos
  34.  
  35.    return 0;
  36. }
  37.  
  38.  

Dulces Lunas!¡.


Título: Re: contar letras de un texto
Publicado por: Flamer en 2 Julio 2012, 21:22 pm
hola ALONSOQ tengo años que no manejo c++, yo puro vb6 y no lo tengo instalado el c++ en mi pc pero tedejo este codigo aver si tesirve me base en el codigo que pusiero los demas compañeros:
Código:
char Caracter;
char Cadena[256];
int contador=0;

printf("Introduce la cadena...")
gets(Cadena);

int Cadena_largo=strlen(cadena);

for(int x=0;x<Cadena_largo;x++)
{
    Caracter=Cadena[x];
    for(int y=0;y<Cadena_largo;y++)
    {
        if (Cadena[y]==Caracter)
        {
           Contador++;
        }
    }
   printf("La Letra ",Caracter," Se Repitio ",Contador," veces...");
   Contador=0;
}
return 0;

corrijanme si estoy mal llaque no esta compilado.
 y si es eso lo que quieres

saludos flamer


Título: Re: contar letras de un texto
Publicado por: SXF en 2 Julio 2012, 23:15 pm
Hay va otrp  supercensillo de entender :P.Para que te hagas una idea.
Código
  1. #include <string.h>
  2. #include <ctype.h>
  3. #include <stdio.h>
  4.  
  5. int main(){
  6. char cadena[30];
  7. char letra[30];
  8. int count=0;
  9. strcpy(cadena,"hola mundo");
  10. strcpy(letra,"hola");
  11. for(int j=0; j<4; j++){
  12.  if(cadena[j]==letra[j])count++;
  13. }
  14. printf("La letra aparece %d veces", count);
  15. scanf("%d");
  16. return 0;
  17. }
  18.  
  19.  


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 23:22 pm
Código
  1.  
  2. #include <iostream>
  3. #include <algorithm>
  4. #include <map>
  5. #include <string>
  6.  
  7. using std::cout;
  8. using std::endl;
  9. using std::cin;
  10. using std::string;
  11. using std::map;
  12. using std::sort;
  13.  
  14. int main() {     // ==============
  15.    string cadena;
  16.    map<char, size_t> contador;
  17.    register map<char, size_t>::iterator it;
  18.  
  19.    cout << "ingresa el texto: ";
  20.    cin >> cadena;
  21.    cout << endl;
  22.    cout << "Longitud: " << cadena.length() << endl;
  23.  
  24.    for (register size_t i = 0; i < cadena.length(); i++) {
  25.        contador[cadena[i]]++;
  26.    }
  27.  
  28.    cout << "Caracter.\tRepeticiones." << endl;
  29.    for (it = contador.begin(); it != contador.end(); ++it) {
  30.         cout << (*it).first << "\t" << (*it).second << endl;
  31.    }
  32.  
  33.    con.get();  //  Pausamos
  34.  
  35.    return 0;
  36. }
  37.  
  38.  

Dulces Lunas!¡.

BlackceroX,

Podrías ponerlo en C; no entiendo nada. Modifico lo que he estado haciendo ( lo cambio en el primer mensaje a ver que te parece)

mil gracias


Título: Re: contar letras de un texto
Publicado por: Flamer en 2 Julio 2012, 23:36 pm
te funsiono el mio
saludos


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 2 Julio 2012, 23:41 pm
hola ALONSOQ tengo años que no manejo c++, yo puro vb6 y no lo tengo instalado el c++ en mi pc pero tedejo este codigo aver si tesirve me base en el codigo que pusiero los demas compañeros:
Código:
char Caracter;
char Cadena[256];
int contador=0;

printf("Introduce la cadena...")
gets(Cadena);

int Cadena_largo=strlen(cadena);

for(int x=0;x<Cadena_largo;x++)
{
    Caracter=Cadena[x];
    for(int y=0;y<Cadena_largo;y++)
    {
        if (Cadena[y]==Caracter)
        {
           Contador++;
        }
    }
   printf("La Letra ",Caracter," Se Repitio ",Contador," veces...");
   Contador=0;
}
return 0;

corrijanme si estoy mal llaque no esta compilado.
 y si es eso lo que quieres

saludos flamer

Gracias por tu aportación, esto es lo que llevo hecho, pero no funciona

Código
  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<string.h>
  4. #include<ctype.h>
  5. main()
  6. {
  7. char cadena[255];
  8. char aux[255];
  9. int i,j, tamano;
  10. char caracter;
  11. int a=0;
  12. printf ("dime una palabra:");
  13. gets(cadena);
  14. tamano=strlen(cadena);
  15. for (i=0;i<tamano;i++)
  16. {
  17.    caracter=cadena[i];
  18.  
  19.    for (j=0;j<255;j++)
  20.    {
  21.    if (cadena[j]=caracter)
  22.   a++;
  23.    }
  24.  
  25.    printf("%d\t",a);
  26. }    
  27.    getch();      
  28. }
  29.  



Título: Re: contar letras de un texto
Publicado por: Flamer en 3 Julio 2012, 00:09 am
aaaaa lo que se me viene ala mente orita es que terrepite las letras contadas dime si estoy mal o en que te marca error para corregir si es que puedo por que como digo tengo muncho qu no programo en c++
saludos


Título: Re: contar letras de un texto
Publicado por: BlackZeroX (Astaroth) en 3 Julio 2012, 00:24 am
Podrías ponerlo en C; no entiendo nada.

Que lastima...

Dulces Lunas!¡.


Título: Re: contar letras de un texto
Publicado por: do-while en 3 Julio 2012, 00:26 am
¡Buenas!

Aqui tienes el pseudocodigo:

Código:
cadena texto;
entero repeticiones[rango: 'a'..'z'] = {0...0},i=0

leer texto
minusculas(texto)

mientas texto[i] != 0

    si texto[i] es letra
        repeticiones[texto[i]] = repeticiones[texto[i]] + 1
    fin si

    i = i + 1

fin mientras

Asi tienes las veces que se repite cada letra en el texto introducido.

Ahora solo tienes que adaptarlo a C.

¡Saludos!

Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.


Título: Re: contar letras de un texto
Publicado por: SXF en 3 Julio 2012, 02:09 am
Código
  1. #include <string.h>
  2. #include <ctype.h>
  3. #include <stdio.h>
  4.  
  5. int main(){
  6. char cadena[30];
  7. char letra[30];
  8. int count=0;
  9. strcpy(cadena,"hola mundo hola");
  10. strcpy(letra,"feo");
  11. int sizecdn=strlen(cadena);
  12. int sizecdn2=strlen(letra);
  13.  
  14.  
  15. for(int k=0;k<sizecdn2;k++){
  16.    for(int j=0; j<sizecdn; j++){
  17.    if(cadena[j]==letra[k])count++;
  18.    }
  19.    printf("La letra %c aparece %d veces\n",letra[k], count);
  20.    count=0;
  21. }
  22.  
  23. scanf("%d");
  24. return 0;
  25. }


Aqui creo que lo tienes :).


Título: Re: contar letras de un texto
Publicado por: BlackZeroX (Astaroth) en 3 Julio 2012, 02:46 am
perdon el codigo en C++ era asi:

Código
  1.  
  2.  
  3. #include <iostream>
  4. #include <algorithm>
  5. #include <map>
  6. #include <string>
  7.  
  8. using std::cout;
  9. using std::endl;
  10. using std::cin;
  11. using std::string;
  12. using std::map;
  13. using std::sort;
  14.  
  15. int main() {     // ==============
  16.    string cadena;
  17.    map<char, size_t> contador;
  18.    register map<char, size_t>::iterator it;
  19.  
  20.    cout << "ingresa el texto: ";
  21.    getline(cin, cadena);
  22.    cout << endl;
  23.    cout << "Longitud: " << cadena.length() << endl;
  24.  
  25.    for (register size_t i = 0; i < cadena.length(); i++) {
  26.        contador[cadena[i]]++;
  27.    }
  28.  
  29.    cout << "Caracter.\tRepeticiones." << endl;
  30.    for (it = contador.begin(); it != contador.end(); ++it) {
  31.         cout << (*it).first << "\t" << (*it).second << endl;
  32.    }
  33.  
  34.    cin.get();  //  Pausamos
  35.  
  36.    return 0;
  37. }
  38.  
  39.  

en C

Código
  1.  
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <stdlib.h>
  5.  
  6. inline size_t readLine(FILE *file, char **line) {
  7.    size_t size = 0;
  8.  
  9.    (*line) = (char*)malloc(1);
  10.  
  11.    while (((*line)[size] = getchar()) != '\n')
  12.        (*line) = (char*)realloc((*line), ++size + 1);
  13.  
  14.    (*line)[size] = '\0';
  15.  
  16.    return size;
  17. }
  18.  
  19. int main() {     // ==============
  20.    register size_t countChars[256];
  21.    char *line;
  22.    size_t size;
  23.  
  24.    memset(countChars, 0, 256 * sizeof(size_t));
  25.    size = readLine(stdin, &line);
  26.  
  27.    if (!line)
  28.    {
  29.        fprintf(stderr, "No se pudo leer la linea del teclado.");
  30.        return EXIT_FAILURE;
  31.    }
  32.  
  33.    //  Contamos cada caracter.
  34.    for (register size_t i = 0; i < size; i++)
  35.        countChars[(int)(line[i])]++;
  36.  
  37.    for (register int i = 0; i < 256; i++)
  38.    {
  39.        if (countChars[i])
  40.        {   //  Mopstramos solo las letras que se tenian en la frase.
  41.            printf("%c (%d) = %d\n", (char)i, i, countChars[i]);  // caracter (ascii) = repetido
  42.        }
  43.    }
  44.  
  45.    free(line);
  46.  
  47.    getchar();
  48.  
  49.    return 0;
  50. }
  51.  
  52.  

Dulces Lunas!¡.


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 3 Julio 2012, 16:07 pm
Muchas gracias a todos,



Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 3 Julio 2012, 18:23 pm
Código
  1. #include <string.h>
  2. #include <ctype.h>
  3. #include <stdio.h>
  4.  
  5. int main(){
  6. char cadena[30];
  7. char letra[30];
  8. int count=0;
  9. strcpy(cadena,"hola mundo hola");
  10. strcpy(letra,"feo");
  11. int sizecdn=strlen(cadena);
  12. int sizecdn2=strlen(letra);
  13.  
  14.  
  15. for(int k=0;k<sizecdn2;k++){
  16.    for(int j=0; j<sizecdn; j++){
  17.    if(cadena[j]==letra[k])count++;
  18.    }
  19.    printf("La letra %c aparece %d veces\n",letra[k], count);
  20.    count=0;
  21. }
  22.  
  23. scanf("%d");
  24. return 0;
  25. }


Aqui creo que lo tienes :).


Muchas gracias SXF,

A partir de tu codigo he desarrollado lo que me piden  ( para cualquier palabra) serí mucho pedirte que me volvieras a echar un cable, ya que si por ejemplo introduzco la palabra PEPE, el código me devuelve: la P aparece 2 veces, la E aparece 2 veces, la P aparece 2 veces, la E aparece 2 veces.

Me gustaría poder omitir las letras que ya han aparecido

muchas gracias por tu ayuda, me ha servido de mucho tu explicación. Te adjunto el código

Código
  1. #include <string.h>
  2. #include <ctype.h>
  3. #include <stdio.h>
  4.  
  5. int main(){
  6. char palabra [30];  
  7. char cadena[30];
  8. char letra[30];
  9.  
  10. int count=0;
  11. int tamano=0;
  12.  
  13. printf("dime una palabra:");
  14. gets(palabra);
  15. tamano=strlen(palabra);
  16. for (int p=0;p<tamano;p++)
  17. {
  18. strcpy(cadena,palabra);
  19. }
  20. /*strcpy(letra,"hola");*/
  21. int sizecdn=strlen(cadena);
  22. /* int sizecdn2=strlen(letra);*/
  23.  
  24.  
  25. for(int p=0;p<tamano;p++){
  26.    for(int j=0; j<sizecdn; j++){
  27.    if(cadena[j]==palabra[p])count++;
  28.    }
  29.    printf("La letra %c aparece %d veces\n",palabra[p], count);
  30.    count=0;
  31. }
  32.  
  33. scanf("%d");
  34. return 0;
  35. }


Título: Re: contar letras de un texto
Publicado por: DickGumshoe en 3 Julio 2012, 18:27 pm
Como una de las variables "palabra" o "cadena" es auxiliar, en una de ellas, cada vez que encuentres una carácter que coincida, puedes sustituirlo por un espacio.

Saludos.


Título: Re: contar letras de un texto
Publicado por: SXF en 3 Julio 2012, 21:54 pm
Yo lo que haría seria contar las palabras del texto "feo" en este caso
Código
  1. t[f]=t[f] + 1;
  2. t[e]=t[e] + 1;
  3. t[o]=t[o] + 1;

antes tienes que inicializar el array t a 0;
Código
  1. t[a] =0;
  2. t[b] =0,
....etc
y ya tendrías la condición ;
Si (t[f] >=2 ) break; o cualquier otro tratamiento que consideres oportuno, copiar el array en otro donde no aparezcan las palabras repetida....etc



Título: Re: contar letras de un texto
Publicado por: SXF en 4 Julio 2012, 14:18 pm
Mira acabo de ver este post y creo que te puede ayudar:
http://foro.elhacker.net/programacion_cc/ayuda_saber_si_se_repiten_caracteres_en_una_misma_cadena-t366079.0.html


Título: Re: contar letras de un texto
Publicado por: do-while en 4 Julio 2012, 21:32 pm
¡Buenas!

A ver si esto te sirve...

Código
  1. #include <stdio.h>
  2. #include <ctype.h>
  3. #include <string.h>
  4.  
  5. int main(int argc, char *argv[])
  6. {
  7.    int repeticiones['z' - 'a' + 1],i;
  8.    char cadena[256];
  9.  
  10.    fgets(cadena,256,stdin);
  11.  
  12.    if(cadena[strlen(cadena) - 1] != '\n')
  13.        while(getchar() != '\n');
  14.  
  15.    for(i = 0 ; i < 'z' - 'a' + 1 ; i++)
  16.        repeticiones[i] = 0;
  17.  
  18.    for(i = 0 ; cadena[i] ; i++)
  19.        if((cadena[i] = tolower(cadena[i])) >= 'a' && cadena[i] <= 'z')
  20.            repeticiones[cadena[i] - 'a']++;
  21.  
  22.    for(i = 0 ; i < 'z' - 'a' + 1 ; i++)
  23.        if(repeticiones[i])
  24.            printf("%c: %3d\n",'a' + i, repeticiones[i]);
  25.  
  26.    printf("Pulsar intro...");
  27.    while(getchar() != '\n');
  28.  
  29.    return 0;
  30. }
  31.  

¡Saludos!


Título: Re: contar letras de un texto
Publicado por: ALONSOQ en 4 Julio 2012, 23:05 pm
Perdornar que no haya podido contestaros antes,

Muchísimas gracias a los dos por vuentro interés en ayudarme, voy a ver si descifro algo, teniendo en cuenta que soy lo anterior a novato

un saludo