HOME»基本情報技術者試験掲示板»平成29年秋期午後問8
投稿する
平成29年秋期午後問8 [4702]
基本勉強中さん(No.1)
https://www.fe-siken.com/kakomon/29_aki/pm08.html
a1からよくわかりません。
「文字列の末尾の文字を1番目の文字とし」と記載されているので、例えば「kjiolj」という文字列があれば1番目の文字はjになると思います。そして、jから先頭に向かって奇数か偶数かを考えると思います。
一方、関数 calcCheckCharacterに入力される引数lenは「kjiolj」の場合5になると思います。
そこで質問ですが、上記の通りだと問題文のループ分i:len,i>0,-1は5から始まり、1までループする。すなわち、kから奇数か偶数か確認していくと思ったのですが、解説を見ると1から始まっているように見えるのですがなぜでしょうか。
a1からよくわかりません。
「文字列の末尾の文字を1番目の文字とし」と記載されているので、例えば「kjiolj」という文字列があれば1番目の文字はjになると思います。そして、jから先頭に向かって奇数か偶数かを考えると思います。
一方、関数 calcCheckCharacterに入力される引数lenは「kjiolj」の場合5になると思います。
そこで質問ですが、上記の通りだと問題文のループ分i:len,i>0,-1は5から始まり、1までループする。すなわち、kから奇数か偶数か確認していくと思ったのですが、解説を見ると1から始まっているように見えるのですがなぜでしょうか。
2022.11.25 22:05
基本勉強中基本勉強中さん(No.2)
お手数ですが、お助けいただけると幸いです。。。。
2022.11.25 22:15
お名前さん(No.3)
まず、koioljの場合はlenは6ではないでしょうか。
プログラムの仕様において「文字列の文字列長」と記載されています。
配列imput[]には、k o i o l j が入っており、jの添字は6になります。
なので、len=6から1まで繰り返すというのはjの次はl、その次はoとなり後ろから確認しています。
プログラムの仕様において「文字列の文字列長」と記載されています。
配列imput[]には、k o i o l j が入っており、jの添字は6になります。
なので、len=6から1まで繰り返すというのはjの次はl、その次はoとなり後ろから確認しています。
2022.11.25 22:48
基本勉強中基本勉強中さん(No.4)
この投稿は投稿者により削除されました。(2022.11.25 22:59)
2022.11.25 22:59
基本勉強中基本勉強中さん(No.5)
まず、koioljの場合はlenは6ではないでしょうか。
→6です。すいません
ありがとうございます。助かります。勘違いしておりました
「①文字列の末尾の文字を1番目の文字とし」という文言で混乱し、inport[1]=j、と勝手に決めつけておりました。
→6です。すいません
ありがとうございます。助かります。勘違いしておりました
「①文字列の末尾の文字を1番目の文字とし」という文言で混乱し、inport[1]=j、と勝手に決めつけておりました。
2022.11.25 23:02