Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - cazagavilan

#21
Programación C/C++ / Re: Duda con punteros
14 Abril 2012, 05:47 AM
Muchas gracias!
#22
Programación C/C++ / Re: Duda con punteros
13 Abril 2012, 18:51 PM
Me puedes explicar que hace aqui exactamente cin.getline? Lo que yo mas o menos recuerdo es que evita que introduzcas mas caracteres de los que marca (cin.getline( cadena,50)).
#23
Programación C/C++ / Duda con punteros
13 Abril 2012, 05:03 AM
Hola, tengo este codigo en el que se calcula la longitud de una cadena de caracteres. El problema es que cuando introducen un espacio se para el contador...

Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;


int longitudCadena(char* );

int main()
{
char cadena[50];
cout <<"Introduzca su frase a calcular: " << endl;
cin >> cadena;
longitudCadena(cadena);
cout << "El tamaño de la frase es de: " << longitudCadena(cadena) << " Caracteres." << endl;
system("pause");
return 0;
}
int longitudCadena(char* cadena)
{

int valor = 0;
for(;*cadena != 0; valor++, cadena++);

return valor;
}


Muchas gracias.
#24
Muchas gracias, tenia una pequeña idea de como hacerlo pero no me funcionaba.
#25
Programación C/C++ / Duda funcion palindromo
9 Abril 2012, 09:55 AM
Hola de nuevo, tengo que hacer una funcion (bool palindromo(char palabra[40]))
que devuelva true si es un palindromo y false si no lo es, tambien debe evitar los espacios en blanco y no deve hacer distinciones entre mayusculas y minusculas.

De momento tengo esto pero la verdad es que no tengo ni idea de como seguir...
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;

char palabra[40];
char palindromo(char palabra[40])
{
for(int i = 0; palabra[i] != 0; i++)
{
if(palabra[i] != 32)
{
cout << palabra[i];
}
}
return 0;
}



int main()
{
char result;
cout << "Introduzca su frase o palabra: \n";
cin.getline(palabra, 40);

result = palindromo(palabra);
cout << result;
system("pause");
}


Char palindromo deve ser bool palindromo solo lo puse asi para comprobar que quita los espacios en blanco.

Muchas gracias!
#26
Muchas gracias.
#27
Voy a poner la descripcion del ejercicio a ver si la entendeis mejor que yo XD.

Hacer un programa que contenga una funcio con el prototipo bool incremetar (char numero[10]); La funcion debe incrementar el numero pasado como parametro en una cadena de caracteres de nueve digitos. Si la cadena no contiene numero debe devolver false, en caso cotrario true, y la cadena debe contener el numero incrementado. Si el numero es 999999999 debe devolver 0. Cadenas con menos de nueve digitos pueden contener numeros iniciales o no, por ejemplo, la funcion debe ser capaz de incrementar tanto 1234 como 000001234. La funcion main llamara a la funcion incrementar con varias cadenas.

Muchas gracias.
#28
Hola de nuevo, ahora tengo otro problema... no me incrementa nada ni un numero y deberia incrementar hasta 999999999.
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;
bool incrementar (char numero[10]);
char numero[10];
int main()
{
   cout << "Introduzca un numero de nueve digitos o menos: \n";
   cin >> numero[10];
   incrementar(numero);
   cout << numero;
   system("pause");

}

// Función incremetnar----------------------------------------------
bool incrementar ( char numero[10])
{
   int aux;
   aux = atoi(numero);
   if(aux < 9)
   {
      for( ; aux < 9; aux++)
       {
         cout << numero[aux];
      }
      return true;
   }
   
   else
   {
      cout << "El numero no es correcto";
      return false;
   }
   return 0;
}


He probado con if(aux < 999999999) y luego for( ; aux < 999999999; aux++) pero se ve que accede a memoria que no deberia.

Una ayudita, gracias!!
#29
El problema es que tiene que ser char XD.

Pero muchas gracias igualmente.
#30
Hola, tengo que hacer una funcion "bool incrementar(char numeri[10])" donde si la cadena tiene numeros devuelva true y si no false y si en el numero es menor a 999999999 lo incremente hasta 999999999.

Esto es lo que tengo de momento... he probado varias cosas pero no lo consigo... A ver si me podeis dar una pista.

Muchas gracias.
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;
bool incrementar (char numero[10]);
char numero[10];
int main()
{
cout << "Introduzca un numero de nueve digitos o menos: \n";
cin >> numero[10];
incrementar(numero);
cout << numero;
system("pause");

}

// Función incremetnar----------------------------------------------
bool incrementar ( char numero[10])
{
int aux = numero[10];
if(aux < 999999999)
{
for( ; aux < 999999999; aux++)
    {
cout << numero[aux];
}
return true;
}

else
{
cout << "El numero no es correcto";
return false;
}
}