Lectura de entrada con readline()
Parte de la sección Fundamentos del Journey de R de Coddy. Lección 29 de 78.
Hasta ahora, has aprendido a mostrar resultados. Ahora es el momento de hacer que tus programas sean interactivos leyendo la entrada del usuario. La función readline() te permite capturar lo que escribe el usuario.
name <- readline()
cat("Hello,", name, "\n")Cuando se ejecuta este código, R espera a que el usuario escriba algo y presione Enter. Lo que escriba se almacena en la variable name. Si el usuario escribe "Alice", la salida sería: Hello, Alice
Una cosa importante que debes saber: readline() siempre devuelve una cadena de caracteres, incluso si el usuario escribe un número. Si alguien introduce "25", se almacena como el texto "25", no como el número 25. Aprenderás a convertir entre tipos en la próxima lección.
Puedes leer varias entradas utilizando readline() varias veces:
first <- readline()
second <- readline()
cat("First:", first, "\n")
cat("Second:", second, "\n")Cada llamada a readline() espera una línea de entrada independiente del usuario.
Al combinar texto con variables usando cat(), cada elemento separado por una coma lleva un espacio entre ellos. A veces necesitas unir texto sin ningún espacio, por ejemplo, para adjuntar la puntuación directamente a una palabra. Ahí es donde resulta útil paste0(). Concatena cadenas sin separador entre ellas:
city <- readline()
cat("Welcome to", paste0(city, "!"), "\n")Aquí, paste0(city, "!") une el valor de city y "!" sin ningún espacio, así que si el usuario escribe "Paris", la salida es: Welcome to Paris!
Desafío
FácilLee dos líneas de entrada y muestra un mensaje de saludo personalizado.
Recibirás dos entradas:
- Un nombre
- El nombre de una ciudad
Lee ambas entradas usando readline() y muestra un mensaje con el siguiente formato:
Welcome, [name] from [city]!Usa cat() para generar la salida. Asegúrate de incluir el signo de exclamación al final y un carácter de nueva línea \n.
Por ejemplo, si las entradas son Emma y Paris, la salida debería ser:
Welcome, Emma from Paris!Pruébalo tú mismo
# Leer entrada
con <- file("stdin", "r")
name <- suppressWarnings(readLines(con, n = 1))
city <- suppressWarnings(readLines(con, n = 1))
# TODO: Escribe tu código debajo para mostrar el mensaje de saludo
# Usa cat() para mostrar: Welcome, [name] from [city]!
# No olvides el carácter de nueva línea \n al finalEsta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores lógicos (AND, OR)Operadores lógicos Parte 2 (NOT)Resumen - Lógica simpleLógica vectorizada Parte 1Lógica vectorizada Parte 27Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada del usuario2Variables y tipos de datos
Tipo de dato numéricoTipo de dato enteroTipo de dato de caracteresTipo de dato lógicoComprobación de tipos de datosConvenciones de nomenclaturaValores faltantes: NAResumen - Creación de variables8Bucles
Bucle ForBucle WhileBreakNext (Continue)Repaso - FactorialGeneración de secuencias (seq, :)Bucles anidadosRepaso - Entrada dinámica3Operadores Parte 1
Operadores aritméticosDivisión entera y móduloOperadores de asignaciónRepaso - Matemáticas simplesOperadores de comparación6E/S básica
Imprimir salidaCat para salidaSalida con variablesLectura de entrada con readline()Conceptos básicos de conversión de tiposResumen - Calculadora de edadResumen - Verdadero o falso9Funciones
Declarar una funciónArgumentos de una funciónValores de retornoRepaso - Función SigmaRepaso - Función de validaciónValores de parámetros por defectoPractica por tu cuenta: Compilador de R online