elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda array
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda array  (Leído 2,475 veces)
alexis33de

Desconectado Desconectado

Mensajes: 56


Ver Perfil
Ayuda array
« en: 30 Mayo 2011, 15:42 pm »

Hola veran lo que quiero hacer es comparar los caracteres de un mismo array, por Ejm: tengo una palabra "hholla", y quiero que compare las letras que tienen al lado, si son iguales que escriba un 1 y si no son que escriba un 0. En la palabra que puse me debería escribir un "10010" ya que compara la posición i con la posicion i+1 , esto es lo que tengo hasta ahora
Código
  1. #include <iostream.h>
  2. #include <string.h>
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <string.h>
  6.  
  7. int main()
  8. {
  9. char a[20];
  10. int i=0;
  11. cout<<"coloque la palabra a:"<<endl;
  12. gets(a);
  13.  
  14. while( i<=strlen(a))
  15.     {
  16.     int ind=0;
  17.     if(a[ind]==a[1+i]){
  18.       cout<<"1"<<endl; }
  19.       else{
  20.       cout<<"0"<<endl; }
  21.       ind++;
  22.      }
  23.  
  24.  system("pause");
  25.  return 0;
  26. }


En línea

SpesMod

Desconectado Desconectado

Mensajes: 83


-reflejo-


Ver Perfil
Re: Ayuda array
« Respuesta #1 en: 30 Mayo 2011, 16:18 pm »

Puedes reducir tu codigo asi:
Código
  1. #include <iostream.h>
  2. #include <string.h>
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5.  
  6. int main()
  7. {
  8. char a[20];
  9. int i=0, j=0, x;
  10. cout<<"coloque la palabra a:"<<endl;
  11. gets(a);
  12. while(a[j]!='\0')
  13.     {
  14.     x=0;
  15.     if(a[j]==a[j+1])
  16.        x++;
  17.     cout<<x;
  18.     j++;
  19.     }
  20. system("pause");
  21. return 0;
  22. }

No es la mejor forma que hay, pero es lo primero que se me ocurrio.


En línea

Khronos14


Desconectado Desconectado

Mensajes: 443


A lie is a lie


Ver Perfil WWW
Re: Ayuda array
« Respuesta #2 en: 30 Mayo 2011, 16:24 pm »

¿Algo como esto?

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main(int argc, char * argv[])
  6. {
  7. char buffer[20];
  8. cout << "Introduce una cadena: ";
  9. cin.get(buffer, 20);
  10.  
  11. for (int i = 0; i < strlen(buffer) - 1; i++)
  12. {
  13. if (buffer[i] == buffer[i + 1])
  14. cout << "1";
  15. else
  16. cout << "0";
  17. }
  18.  
  19. return 0;
  20. }
  21.  

Saludos.
En línea

El_Java

Desconectado Desconectado

Mensajes: 144



Ver Perfil WWW
Re: Ayuda array
« Respuesta #3 en: 30 Mayo 2011, 16:27 pm »

Puede resultar más sencillo hacerlo de esta forma:
Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main(){
  5.    string a;
  6.    cout << "Coloque la palabra a: " << endl;
  7.    cin >> a;
  8.    for (int x=0; x<sizeof(a); x++){
  9.        if(a[x] == a[x+1]) cout << 1;
  10.        else cout << 0;
  11.    }
  12.    return 0;
  13. }
  14.  

Si necesitais alguna aclaracion decidmelo. (Uso string para no tener preocuparme por el tamaño del array).
En línea

alexis33de

Desconectado Desconectado

Mensajes: 56


Ver Perfil
Re: Ayuda array
« Respuesta #4 en: 30 Mayo 2011, 16:56 pm »

Vale muchas gracias a todos por ayudarme ahora ya tengo mas claro, la comparación de arrays, solo tengo una pequeña duda mas, vi que tmb funciona con números (que ya no es lo que yo quería ,pero me entro la duda XD), y me puse a ver si aceptaba números con decimales, probé usando el gets para captural el numero mas el punto("."), pero vi que el numero lo compara con el punto, hay otra forma de que solo compare o bien letras o bien números, pero omita el "punto"?

EJM: pongo aa.a y me devuelve un 100 xq esta comparando con el punto
SALUDOS
En línea

El_Java

Desconectado Desconectado

Mensajes: 144



Ver Perfil WWW
Re: Ayuda array
« Respuesta #5 en: 30 Mayo 2011, 17:03 pm »

para ignorar se usa la funcion ignore.
Por ejemplo:
Código
  1. cin.ignore(50,'.');
Esto se pone antes de hacer el cin >> a y lo que consigues es que ignore, en este caso, 50 puntos.
Asi creo que si saldra como tu quieres.
Al poner aa.a te leera aaa por lo que si que te va a dar 111 :)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Copiar parte de una array a otra array
Programación Visual Basic
sircid 3 5,254 Último mensaje 19 Diciembre 2007, 11:27 am
por LeandroA
Ayuda en C# con array de objetos
.NET (C#, VB.NET, ASP)
DaNuK 5 14,156 Último mensaje 19 Abril 2010, 07:10 am
por DaNuK
[Ayuda] Array en CSocketPlus
Programación Visual Basic
VampireLord 3 2,519 Último mensaje 30 Junio 2010, 04:49 am
por VampireLord
ayuda con array
Programación C/C++
dulcevictoria 1 2,517 Último mensaje 7 Diciembre 2010, 23:53 pm
por winroot
Ayuda con un array!
PHP
kodeone 5 2,654 Último mensaje 4 Enero 2011, 11:04 am
por kodeone
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines