Obtener la entrada del usuario
Parte de la sección Fundamentos del Journey de R de Coddy — lección 34 de 78.
Desafío
FácilEn la lección anterior, creaste un mensaje de bienvenida para la Calculadora de División de Cuentas. Ahora, añade la funcionalidad para recopilar la entrada del usuario para el cálculo de la cuenta.
Después de tu mensaje de bienvenida existente, lee tres entradas del usuario:
- El monto total de la cuenta
- El porcentaje de propina (como un número entero, por ejemplo,
15para 15%) - El número de personas que dividen la cuenta
En los scripts de R que se ejecutan de forma no interactiva (como en esta plataforma), la entrada se lee desde el flujo de entrada estándar. Para hacer esto, primero abre una conexión a stdin usando file(), luego lee cada línea con readLines() y cierra la conexión cuando termines:
con <- file("stdin", "r")
bill <- as.numeric(suppressWarnings(readLines(con, n = 1)))
tip_percent <- as.numeric(suppressWarnings(readLines(con, n = 1)))
people <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)Aquí está lo que hace cada parte:
file("stdin", "r")— abre el flujo de entrada estándar para lectura y lo almacena enconreadLines(con, n = 1)— lee exactamente una línea de esa conexiónsuppressWarnings(...)— silencia advertencias inofensivas que aparecen al leer destdinde esta maneraas.numeric(...)— convierte la entrada de texto en un númeroclose(con)— cierra la conexión después de que se hayan leído todas las entradas
Almacena los tres valores en variables llamadas bill, tip_percent y people.
Después de leer las entradas, muestra un mensaje de confirmación que muestre lo que se ingresó en el siguiente formato:
Bill: $[bill]
Tip: [tip_percent]%
People: [people]Usa cat() para toda la salida e incluye caracteres de nueva línea \n donde sea necesario. Usa sep = "" en cada llamada a cat() para evitar espacios no deseados.
Por ejemplo, si las entradas son 120, 18 y 4, la salida completa debería ser:
Welcome to the Bill Split Calculator!
Let's split your bill fairly.
Bill: $120
Tip: 18%
People: 4Pruébalo tú mismo
# TODO: Write your code below
# Use cat() to display the welcome message
# Remember to use \n for new lines
cat("Welcome to the Bill Split Calculator!\nLet's split your bill fairly.\n")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 defecto