回答

✨ ベストアンサー ✨

まず、becomeは become-became-become
過去分詞は(上の並びの3つめ、右端の)becomeです。
だからhas becomeという形はあるけど
has becameはないです

で、become というのは
AがBになる っていうのを
A → B と書いたとすると、この"→" の部分にあたります
だから完了形の継続用法で
has become a popular singer for three years
となってしまうと

3年間有名な歌手になり続けている 
有名な歌手じゃない状態から、有名な歌手になる という変化を、3年間続けている
ということになります。
これはもうちょっと掘り下げると
3年間かけて変化し続けてるんだけど、まだ有名な歌手になりきってない("なり続けている"のだから)
もしくは
有名な歌手になっては元通りになり、また有名な歌手になる、という奇妙なことを3年間続けている
ということになっちゃいます。
だから元の英文の意味とは全然合わないです。

ここでは元の英文を
ジャックが3年前に有名になって、いまも有名な歌手でいる と、とらえ直して
3年間有名な歌手でいつづけている
has been a famous singer
とすれば良いです

この回答にコメントする

回答

has became は has+過去形 なので文法的に不可
has+過去分詞 の has become が現在完了

has become ~ 「~になった」は 現在完了の完了・結果 を表す
has been ~ 「~である」は現在完了の状態の継続を表す

継続期間を表す for three years 「3年間」があり、(3年間人気歌手である)
よって、継続を表す has been が正解となり、完了・結果を表す has become は不正解となります

この回答にコメントする
疑問は解決しましたか?