I have added strcase, so you can also answer in lower case. If you don't do if for both cases, the program only terminates when "N" is present.
(initget (strcase "Y N"))
(setq request (getkword "Want to do something more? [Yes/No] "))
(if (wcmatch request "N")
(vl-exit-with-error (alert "the lisp is finished"))
)
(alert "i will do some more commands..")