Foros del Web » Programación para mayores de 30 ;) » C/C++ »

ingresar 12345 e imprimir 1 2 3 4 5

Estas en el tema de ingresar 12345 e imprimir 1 2 3 4 5 en el foro de C/C++ en Foros del Web. el titulo lo dice todo el programa debe recibir una cadena de texto o numeros y agregar espacios entre cada letra...
  #1 (permalink)  
Antiguo 06/02/2009, 09:25
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
ingresar 12345 e imprimir 1 2 3 4 5

el titulo lo dice todo el programa debe recibir una cadena de texto o numeros y
agregar espacios entre cada letra
  #2 (permalink)  
Antiguo 06/02/2009, 10:06
 
Fecha de Ingreso: enero-2009
Mensajes: 2
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

pero un aconsulta en mysql o php
lo quieres acer
  #3 (permalink)  
Antiguo 06/02/2009, 10:20
Avatar de p3rikl3s  
Fecha de Ingreso: febrero-2009
Ubicación: Valencia
Mensajes: 216
Antigüedad: 15 años, 2 meses
Puntos: 9
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

Recorres la cadena y escribes uno a uno los caracteres y espacio en blanco:

Cita:
for (i=0; i<=strlen(); i++){

write(cadena[i]);

write(" ");

}
  #4 (permalink)  
Antiguo 06/02/2009, 11:18
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

amigos mire lo que llebo pero nada
que me funciona

Código:
#include <iostream.h>
#include <string.h>

int main()
{
    char cadena, 
    int cuantos;
    
    cout <<"Ingrese la cadena de texto o numeros: ";
    cin >> cadena;
    
    cuantos = strlen(cadena);
    
    for (int i=0; i<=cuantos; i++){
    write(cadena[i]);
    write(" ");
    }
    
    getchar();
    return 0;
}
  #5 (permalink)  
Antiguo 06/02/2009, 12:30
Avatar de p3rikl3s  
Fecha de Ingreso: febrero-2009
Ubicación: Valencia
Mensajes: 216
Antigüedad: 15 años, 2 meses
Puntos: 9
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

olviastes declarar la cadena como un string o "cadena verdadera":

#include <iostream.h>
#include <string.h>

int main()
{
char cadena[30];
int cuantos;

printf("Ingrese la cadena de texto o numeros: ");
gets(cadena);
.
.
.
}
  #6 (permalink)  
Antiguo 06/02/2009, 13:17
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

nada amigo no funciono
  #7 (permalink)  
Antiguo 06/02/2009, 14:08
Avatar de p3rikl3s  
Fecha de Ingreso: febrero-2009
Ubicación: Valencia
Mensajes: 216
Antigüedad: 15 años, 2 meses
Puntos: 9
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

No te muestra nada en pantalla ?
  #8 (permalink)  
Antiguo 06/02/2009, 14:24
Avatar de _Lucifer_  
Fecha de Ingreso: junio-2006
Mensajes: 1.662
Antigüedad: 17 años, 10 meses
Puntos: 28
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

Siempre recomiendo que si vas a programar en C lo hagas en C, si vas a usar C++ lo hagas todo en C++...a pesar de que puedes hacer esas mezclas no las recomiendo para nada.

En C++:
Código:
#include <iostream>
#include <string>

using namespace std;

int main()
{
    string cadena;
    int cuantos;
    
    cout <<"Ingrese la cadena de texto o numeros: ";
    cin >> cadena;
    
    cuantos = cadena.length();
    
    for (int i = 0; i < cuantos; i++)
       cout << cadena[i] << " ";
    return 0;
}
Fijate que en la condicion del ciclo for puse "i < cuantos" y no " i <= cuantos", ademas estoy usando la clase string en vez de un arreglo de 'char'.
Saludos
__________________
Si crees que no tiene sentido, etonces probablemente lo tenga... :arriba:
  #9 (permalink)  
Antiguo 06/02/2009, 14:33
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

amigo funciona excelente
quedo gratamente agradecido
  #10 (permalink)  
Antiguo 06/02/2009, 19:27
Avatar de MeduZaPaT  
Fecha de Ingreso: enero-2009
Ubicación: USA
Mensajes: 106
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

Cita:
Iniciado por _Lucifer_ Ver Mensaje
Siempre recomiendo que si vas a programar en C lo hagas en C, si vas a usar C++ lo hagas todo en C++...a pesar de que puedes hacer esas mezclas no las recomiendo para nada.


Fijate que en la condicion del ciclo for puse "i < cuantos" y no " i <= cuantos", ademas estoy usando la clase string en vez de un arreglo de 'char'.
Saludos
iba a hacer el mismo comentario pero veo que no solo le aclaraste lo de no mesclar codigo, sino que le resolviste el problema
  #11 (permalink)  
Antiguo 07/02/2009, 03:18
Avatar de _Lucifer_  
Fecha de Ingreso: junio-2006
Mensajes: 1.662
Antigüedad: 17 años, 10 meses
Puntos: 28
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

Cita:
Iniciado por MeduZaPaT Ver Mensaje
...sino que le resolviste el problema
Ya lo tenia practicamente resuelto, solo le faltaban detalles y presentarle el modo correco de hacerlo en C++


Saludos
__________________
Si crees que no tiene sentido, etonces probablemente lo tenga... :arriba:
  #12 (permalink)  
Antiguo 09/02/2009, 20:07
Avatar de cesmichael  
Fecha de Ingreso: julio-2008
Mensajes: 207
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: ingresar 12345 e imprimir 1 2 3 4 5

Creo que tu error esta en leer la cadena . creo que deberia ir asi:

Código:
#include <iostream.h>
#include <string>
#include <string.h>

int main()
{
    char cadena, 
    int cuantos;
    
    cout <<"Ingrese la cadena de texto o numeros: ";
    getline(cin,cadena);
    
    cuantos = strlen(cadena);
    
    for (int i=0; i<cuantos; i++){
    write(cadena[i]);
    write(" ");
    }
    
    getchar();
    return 0;
}
Hasta donde tengo entendido tambine tienes que incluir el fichero <string>
Ademas las cadenas se leen con la funcion getline. el parametro cin siempre se pone, creo que indica que es como uan especie de buffer donde se almacena la cadena
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:46.