質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.02%

  • PHP

    17701questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • プログラミング言語

    626questions

    プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

なぜ"スカラー"なのか

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 2
  • VIEW 429

aaaaaaaa

score 445

配列と違い一つの値しか保存というか代入できないものをスカラー変数と呼びます。
スカラーは、重さや時間、長さなど大きさだけ定まる数量とのことですが、これと何か関連があるから変数をスカラー変数とも呼ぶわけだと思うのですが、どういった関係でスカラー変数と呼称されるようになったのでしょうか。

追記
配列のことをベクトル配列と呼ばないのは、なぜなのでしょうか。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

+3

スカラー (数学) | Wikipediaで見てみると、

「スカラー」の語は梯子を意味するラテン語 "scalaris" の形容詞形 "scala" に由来する(スケールの語と同根)。数学で初めて「スカラー」の語が使用されたのはフランソワ・ヴィエトの In artem analyticen isagoge (1591) の[4]、
「形を保ったまま一方を他方へ比例的に増大または減少させる大きさをスカラー項と呼ぶ」

という説明があります。

ベクトルと対比させて、スケール倍で数字を「スカラー変数」というのかな、という認識でいます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/12 19:30

    ご回答ありがとうございます。

    >>ベクトルと対比させて、スケール倍で数字を「スカラー変数」というのかな、という認識でいます。
    つまりsuyama氏が仰るようにベクトルは、スカラーが大きさしかないのと違って大きさと方向があって、同じように複数の値を持つ配列に準えた、従って大きさしかないスカラーと値を一つしか保存できない変数というような関係性があってスカラー変数と呼ぶ、ということでしょうか。間違っておったら申し訳ありません。

    キャンセル

checkベストアンサー

+1

スカラー(scalar)という用語はPerlで用いられることが多いように思います。
Perlではスカラー値と、その配列であるリストが主なデータになります(他にハッシュなどもあります)。

リストは複数のスカラー値の組からなるものですので、リストの意味付けをベクトルととらえれば、逆説的にリストの1要素をスカラーと考えられるということになります。

Perl登場以前からスカラー変数といった形の用いられ方をしていた例があるのかは把握していませんが、もしPerlが初出なのであれば、Perlの開発者がそう呼び始めたからということになるのかと思います。


追記:

この辺りの話は下記ページの内容が参考になるかもしれません。

What does it mean when data is scalar?
https://softwareengineering.stackexchange.com/questions/238033/what-does-it-mean-when-data-is-scalar

プログラミングでのスカラーという語は、いくつかあるうちの一つのみを特定していることを表している、という部分を意味させたいものであるようです。
配列側にも用語を割り当てるなら次元のように思いますが、これはこれで配列の深さを表すのに使われる用語として定着しているので、適当ではないですね。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

edo_m18さんのおっしゃる通り、スカラーは大きさだけの量のことで、ベクトルと対比して使用されます。
高校数学においてベクトルは向きを持った線分で表され、始点と終点を持ちます。
このベクトルを表す際、座標平面、もしくは座標空間において、始点を原点に置いた際の終点の座標をもって表す方法があります。これをベクトルの成分表示といいます。平面もしくは空間でベクトルを表現する際は2成分または3成分になります。

「線形代数学」という学問においてはこの考えを拡張し、数を縦か横1列に並べたものをベクトルと呼びます。
そして高校でのベクトルと同じように実数倍を考えるのですが、この実数をベクトルと区別してスカラーと呼びます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 91.02%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る

  • PHP

    17701questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • プログラミング言語

    626questions

    プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

閲覧数の多いPHPの質問