※最初 abc に流してみようと思って準備してたんですけどね(^^;) free にしました。
Y さ writes:
> もっとも一瞬で正しい実装をする自身があればFake Itを省略して実装してしまって
×自身→○自信 ですね。
後、awkなのでうまく動くのですが、↓これとか、
> -----
> function calcScore(data, sc,tbl,cnt){
> cnt=split(data, tbl, ",");
> if(cnt==0) return -1;
>
> # Fake It
> sc=0;
> if(tbl[1]+tbl[2]!=10){ # ストライク/スペアでは無い
> sc=tbl[1]+tbl[2];
> }else if(tbl[1]+tbl[2]==10 && tbl[2]!=0){ # スペア
> sc=tbl[1]+tbl[2]+tbl[3];
> }else if(tbl[1]+tbl[2]==10 && tbl[2]==0){ # ストライク
> if(tbl[3]+tbl[4]==10 && tbl[4]==0){ # 連続ストライク
> sc=tbl[1]+tbl[3]+tbl[5];
> }else{
> sc=tbl[1]+tbl[3]+tbl[4];
> }
> }
>
> if(tbl[3]+tbl[4]!=10){ # ストライク/スペアでは無い
> sc+=(tbl[3]+tbl[4]);
> }else if(tbl[3]+tbl[4]==10 && tbl[4]==0){ # ストライク
> sc+=(tbl[3]+tbl[5]+tbl[6]);
> }
>
> sc+=(tbl[5]+tbl[6]);
>
> return sc;
> }
> -----
配列の要素数を超えて計算しています...
分解した個数cntで判断しながら加算しないといけませんね d(^^;)