ayuda

3 views
Skip to first unread message

saul mamani mamani

unread,
Nov 6, 2009, 3:47:21 PM11/6/09
to acm-icpc...@googlegroups.com
AYUDAAA
como lo hago para leer desde teclado una cadena en c o c++ pero en forma indefinida?
-------------------------

 
> To: kani...@hotmail.com
> Subject: The 2000's ACM-ICPC Live Archive Registration Completed
> From: probl...@acm.uva.es
> Date: Tue, 3 Nov 2009 23:36:47 +0100
>
>
> Welcome to The 2000's Live Archive!!
> Your registration has been successfull. You can start using the Live Archive at:
>
> http://acmicpc-live-archive.uva.es/nuevoportal/
>
> In case you can't remember, your information is:
>
> Name and Surname: 'saul mamani'
> UserID: '22032LU'
>
> Enjoy the live archive!
>


Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy! Try it!
Message has been deleted

Kehiro

unread,
Nov 7, 2009, 7:50:41 AM11/7/09
to ACM ICPC Bolivia
Hola
no se si entiendo tu pregunta, pero si quieres leer cadenas sin saber
la cantidad puedes hacer esto en c++ :

#include <iostream>
#include <string>


int main(){
string cadena;
while(cin>>cadena){ //aqui lees la cadena mientras existan
cout<<cadena<<"_"; //muestras la cadena
}
return 0;
}


por ejemplo si tu entrada es:

IRÉ, CUANDO LA TARDE CANTE, AZUL, EN VERANO,
HERIDO POR EL TRIGO, A PISAR LA PRADERA;
SOÑADOR, SENTIRÉ SU FRESCOR EN MIS PLANTAS
Y ME IRÉ LEJOS, DICHOSO, COMO CON UNA CHICA,
POR LOS CAMPOS , TAN LEJOS COMO EL GITANO VAGA.


tu salida será:
IRÉ,_CUANDO_LA_TARDE_CANTE,_AZUL,_EN_VERANO,_HERIDO_POR_EL_TRIGO,_A_PISAR_
LA_PRADERA;_SOÑADOR,_SENTIRÉ_SU_FRESCOR_EN_MIS_PLANTAS_Y_ME_IRÉ_LEJOS,_
DICHO­
SO,_COMO_CON_UNA_CHICA_,POR_LOS_CAMPOS_,_TAN_LEJOS_COMO_EL_GITANO_
VAGA._




Alberto Suxo

unread,
Nov 7, 2009, 5:53:52 PM11/7/09
to acm-icpc...@googlegroups.com

En C y C++ puedes usar la función scanf(), y también gets().

 

scanf tiene delimitadores que te puede ser útiles. Por defecto es ’ ‘ (espacio), ‘\n’, etc.

 

Como en el ejemplo anterior, el delimitador son el espacio y enter, por lo que, el mismo resultado se daría reemplazando ‘cin>>cadena’ por ‘scanf("%s", cadena)!=EOF

 

gets() lee la cadena hasta encontrar un retorno de carro o nueva línea. Por lo que:

gets(cadena) nos daría: cadena="IRÉ, CUANDO LA TARDE CANTE, AZUL, EN VERANO,"

para lograr el mismo efecto con scanf usamos scanf("%[^\n]\n", cadena);

 

 

Lamento no poder ser mas claro (tiempo), pero estoy seguro que muchos competidores reforzaran esto con excelentes ejemplos.

 

De todos modos, si aun hay alguien que esta comenzando, les puedo recomendar de http://www.icpc-bolivia.edu.bo :

http://www.icpc-bolivia.edu.bo/libros.html

http://www.icpc-bolivia.edu.bo/books/libro-solucionario_acmicpc_bolivia_v1.pdf (este tiene ejemplos muy simples y pueden ser de utilidad)

 

 

Saludos

   Alberto

Reply all
Reply to author
Forward
0 new messages