¿Solo quieres aprobar? ¿O ya de paso también quieres aprender?
A lo segundo te podemos ayudar.
El enunciado no da muchos detalles de como hacerlo, por tanto, nos da libertad para enfocarlo como queramos.
Te propongo enfocarlo de la siguiente manera.
Declarar dos constantes con el nombre y clave que "darían acceso al sistema" (imaginario, no existe tal sistema)
El programa pedirá el nombre por teclado con el que vamos a intentar acceder, que ya sabemos que es Olaf, pero bueno, igualmente lo pedimos.
La clave también sabemos la que es, pero esta no se pedirá por teclado, si no que leeremos el fichero de texto diccionario que tiene varias claves y ahí debemos encontrar la clave que da acceso.
Bien, te regalo un código ya comenzado que pongo al final. Falta la parte importante, la de leer el fichero de texto para ir cogiendo claves y probar a acceder con ellas.
Esa parte has de intentar hacerla tú. Haz lo que puedas, lo que sepas, no temas equivocarte o atascarte. De hecho, es así como uno aprende, equivocándose y atascándose.
Para leer ficheros puedes usar la clase
Scanner (sí, la misma que usamos para leer por teclado) o la clase
BufferedReader (a mi me gusta más esta).
Investiga la que quieras por tu parte, busca ejemplos en Internet e intenta aplicarlo a tu código.
Y si no lo consigues, igualmente publica aquí lo que hayas escrito. Y te ayudamos a corregir, completar o lo que sea necesario.
Pero has de intentarlo tú, con tus propios medios. No cuentes con encontrar a otros que escriban el código por ti.