Hola, alguien me podria decir como hacer un programa que el usuario introduzca una cadena de caracteres y se la devuelva al reves con cout y cin? muchas gracias.
Entre las diversas opciones que hay:
a) lees carácter a carácter de la entrada y lo guardas en una cadena, y luego imprimes de n-1 a 0 carácter a carácter.
b) lees la cadena de golpe, imprimes de la misma forma que el anterior.
Me puedes poner un ejemplo de la primera por favor? ( Soy muy nuevo XD)
Gracias.
Hola
No te voy a hacer la tarea pero te voy a orientar:
escribir "Introduce la cadena"
leer cadena
para i desde cadena.fin hasta cadena.inicio hacer
escribir cadena[i]
fin para
así de simple es el programa, cuando intentes hacerlo y tengas dudas concretas las preguntas pero no pidas que te lo hagamos
Saludos
Solo necesito saber cual es la justo la formula que hace que se inviertan los caracteres y que me expliques el por que sucede por favor, gracias.
No necesitas ninguna formula para invertir nada, piensa que una cadena de caracteres es un array y los arrays van desde 0 hasta longitud-1, pues solo debes recorrerlo desde el final hasta el principio:
char cadena[100]
leer cadena
for(i=99; i>=0; i--)
escribir cadena[i]
ya solo tienes que sustituir leer y escribir por cin y cout
Muchisimas gracias.
De nada, si tienes alguna duda ya sabes donde estamos
Saludos
No se que hago mal pero me da este error: error C2143: error de sintaxis : falta ';' delante de ')'.#include "stdafx.h"
#include "iostream"
#include "conio.h"
using namespace std;
int main ()
{
char cadena[5];
int i;
cout << "Introduzca su cadena de 4 caracteres: " << endl;
cin >> cadena[5];
for(i=4, i>=0, i--);
cout << "Su cadena al reves es: " << cadena << endl;
}
Lo siento soy muy nuevo xD, gracias.
Hola
Utiliza solo las cabeceras que necesites, en este caso solo necesitas iostream, pero recuerda ponerlo asi
#include <iostream>
además el uso de conio está desaconsejado, lee esto (https://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html)
El fallo que te da está en el for
for(... ; ... ; ...)
y el ; que pones despues del for sobra
Prueba así
#include <iostream>
using namespace std;
int main ()
{
char cadena[5];
int i;
cout << "Introduzca su cadena de 4 caracteres: " << endl;
cin >> cadena;
cout << "Su cadena al reves es: ";
for(i=4; i>=0; i--)
cout<< cadena[i] << endl;
return 0;
}
Y recuerda el return del final
Saludos
Ya lo he solucionado gracias =)
para que sirve return?
main es una función que devuelve un int: int main()
por lo que espera que devuelvas un valor entero al terminar la función
se usa return 0; para indicar que no ocurrieron errores
Cita de: cazagavilan en 15 Abril 2011, 12:45 PM
para que sirve return?
return devuelve un valor a la función que ha llamado a la que usa el return.
En el caso de main, como ssaammuu te ha dicho, devuelveun 0 al sistema operativo para indicar que su ejecución ha sido correcta.
gracias, la verda es que este foro me ha venido de lujo ;)