¡Hola de nuevo, Andrés! ¿Cómo estás?
¡Muy buen trabajo! Tu algoritmo resuelve el desafío correctamente y hay un punto que merece destaque: usaste distancia <= 5 y después distancia <= 10 en lugar de rangos como "de 6 a 10". Eso es importante porque la distancia puede tener decimales, y así valores como 5.7 km o 9.3 km quedan cubiertos sin dejar huecos en las reglas. Es un error común en este ejercicio y tú lo evitaste.
También me gustó que hayas tratado la lluvia como un paso separado que suma sobre la tarifa ya calculada (Tarifa = Tarifa + 2.00). Esa idea de acumular sobre el valor de la propia variable es fundamental en programación y la aplicaste muy bien.
Un ajuste pequeño en la organización: la primera línea, "Verificar si Lluvia = verdadero", aparece antes de que se lea el dato. Lo ideal es dejar todas las entradas juntas al inicio y después procesar. Quedaría así:
inicio
leer distancia
leer lluvia
si (distancia <= 5) entonces
tarifa = 5.00
sino si (distancia <= 10) entonces
tarifa = 8.00
sino
tarifa = 10.00
fin si
si (lluvia) entonces
tarifa = tarifa + 2.00
fin si
escribir "La tarifa del envío es: ", tarifa
fin
Fíjate también que la última condición (distancia > 10) puede ser simplemente un sino, sin verificación. Como las dos anteriores ya cubrieron todos los valores hasta 10, cualquier caso que llegue ahí forzosamente es mayor que 10. Eso vuelve el algoritmo más claro y evita el riesgo de que algún valor quede sin tarifa asignada.
¡Sigue así y no dudes en volver al foro si surge alguna duda!
Abrazos y buenos estudios.