アプリ版:「スタンプのみでお礼する」機能のリリースについて

擬似コード
長さがmの配列でなんで
For i =0 to m
とかかくの?m-1までしかないでしょ?ばか?意味不明

A 回答 (11件中1~10件)

たしかに、おかしいですね。


0始まりなら
For i =0 to m-1 と書くべきで
1始まりなら
For i =1 to m と書くべきす。
0始まりか1始まりかは、言語によるので、
疑似コードが、どの言語を想定しているで異なります。

For i =0 to mと書いていることの出典はどちらでしょうか。
何かのサイトならURLを提示していただけますでしょうか。
そうでなくて、会社の同僚とか上司とか、学校の先生とかが書いているなら、
直接、その方に問い合わせたほうが良いかと思います。
    • good
    • 0
この回答へのお礼

そうですね〜。めっちゃわかります。普通のプログラミング言語ならそんな嫌じゃないけど、ぎじコードってルールがあるのかないのかわからなくて無理です。これは最初から問題文にかいてありました。

お礼日時:2023/12/05 17:49

これだけじゃ不明。

    • good
    • 0

この1文だけでは判断しかねます。



For 〜 to と書くのが PascalやBasicの流儀に近いのですが
例えばBasicだと
Dim A(m)
と宣言したら
A(0),A(1) ... A(m)
の長さ m+1 の配列になります。
(設定によっては 1からmの長さmになる)

Cやそのフォロアーでは
int A[m];
で 0〜m-1の長さm になります。

「長さm」が、正しく「長さm」なのか、Basicのような「最大添字=mで長さはm+1」なのか見極める必要があります。


また、
For i =0 to m
  共通の処理1
  if i = 0 Then
   配列を使わない処理
  Else
   i -1 を添字として使う
  End If
  共通の処理2
Next
とか
For i =0 to m
  共通の処理1
  if i = m Then
   配列を使わない処理
  Else
   i を添字として使う
  End If
  共通の処理2
Next
とかいったようにForループ全てのiを使っていない可能性もあります。


0 とか m とか関係無しの「配列の全要素に対して」という日本語を「疑似言語」に翻訳したものの可能性も0ではないですが。
    • good
    • 0

配列の添え字を0始まりとするか1始まりとするかは言語によってマチマチ。



0 to mの様に0からにしてるので、0始まりなんでしょうね。
長さはm+1の配列なんでしょう、キット。

そう言う事を、出題者が知らないのでは?
    • good
    • 0

>ばか?意味不明



「途中にbreak文などがあってループから抜け出すので最大m-1までしかアクセスしない」といったような落ちがあったりして。。

もしこの落ちがあって、それを見落としていたならば、「バカ」という人が「本当のバカ」ということになりそう

失礼しました
    • good
    • 0

>これは最初から問題文にかいてありました。


あとで、出題者に
For i =0 to mの場合、
iは0,1,2,・・・m-1 なのか・・・①
iは0,1,2,・・・m なのか・・・・②
を念のため確認したほうが良いですね。
一般的には②ですが、出題者は①の意味で出題しているように思われます。

>ぎじコードってルールがあるのかないのかわからなくて無理です。
その通りですね。
    • good
    • 0

誰に向けた発信なんですか。


誤ったコードを書いていることに指摘したいなら、その誤ったコードを書いた人に直接言ってはいかがでしょうか。
    • good
    • 1
この回答へのお礼

テスト問題中のこーどがそうなってるからどうしよもないてはなしです。

お礼日時:2023/12/05 17:55

スタートが0だから、m番目に当たるのがm-1



mにしたければi=1としないとだめ
    • good
    • 0

普通の人は、i = 1 to m と書きます。


バカなのは貴方の方です。
    • good
    • 1

>長さがmの配列


1から始めりゃmまで
0から始めてるからm-1までなんでしょ。

>ばか?意味不明
算数もできないのに、逆切れとは、
なかなかですねえ。www
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています