変数名を数字にする方法について への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 (削除されました)  ()
投稿日時
2009/10/30 05:20:13
(削除されました)
投稿者 チョビヒゲ三杯目  (高校生)
投稿日時
2009/10/30 04:09:28
>話を元に戻しましょう。
もうお腹いっぱいという感じがします。
なぜ話を元に戻すのでしょう。
研修1年生さんが言うとおり一件落着でいいと思います。
僕はデータベースの記事めあてに訪れているだけの者ですし、
サイトでもブログでも書き込むのはしないのでルールは知りません。
皆さんの見よう見まねの書き込みですが、ざっと読み返してみますと、
>言語仕様として不可
この点については、いんでくささんも理解しているのだと見受けられます。
発想として便利なように感じるという言わば雑感を述べたかったのではという気もします。
しょせん子供の意見でしょうが、そういう雑感の報告から、どうして学習のスタンスの話題へとシフトしていったのか、そのあたりからしてズレている気がします。
そんなことも知らないのか、という雰囲気が出始めたあたりから、1つの考えの報告にすぎなかったスレッドがあれこれ取り込みすぎ始めたのかと。
ただ、ネットでは違うのでしょうが、普段の高校生活なんかで、これぐらいのやり取りは荒れているというふうには定義しないと思います。ちょっとナイーブ過ぎるというか、別にイマドキの10代を代表して、というつもりでもないですが。
もうお腹いっぱいという感じがします。
なぜ話を元に戻すのでしょう。
研修1年生さんが言うとおり一件落着でいいと思います。
僕はデータベースの記事めあてに訪れているだけの者ですし、
サイトでもブログでも書き込むのはしないのでルールは知りません。
皆さんの見よう見まねの書き込みですが、ざっと読み返してみますと、
>言語仕様として不可
この点については、いんでくささんも理解しているのだと見受けられます。
発想として便利なように感じるという言わば雑感を述べたかったのではという気もします。
しょせん子供の意見でしょうが、そういう雑感の報告から、どうして学習のスタンスの話題へとシフトしていったのか、そのあたりからしてズレている気がします。
そんなことも知らないのか、という雰囲気が出始めたあたりから、1つの考えの報告にすぎなかったスレッドがあれこれ取り込みすぎ始めたのかと。
ただ、ネットでは違うのでしょうが、普段の高校生活なんかで、これぐらいのやり取りは荒れているというふうには定義しないと思います。ちょっとナイーブ過ぎるというか、別にイマドキの10代を代表して、というつもりでもないですが。
投稿者 流れ者  (その他)
投稿日時
2009/10/29 22:01:31
こんにちは。
話を元に戻しましょう。
いんでくささん。
数字を変数名にしたいようですが、これは、「言語仕様として」無理です。
いくらごねても、抜け道はありません。
理由は他の方が述べている通りです。
一番現実的な解決方法は、?-?さんの配列を利用した方法です。
あと、いんでくささんはプログラム初心者だと見受けられますが、
こういった、技術系の掲示板に対しても初心者だと見受けられます(これに関しては私も同じようなものですが。)
自らが質問したら、ちょくちょくみて、自分が的外れな質問をしたと感じたなら、即座に答えてくれた人に対し感謝と謝罪をし、自らスレッドを閉じるべきです。
そうすれば、今回みたいな、あなたの人間性にまで踏み込むような内容は書かれず、荒れなかったと思います。
話を元に戻しましょう。
いんでくささん。
数字を変数名にしたいようですが、これは、「言語仕様として」無理です。
いくらごねても、抜け道はありません。
理由は他の方が述べている通りです。
一番現実的な解決方法は、?-?さんの配列を利用した方法です。
あと、いんでくささんはプログラム初心者だと見受けられますが、
こういった、技術系の掲示板に対しても初心者だと見受けられます(これに関しては私も同じようなものですが。)
自らが質問したら、ちょくちょくみて、自分が的外れな質問をしたと感じたなら、即座に答えてくれた人に対し感謝と謝罪をし、自らスレッドを閉じるべきです。
そうすれば、今回みたいな、あなたの人間性にまで踏み込むような内容は書かれず、荒れなかったと思います。
投稿者 るしぇ  (社会人)
投稿日時
2009/10/27 03:14:40
現実世界の人間は色々いてもいいけど、コンピュータ相手に論理的に考えられないと
動かないという結果が返ってくるよ。
技術の書き込みだけで理解して欲しいね、ホントに。
動かないという結果が返ってくるよ。
技術の書き込みだけで理解して欲しいね、ホントに。
投稿者 研修1年生  (社会人)
投稿日時
2009/10/27 02:57:19
ここ面白いスレッドですね。
学生生活を送っていると、学生生活も実社会より手厳しいぐらいに社会生活だと感じることがあります。また社会人生活を送っていると、周囲や年長者を見ていても実社会なんて建前を除けば学生生活だと感じる部分も多々あります。論理的な人、理性的な人なんてそんなにいません。誰しも結構情緒的です。
とにかく「人生いつでも学びの場」ということでどうですか。
いんでくささんももういいでしょう。努力していても焦っちゃうことってありますよね。
他の方も誠意を尽くしていても届かないことってありますよね。
勉強姿勢や書き込みの方法論も結構ですが、純粋に技術の書き込みだけしましょうよ。
学生生活を送っていると、学生生活も実社会より手厳しいぐらいに社会生活だと感じることがあります。また社会人生活を送っていると、周囲や年長者を見ていても実社会なんて建前を除けば学生生活だと感じる部分も多々あります。論理的な人、理性的な人なんてそんなにいません。誰しも結構情緒的です。
とにかく「人生いつでも学びの場」ということでどうですか。
いんでくささんももういいでしょう。努力していても焦っちゃうことってありますよね。
他の方も誠意を尽くしていても届かないことってありますよね。
勉強姿勢や書き込みの方法論も結構ですが、純粋に技術の書き込みだけしましょうよ。
投稿者 るしぇ  (社会人)
投稿日時
2009/10/26 23:15:14
いつまでも学校を卒業できない考え方ですね。
それを正当化しても意味ないんですよ。
実際に他人から必要とされるのは、自分で考える力ですから。
それを正当化しても意味ないんですよ。
実際に他人から必要とされるのは、自分で考える力ですから。
投稿者 聖帝  (中学生)
投稿日時
2009/10/25 05:42:43
おお、よく読んだら、変数名前に数字ですか。
ふむふむ。なかなか面白いよ。ソレ。
アイデアが豊富で良いと思います。
ふむふむ。なかなか面白いよ。ソレ。
アイデアが豊富で良いと思います。
投稿者 あん  (小学生)
投稿日時
2009/10/25 05:02:57
> お気軽にどうぞと掲示板には書いてあるのに
そうなんですか?
そんなことかいてあるところ、みたことないのです。
うそをかいてはいけないとおもいます。
そうなんですか?
そんなことかいてあるところ、みたことないのです。
うそをかいてはいけないとおもいます。
投稿者 daive  (社会人)
投稿日時
2009/10/25 04:18:15
>いんでくささんに1票
さんの、書込みをみていると、
将に「ゆとり教育」が、なんと酷いものだったのかの象徴に見えます。
学ぶ姿勢が、出来ているとは思えません。
基礎が出来て居ないと書いてくれるのは、優しい事なのに、
それさえ、理解できないとは、学校教育はどうなっているのでしょう?
自分の能力不足や、足りない部分を指摘してくれることは、
社会に出たら、なくなります。
たまたま指摘されて、直らないばあいは、
首になるか、仕事からはずされるか、相手にされなくなるか。
さんの、書込みをみていると、
将に「ゆとり教育」が、なんと酷いものだったのかの象徴に見えます。
学ぶ姿勢が、出来ているとは思えません。
基礎が出来て居ないと書いてくれるのは、優しい事なのに、
それさえ、理解できないとは、学校教育はどうなっているのでしょう?
自分の能力不足や、足りない部分を指摘してくれることは、
社会に出たら、なくなります。
たまたま指摘されて、直らないばあいは、
首になるか、仕事からはずされるか、相手にされなくなるか。
投稿者 (削除されました)  ()
投稿日時
2009/10/25 03:25:37
(削除されました)
投稿者 (削除されました)  ()
投稿日時
2009/10/25 03:22:21
(削除されました)
投稿者 聖帝サウザー  (中学生)
投稿日時
2009/10/25 00:59:49
最初のカキコが乱数でしょ?^^;
1~6のサイコロの目の話題でしょ?
工夫すりゃ~システム乱数を使う必要もない。
ゲーム系のプログラムはサンプルが少ないからね。
僕くらいだよ。質問に回答してくれるゲーム王わ。
1~6のサイコロの目の話題でしょ?
工夫すりゃ~システム乱数を使う必要もない。
ゲーム系のプログラムはサンプルが少ないからね。
僕くらいだよ。質問に回答してくれるゲーム王わ。
投稿者 インデクサ  ()
投稿日時
2009/10/24 23:48:02
こういうやからには遠回しに言ってもダメなのでしょう。
いんでくささんの問題点
こういう技術者系の掲示板で質問するときに守るべきルールやマナーをすべて無視しているところ。
質問するなとは誰も居わない。
でも、そのまえにやっておくこと、そして質問時に守るべき事すべてをやっていない。
それを守らないと、回答が貰えないばかりか、そのスレが荒らされるだけ。
以降放置推奨。
いんでくささんの問題点
こういう技術者系の掲示板で質問するときに守るべきルールやマナーをすべて無視しているところ。
質問するなとは誰も居わない。
でも、そのまえにやっておくこと、そして質問時に守るべき事すべてをやっていない。
それを守らないと、回答が貰えないばかりか、そのスレが荒らされるだけ。
以降放置推奨。
投稿者 いんでくさ  (社会人)
投稿日時
2009/10/24 09:51:07
気づけば様々な方からご意見もらっていますね。
それで、どのあたりが話題の論点になっているのか徐々に分からないのですが、しかもそれが自分の曖昧な追加質問のせいだと分かるので、また、妙に興味をくすぐられるのですが、一応、手元の資料というのは市販のテキストです。それを順番にやっています。ただ譲り物なので2003を前提として書いていたり、サンプルコードの変数名に漢字を使用しているなどありますが、それはまるで問題ないのだろうと思います。
それで、最初にも述べたとおり、身分に合わないチャレンジをしているとは自覚しています。ただサンプルコード自体、わりと早い段階で、おそらくは本来なら後ろに回すだろう項目についてもわりと含んでおります。乱数がその1つかなと。
そしてサンプルコードをいじくるというのは、ベテランの方からすると、初心者には高度なトピックなのかもしれませんが、私としてはテキストにしたがっているだけです。
「サンプルコードをとりあえず書いて、動かしてみて、解説を読んで、なんとなく感じが分かったら、少しでもいいから、変えてみること。それでプログラムが動作成功するということは、理解したということ」
このようにあったので、また、私も感銘を受ける文章だったので、実践しているだけのことだという認識でした。
通読をして、基本を理解して、すべてを分かってから質問すべき、というような回答が多いような気がしているのですが、少なくとも基本が分かるところまで一度やるべきということでしょうが、基本を理解するというのは、なかなか大変なことだと思います。また、自分でそんなのできるようなら、こういった有益なサイトを探し回りはしないでしょう。
少なくとも、いくらか、こちらの講座を読ませてもらった印象として、取り立てて基本を理解してから質問をすべき、といったようなことは書いていないと思いますし、また、講座自体も基本的に訪問者の自由な関心の赴くまま、好きなように読んで、その学習スタンスに対して制限は置いていないような印象を受けました。
そこがVB中学のよさ、ではないでしょうか?
よくネットでは、自分で調べることが前提のように言われていますが、ちょっとそれは理想論なんじゃないかな、という気が個人的にはしています。質問コーナーがあり、答えくれるかもしれないという可能性があるなら、それがどんなに怠慢だろうが、どう思われようが、書き込んでみようという方が人間として現実的だと思います。
たとえそれが自分で簡単に知ることができるようなことであれ、かまうような質問でないのなら、そのときは他の閲覧者がスルーすればよいだけの話でしょうし。私は時間的に、また気持ちとしてゆとりのあるタイミングでの閲覧者に答えてもらうだけで良いと思っていますし、あくまでも学びの場なのだから、他力本願も大有りじゃないかなあと思うのです。
ただ、プログラマの方はストイックなイメージがありますし、実際に自力であらゆる問題を処理されているのでしょうが、やんや、やんや、みんなでやっているほうが楽しいですよ、きっとこういうのは。
気になったことをどんどんぶつけてみる、という方が少なくとも私の受けたVB中学の印象としては合っている気が個人的にはしています。
すごく生意気なことを言っていると思います。そのついでに言うわけではないですが、ここに限らず質問掲示板というのは、基本的に優劣が前提とされていて、それは回答者が圧倒的に立場が上だということです。
そのため自然と質問掲示板自体が熟達者を中心に回っていくのだと思います。それは、熟達者のスタンス、ポリシー、理想、そういったものが反映されやすい、ということです。しかし、それは質問掲示板の本来の趣旨とは、必ずしも一致しないでしょう。質問掲示板は立場の弱い者のためにある、ということが最大のテーマではないでしょうか。
教えてもらうのだから、それ相応の聞き方があるというのは、よく分かります。しかし、これは実社会での経験からですが、へりくだってばかりいても、また、下手に出ていたらそれはそれで、たくさんのチャンスをみすみす逃すことにもなりかねないわけです。ただでさえ、立場が弱い者は商売っ気があるというか、物事をスマートに済ませようとすることがありますが、
それだけでは、目の前にある果実を逃すことも多々あるし、他者のペースで回され続けることにもなりかねません。
どなたかが、こんな質問するような恥をかくこともなかった、みたいなことをお書きになっていましたが、まったく何を言っているのかな、という気がしました。恥をかくためにあるのが人生だと私は思っているぐらいですよ。それもこれも、何であれ、どう批判されるであれ、こんなにも便利で、有益で、ほしいものを得られる場、時間という果実があるからです。
気になったら、どんどん聞いてみる。答えてもらえたらラッキー、ありがとうございました。興味がないとか、答えたくない方はスルー。何も知らないことは、何もできないことは、人とは違うことを知ることができる可能性、人とは違うことをできる可能性、そんなふうにも取れるのではないでしょうか。皆が皆、良い雰囲気でやりましょうの優等生ばかりでは、学校とは呼べませんよ、きっと。
それで、どのあたりが話題の論点になっているのか徐々に分からないのですが、しかもそれが自分の曖昧な追加質問のせいだと分かるので、また、妙に興味をくすぐられるのですが、一応、手元の資料というのは市販のテキストです。それを順番にやっています。ただ譲り物なので2003を前提として書いていたり、サンプルコードの変数名に漢字を使用しているなどありますが、それはまるで問題ないのだろうと思います。
それで、最初にも述べたとおり、身分に合わないチャレンジをしているとは自覚しています。ただサンプルコード自体、わりと早い段階で、おそらくは本来なら後ろに回すだろう項目についてもわりと含んでおります。乱数がその1つかなと。
そしてサンプルコードをいじくるというのは、ベテランの方からすると、初心者には高度なトピックなのかもしれませんが、私としてはテキストにしたがっているだけです。
「サンプルコードをとりあえず書いて、動かしてみて、解説を読んで、なんとなく感じが分かったら、少しでもいいから、変えてみること。それでプログラムが動作成功するということは、理解したということ」
このようにあったので、また、私も感銘を受ける文章だったので、実践しているだけのことだという認識でした。
通読をして、基本を理解して、すべてを分かってから質問すべき、というような回答が多いような気がしているのですが、少なくとも基本が分かるところまで一度やるべきということでしょうが、基本を理解するというのは、なかなか大変なことだと思います。また、自分でそんなのできるようなら、こういった有益なサイトを探し回りはしないでしょう。
少なくとも、いくらか、こちらの講座を読ませてもらった印象として、取り立てて基本を理解してから質問をすべき、といったようなことは書いていないと思いますし、また、講座自体も基本的に訪問者の自由な関心の赴くまま、好きなように読んで、その学習スタンスに対して制限は置いていないような印象を受けました。
そこがVB中学のよさ、ではないでしょうか?
よくネットでは、自分で調べることが前提のように言われていますが、ちょっとそれは理想論なんじゃないかな、という気が個人的にはしています。質問コーナーがあり、答えくれるかもしれないという可能性があるなら、それがどんなに怠慢だろうが、どう思われようが、書き込んでみようという方が人間として現実的だと思います。
たとえそれが自分で簡単に知ることができるようなことであれ、かまうような質問でないのなら、そのときは他の閲覧者がスルーすればよいだけの話でしょうし。私は時間的に、また気持ちとしてゆとりのあるタイミングでの閲覧者に答えてもらうだけで良いと思っていますし、あくまでも学びの場なのだから、他力本願も大有りじゃないかなあと思うのです。
ただ、プログラマの方はストイックなイメージがありますし、実際に自力であらゆる問題を処理されているのでしょうが、やんや、やんや、みんなでやっているほうが楽しいですよ、きっとこういうのは。
気になったことをどんどんぶつけてみる、という方が少なくとも私の受けたVB中学の印象としては合っている気が個人的にはしています。
すごく生意気なことを言っていると思います。そのついでに言うわけではないですが、ここに限らず質問掲示板というのは、基本的に優劣が前提とされていて、それは回答者が圧倒的に立場が上だということです。
そのため自然と質問掲示板自体が熟達者を中心に回っていくのだと思います。それは、熟達者のスタンス、ポリシー、理想、そういったものが反映されやすい、ということです。しかし、それは質問掲示板の本来の趣旨とは、必ずしも一致しないでしょう。質問掲示板は立場の弱い者のためにある、ということが最大のテーマではないでしょうか。
教えてもらうのだから、それ相応の聞き方があるというのは、よく分かります。しかし、これは実社会での経験からですが、へりくだってばかりいても、また、下手に出ていたらそれはそれで、たくさんのチャンスをみすみす逃すことにもなりかねないわけです。ただでさえ、立場が弱い者は商売っ気があるというか、物事をスマートに済ませようとすることがありますが、
それだけでは、目の前にある果実を逃すことも多々あるし、他者のペースで回され続けることにもなりかねません。
どなたかが、こんな質問するような恥をかくこともなかった、みたいなことをお書きになっていましたが、まったく何を言っているのかな、という気がしました。恥をかくためにあるのが人生だと私は思っているぐらいですよ。それもこれも、何であれ、どう批判されるであれ、こんなにも便利で、有益で、ほしいものを得られる場、時間という果実があるからです。
気になったら、どんどん聞いてみる。答えてもらえたらラッキー、ありがとうございました。興味がないとか、答えたくない方はスルー。何も知らないことは、何もできないことは、人とは違うことを知ることができる可能性、人とは違うことをできる可能性、そんなふうにも取れるのではないでしょうか。皆が皆、良い雰囲気でやりましょうの優等生ばかりでは、学校とは呼べませんよ、きっと。
投稿者 neptune  (社会人)
投稿日時
2009/10/24 08:13:28
万年初心者を名乗っている私ですが、本当の初心者時代もありました。
そこで、参考になれば、
>しかし、何も知らない私としては、
>「数字って値として使うんだろうけど、変数の名前として使えるのかもしれないな、そうすると数字
>に文章なんかも入れられるかもしれないな、何も知らない段階でランダムちっくなプログラムが
>かけてしまうのか、行けるぜラッキー、あ、えっ? なんかいかんの? なんでエラーなんだろ?」
>という流れでした。
ここまではまぁ良いでしょう。
次に続くのがが本当に勉強しようと思っているなら、その初学者としては問題あるんじゃないですか?
>それで回答をもらい、変数名の頭に数字は持ってこられない、と知る。
本来なら、VBの勉強をしているなら、ぼちぼちでも参考書を通読するのは勿論ですが、
>変数の名前として使えるのかもしれないな
>なんかいかんの? なんでエラーなんだろ?」
の時点でルールをMSDNで調べてみるべきです。
「Visual Studio 2008」
「Visual Studio」
「Visual Basic のプログラミング ガイド 」
「プログラム構造とコード規則」
「Visual Basic の名前付け規則」
にその規則はきっちり書かれています。
先ず、自分で出来る限り調べてそれでどうしても判らなければ質問すべきでしょう。
そういう風にしなければ、調べるスキルは付きませんし、その姿勢が見えないから
掲示板などでもその指摘を受けるのです。
尤も私も時々質問させていただきますが、自分で調べる事は必ずします。
自分で調べていると、例えば手法、方針などのアドバイスでも大変ありがたいものです。
まぁ私としては、参考書を始めから終わりまで、サンプルプログラムを作りながら1冊は
通読することをお勧めします。1章毎にある程度完結するように作られているものが
多いと思いますから、案外楽しみながら終れるのでは?
その後はMSDNのサンプルプログラムも役に立ってくれるでしょう。
皆さん書かれていますが、言語の仕様、規則を覚えないことには結局自分のやりたいことは出来ません。
そうこうしている内に自分で調べるスキルは知らぬ間についていることでしょう。
以上経験でした。
・・・書いてから気が付いたんですが、るしぇさんとかなりかぶってますねぇ。
でも、せっかく書いたんで、載せておきます。
そこで、参考になれば、
>しかし、何も知らない私としては、
>「数字って値として使うんだろうけど、変数の名前として使えるのかもしれないな、そうすると数字
>に文章なんかも入れられるかもしれないな、何も知らない段階でランダムちっくなプログラムが
>かけてしまうのか、行けるぜラッキー、あ、えっ? なんかいかんの? なんでエラーなんだろ?」
>という流れでした。
ここまではまぁ良いでしょう。
次に続くのがが本当に勉強しようと思っているなら、その初学者としては問題あるんじゃないですか?
>それで回答をもらい、変数名の頭に数字は持ってこられない、と知る。
本来なら、VBの勉強をしているなら、ぼちぼちでも参考書を通読するのは勿論ですが、
>変数の名前として使えるのかもしれないな
>なんかいかんの? なんでエラーなんだろ?」
の時点でルールをMSDNで調べてみるべきです。
「Visual Studio 2008」
「Visual Studio」
「Visual Basic のプログラミング ガイド 」
「プログラム構造とコード規則」
「Visual Basic の名前付け規則」
にその規則はきっちり書かれています。
先ず、自分で出来る限り調べてそれでどうしても判らなければ質問すべきでしょう。
そういう風にしなければ、調べるスキルは付きませんし、その姿勢が見えないから
掲示板などでもその指摘を受けるのです。
尤も私も時々質問させていただきますが、自分で調べる事は必ずします。
自分で調べていると、例えば手法、方針などのアドバイスでも大変ありがたいものです。
まぁ私としては、参考書を始めから終わりまで、サンプルプログラムを作りながら1冊は
通読することをお勧めします。1章毎にある程度完結するように作られているものが
多いと思いますから、案外楽しみながら終れるのでは?
その後はMSDNのサンプルプログラムも役に立ってくれるでしょう。
皆さん書かれていますが、言語の仕様、規則を覚えないことには結局自分のやりたいことは出来ません。
そうこうしている内に自分で調べるスキルは知らぬ間についていることでしょう。
以上経験でした。
・・・書いてから気が付いたんですが、るしぇさんとかなりかぶってますねぇ。
でも、せっかく書いたんで、載せておきます。
投稿者 聖帝  (中学生)
投稿日時
2009/10/24 06:37:26
うむ。
ちんぷんかんぷんだが、それが何の役にたつのか証明してほしいね。
乱数を複雑にしたいの?
某ゲームメーカーは0~13の数字を永遠にループさせてるよ。
VBシステムはミリ秒を使ってる。
簡単なテーマで、あまり面白くないね。
ちんぷんかんぷんだが、それが何の役にたつのか証明してほしいね。
乱数を複雑にしたいの?
某ゲームメーカーは0~13の数字を永遠にループさせてるよ。
VBシステムはミリ秒を使ってる。
簡単なテーマで、あまり面白くないね。
投稿者 (削除されました)  ()
投稿日時
2009/10/24 06:23:10
(削除されました)
投稿者 (削除されました)  ()
投稿日時
2009/10/24 06:06:46
(削除されました)
投稿者 いんでくさ  (社会人)
投稿日時
2009/10/24 04:53:55
おそらく回答者の皆さんからすると、もどかしくて、もどかしくて、仕方がないという感じでおられるのでしょう。これは単純に、知識と経験の違いを前提とした上での、分析力と認識力の私について言えば欠如であり、回答者の皆さんのほうでいえば充足という差がどうにもネックとなっているようです。
それで、正直なところ、話はよく分かったよな、よく分からないような、そんな感じです。
そして怠慢というキーワードが出ていましたが、これは本当に重要で、まさにそうなんです。
言語仕様がどうとか、プログラムのルールを変更とか、制限がどうという話ではないのです。
要するに、何も知らないがやってみたいし、やたらと調子よく質問するネットでありがちな初心者が、一冊の本の最初から読み始めて、本当はP.100ページでやる項目を、今はまだP.10までしかやっていないのに、実現する方法を愚かにも考えている、そういうふうに考えると、何かこう、あれこれせめぎ合うようなレベルの問題ではなくて、もっと低次元な、おバカ話みたいな、ゲーム感覚の話なんだと思います。少なくとも、私はもっと単純に考えているのです。
>なぜ識別できなくなっているのか?その原因を把握できていないでしょう?
そう問われてしまうとイエスともいえますが、ちょっと書いておきます。
例えば1という「数字を単発で記述する」際、それは値として、VBが認識してくれる。
であるがゆえに、数字を変数名として記述すると、VBとしては、「おいおい、ちょっとまってくれ、数字は値であって、変数として使われては困るよ」と言っている。
しかし、何も知らない私としては、
「数字って値として使うんだろうけど、変数の名前として使えるのかもしれないな、そうすると数字に文章なんかも入れられるかもしれないな、何も知らない段階でランダムちっくなプログラムがかけてしまうのか、行けるぜラッキー、あ、えっ? なんかいかんの? なんでエラーなんだろ?」
という流れでした。
それで回答をもらい、変数名の頭に数字は持ってこられない、と知る。
これで、私の中での、原因は解決した、という気になりました。
しかし、おそらく、私が最初に識別子についてのエラーが出ているなんて書いたので、「そのへんについて理解できていないでしょ? エラー表示の意味わかってないでしょ?」という意味のご指摘であるなら、まったくそのとおりです。
ただ、とりあえず、数字は数値として使う、それがルール、という点についてなら、私は納得がいっているつもりです。
銀行の窓口の呼び出し番号まで引き合いに出したのはまずかったようで、というか余計な混乱を招いたようで、入金額とか、その他の情報まで連結しては考えていませんでした。それだけに不用意なたとえだったと思います。
ただ、私の考えとしては、別に言語仕様をどうしろ、みたいな話ではないです。
初心者としては、何も知らないながらにランダムちっくなプログラムとかを実現できると、なんだか、やたらと自由な気分になれるんです。それだけに、知識もスキルもある方からするならば、そのやり方が極めて狭い、制限的なように見えているのだと思います。
でもそれは広く知っているからで、何も知識を持たない人間のレベルで考えてみると、自由を求めてのアプローチになってしまうという(笑)。
しかし、どうやら数値を変数として使おうとしているところに無理があったらしい。このように理解しています。回答を見た限り、ひょっとしたら、もう少し先というか、もう少し掘り下げたところをおっしゃっているのかもしれませんが、それはその、私の呈している疑問について皆さんが。ただ、私が自分のした質問について認識しているのは、上で書いた程度の疑問で止まっているかと思います。
数字は数値。変数としては使えないんだな。これが私の理解と納得のすべてです。
「違うんだよ、違うんだよ、そこがさあ、分かっていないんだよ、もっと、こう」というお話でしたら、長々と読ませた挙句、申し訳ないところですが。
こう書くと、ますます回答者の皆さんはもどかしい気持ちになるかもしれませんが。
それで、正直なところ、話はよく分かったよな、よく分からないような、そんな感じです。
そして怠慢というキーワードが出ていましたが、これは本当に重要で、まさにそうなんです。
言語仕様がどうとか、プログラムのルールを変更とか、制限がどうという話ではないのです。
要するに、何も知らないがやってみたいし、やたらと調子よく質問するネットでありがちな初心者が、一冊の本の最初から読み始めて、本当はP.100ページでやる項目を、今はまだP.10までしかやっていないのに、実現する方法を愚かにも考えている、そういうふうに考えると、何かこう、あれこれせめぎ合うようなレベルの問題ではなくて、もっと低次元な、おバカ話みたいな、ゲーム感覚の話なんだと思います。少なくとも、私はもっと単純に考えているのです。
>なぜ識別できなくなっているのか?その原因を把握できていないでしょう?
そう問われてしまうとイエスともいえますが、ちょっと書いておきます。
例えば1という「数字を単発で記述する」際、それは値として、VBが認識してくれる。
であるがゆえに、数字を変数名として記述すると、VBとしては、「おいおい、ちょっとまってくれ、数字は値であって、変数として使われては困るよ」と言っている。
しかし、何も知らない私としては、
「数字って値として使うんだろうけど、変数の名前として使えるのかもしれないな、そうすると数字に文章なんかも入れられるかもしれないな、何も知らない段階でランダムちっくなプログラムがかけてしまうのか、行けるぜラッキー、あ、えっ? なんかいかんの? なんでエラーなんだろ?」
という流れでした。
それで回答をもらい、変数名の頭に数字は持ってこられない、と知る。
これで、私の中での、原因は解決した、という気になりました。
しかし、おそらく、私が最初に識別子についてのエラーが出ているなんて書いたので、「そのへんについて理解できていないでしょ? エラー表示の意味わかってないでしょ?」という意味のご指摘であるなら、まったくそのとおりです。
ただ、とりあえず、数字は数値として使う、それがルール、という点についてなら、私は納得がいっているつもりです。
銀行の窓口の呼び出し番号まで引き合いに出したのはまずかったようで、というか余計な混乱を招いたようで、入金額とか、その他の情報まで連結しては考えていませんでした。それだけに不用意なたとえだったと思います。
ただ、私の考えとしては、別に言語仕様をどうしろ、みたいな話ではないです。
初心者としては、何も知らないながらにランダムちっくなプログラムとかを実現できると、なんだか、やたらと自由な気分になれるんです。それだけに、知識もスキルもある方からするならば、そのやり方が極めて狭い、制限的なように見えているのだと思います。
でもそれは広く知っているからで、何も知識を持たない人間のレベルで考えてみると、自由を求めてのアプローチになってしまうという(笑)。
しかし、どうやら数値を変数として使おうとしているところに無理があったらしい。このように理解しています。回答を見た限り、ひょっとしたら、もう少し先というか、もう少し掘り下げたところをおっしゃっているのかもしれませんが、それはその、私の呈している疑問について皆さんが。ただ、私が自分のした質問について認識しているのは、上で書いた程度の疑問で止まっているかと思います。
数字は数値。変数としては使えないんだな。これが私の理解と納得のすべてです。
「違うんだよ、違うんだよ、そこがさあ、分かっていないんだよ、もっと、こう」というお話でしたら、長々と読ませた挙句、申し訳ないところですが。
こう書くと、ますます回答者の皆さんはもどかしい気持ちになるかもしれませんが。
投稿者 るしぇ  (社会人)
投稿日時
2009/10/24 04:10:14
数字を変数にする発想(アイデア)のほうは問題ないと思うんですよ。
実際問題、配列に Index 指定とか数値で管理している部分も多々あるのですから。
なぜ識別できなくなっているのか?その原因を把握できていないでしょう?
だから論点がズレています。今、問題なのは、プログラムコード上で数値をそのまま
書けるという仕様があることです。そこで変数名も同じパターンを許すから識別
できないのです。
人間が識別できないってことは、コンピュータはもっと識別できないってことです。
プログラムコードは只のテキストデータであり、文字列以外のデータを持って
いないわけです。それを区別できないと言っているのです。
> タナカイッキさんと呼ぶより、1番のお客さま、と呼ぶほうが簡単であるように
例として合っていません。お客さまとかいう情報はありません。番とかいう情報も
ありません。タナカイッキさんが1。入金額も1。で、1の口座に1を入金してって
言おうとしているのでしょう?まぁ、ですがこれなら前後関係でまだ理解できる
可能性はあります。
ところが、実データの1も同じ形式で変数1に入ります。つまり名前が1のお客さま
が来た場合です。1という名前では想像できませんか?じゃあ、系列銀行のNo.1支店
が入金したとしましょう。1の口座に1を入金してって言われたら、この1は
タナカイッキさんなんですか?No.1支店なんですか?
それが区別できませんと言っているに過ぎません。
> しかし、多様な計算式や数字を繰り返し用いるプログラムではなくて、
> 用意した複数のメッセージをランダムに返すだけなら、基本的に数字は
> そんなに大事に扱われる必要がない。そんな気がしたのです。
プログラムの内容によってルールを変えると言っていますか?
それとも、特定の機能しかプログラムできないようにしようと言っていますか?
どちらも今よりできることに制限が掛かり、不便になるような気がします。
初心者だからではなく、問題の原因を把握してそれに応じた解決策を出すという
訓練を、掲示板で回答者から回答を得てしまうことで怠っているのが問題なのでは?
実際問題、配列に Index 指定とか数値で管理している部分も多々あるのですから。
なぜ識別できなくなっているのか?その原因を把握できていないでしょう?
だから論点がズレています。今、問題なのは、プログラムコード上で数値をそのまま
書けるという仕様があることです。そこで変数名も同じパターンを許すから識別
できないのです。
人間が識別できないってことは、コンピュータはもっと識別できないってことです。
プログラムコードは只のテキストデータであり、文字列以外のデータを持って
いないわけです。それを区別できないと言っているのです。
> タナカイッキさんと呼ぶより、1番のお客さま、と呼ぶほうが簡単であるように
例として合っていません。お客さまとかいう情報はありません。番とかいう情報も
ありません。タナカイッキさんが1。入金額も1。で、1の口座に1を入金してって
言おうとしているのでしょう?まぁ、ですがこれなら前後関係でまだ理解できる
可能性はあります。
ところが、実データの1も同じ形式で変数1に入ります。つまり名前が1のお客さま
が来た場合です。1という名前では想像できませんか?じゃあ、系列銀行のNo.1支店
が入金したとしましょう。1の口座に1を入金してって言われたら、この1は
タナカイッキさんなんですか?No.1支店なんですか?
それが区別できませんと言っているに過ぎません。
> しかし、多様な計算式や数字を繰り返し用いるプログラムではなくて、
> 用意した複数のメッセージをランダムに返すだけなら、基本的に数字は
> そんなに大事に扱われる必要がない。そんな気がしたのです。
プログラムの内容によってルールを変えると言っていますか?
それとも、特定の機能しかプログラムできないようにしようと言っていますか?
どちらも今よりできることに制限が掛かり、不便になるような気がします。
初心者だからではなく、問題の原因を把握してそれに応じた解決策を出すという
訓練を、掲示板で回答者から回答を得てしまうことで怠っているのが問題なのでは?
投稿者 daive  (社会人)
投稿日時
2009/10/24 03:54:30
>正統なプログラムの世界では明らかに不正手段なのでしょうが
正統とか、非正統とかでなくて、
ただたんに、今使っている、プログラミング言語上の制約です。
>結局、変数名に数字が使えないので、何を言ったところで仕方ないですが、
>数字に他の情報を代入する、割り当てる、という考え方は必ずしも非論理的ではない気がしますし、
>とすると非プログラミング的でもない気が個人的はしています。
それは、それで、個人的には、違和感はありません。
ただ、それを、制約なり、仕様がある、プログラミング言語上で、
制約、仕様を知らないか、考え違いをしていたか、無視して、行おうという所で、
つまずいただけです。
→多かれ少なかれ、誰しも、違ったパターンで、遣って来ている事かと。
(生まれながらに、最初から、プログラムが書けたわけではありませんので。)
'
今回の件を実現するには、
?-? さんの書込みの様にするのが、
簡単なところではないでしょうか?
正統とか、非正統とかでなくて、
ただたんに、今使っている、プログラミング言語上の制約です。
>結局、変数名に数字が使えないので、何を言ったところで仕方ないですが、
>数字に他の情報を代入する、割り当てる、という考え方は必ずしも非論理的ではない気がしますし、
>とすると非プログラミング的でもない気が個人的はしています。
それは、それで、個人的には、違和感はありません。
ただ、それを、制約なり、仕様がある、プログラミング言語上で、
制約、仕様を知らないか、考え違いをしていたか、無視して、行おうという所で、
つまずいただけです。
→多かれ少なかれ、誰しも、違ったパターンで、遣って来ている事かと。
(生まれながらに、最初から、プログラムが書けたわけではありませんので。)
'
今回の件を実現するには、
?-? さんの書込みの様にするのが、
簡単なところではないでしょうか?
投稿者 いんでくさ  (社会人)
投稿日時
2009/10/24 03:14:06
>いろいろとやるのはいいのですが、一度、ここの講座を一通り見て試してから質問したらいかがでしょうか?
そうなんですけれども、ついつい利用させてもらっちゃうんですね。
「この質問、ちょっとかんべんして」
という場合はスルーしてください。確かに皆さんの貴重なお時間を割くまでの質問はできないですし、にもかかわらず、初心者も歓迎というこのサイトのスタンスに明らかに甘えてしまうタイプだと思います。だって、本当に便利ですし、見つけたときは飛び上がるぐらいでしたもん(笑)
>今回のような質問をして恥をかかないで済んだと思います。
そんなところまで親切にありがとうございます。
でも正直、こういうことで恥をかくのは私はわりと慣れているんで。
(だからこそ、それが周囲としては厄介だっていうところでしょうが)
ただ、私の中では、何気にかなり良いアイデアだと最初は思ったんです。
これは無知のなされるわざだと思いますが、素で良い思いました。(笑)
確かに数字と変数名を同じく扱えば、開発者自身、混乱するのは明らかでしょう。
たとえば預金の利率計算の式などを同じプログラム内に書くとかでしたら。
しかし、多様な計算式や数字を繰り返し用いるプログラムではなくて、
用意した複数のメッセージをランダムに返すだけなら、基本的に数字はそんなに大事に扱われる必要がない。そんな気がしたのです。
いわば各メッセージ文の短縮、物語の本文に対するタイトル、ウィリアムズ・ヘンリー・ゲイツ・3世をただビルと呼ぶ、みたいなもんかなと思ったんです。
銀行の窓口の呼出し番号みたいなものかなと。
タナカイッキさんと呼ぶより、1番のお客さま、と呼ぶほうが簡単であるように、また、本当はタナカカズキさんだった、みたいな間違いになるより合理的であるように。
ですので、数字を変数名として利用することは確かに正統なプログラムの世界では明らかに不正手段なのでしょうが、もっと単純にというか、結局は生活者の視点でしかないでしょうが、例えば裏側に百人一首の一句が長々と書かれたカードの表に、その一句の作品番号を割り当てているようなつもりでの考えると、そんなに非常識かなあという気がしています。
結局、変数名に数字が使えないので、何を言ったところで仕方ないですが、数字に他の情報を代入する、割り当てる、という考え方は必ずしも非論理的ではない気がしますし、とすると非プログラミング的でもない気が個人的はしています。
投稿者 るしぇ  (社会人)
投稿日時
2009/10/24 02:22:03
> 変数名の頭に数字は持ってこないっていうのは常識なんでしょうね。
まあでも知る人ぞ知るって感じですね。公式の文章でも"任意の名前"を付けられるとか平気で
書いてる場合はあります。
が、数字のみや数字を先頭にした識別子を使った為に不具合が出るという事例もあります。
全角半角で違ったりもしますね。全角の方が安全かと思いきや、全角のみエラーが出たりね。
http://support.microsoft.com/kb/932994/JA/
そもそも名詞の先頭に数字って発想が無いのかもね。
まあでも知る人ぞ知るって感じですね。公式の文章でも"任意の名前"を付けられるとか平気で
書いてる場合はあります。
が、数字のみや数字を先頭にした識別子を使った為に不具合が出るという事例もあります。
全角半角で違ったりもしますね。全角の方が安全かと思いきや、全角のみエラーが出たりね。
http://support.microsoft.com/kb/932994/JA/
そもそも名詞の先頭に数字って発想が無いのかもね。
投稿者 ?-?  (その他)
投稿日時
2009/10/24 02:17:07
あの、今回の質問を見ると、やっぱり、いんでくささんは初心者と見受けられました。
いろいろとやるのはいいのですが、一度、ここの講座を一通り見て試してから質問したらいかがでしょうか?
きちんと講座を見ていれば、今回のような質問をして恥をかかないで済んだと思います。
いろいろとやるのはいいのですが、一度、ここの講座を一通り見て試してから質問したらいかがでしょうか?
きちんと講座を見ていれば、今回のような質問をして恥をかかないで済んだと思います。
投稿者 るしぇ  (社会人)
投稿日時
2009/10/24 02:08:25
変数の先頭に数字を使おうとした人は過去居ましたが、数字そのものを使おうとした人を見たのは初めてです。
> どうにも識別子が必要とかで
[識別子が必要です。]
http://msdn.microsoft.com/ja-jp/library/cf3kzcs0.aspx
要素名として認識できない。
数字そのものを書けば、人間が見ても認識できないと思いますが、そう考えずに質問するという行動に
正直ついていけていません。
> どうにも識別子が必要とかで
[識別子が必要です。]
http://msdn.microsoft.com/ja-jp/library/cf3kzcs0.aspx
要素名として認識できない。
数字そのものを書けば、人間が見ても認識できないと思いますが、そう考えずに質問するという行動に
正直ついていけていません。
投稿者 いんでくさ  (社会人)
投稿日時
2009/10/24 01:59:40
ちなみに他の言語でも、変数名の頭に数字は持ってこないっていうのは常識なんでしょうね。確かにどれが数字が変数か分からなくなりますもんね。
投稿者 いんでくさ  (社会人)
投稿日時
2009/10/24 01:57:49
変数名の頭に数字、使用できなかったのですね。
投稿者 るしぇ  (社会人)
投稿日時
2009/10/24 01:49:34
Dim 1 As Integer
1 = 1 - 1
数字と変数の区別ができなくて困りそうですね。。。
[Visual Basic の名前付け規則]
http://msdn.microsoft.com/ja-jp/library/0b283bse.aspx
>Visual Basic アプリケーションの要素に名前を付ける場合は、最初の文字を英字、
>漢字、ひらがな、カタカナ、アンダースコア (_) のいずれかにする必要があります。
1 = 1 - 1
数字と変数の区別ができなくて困りそうですね。。。
[Visual Basic の名前付け規則]
http://msdn.microsoft.com/ja-jp/library/0b283bse.aspx
>Visual Basic アプリケーションの要素に名前を付ける場合は、最初の文字を英字、
>漢字、ひらがな、カタカナ、アンダースコア (_) のいずれかにする必要があります。
投稿者 ?-?  (その他)
投稿日時
2009/10/24 01:47:07
変数名の頭に数字って使えましたっけ?
やりたい事を実現するのに、配列というのを使うのも手ですよ。
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard27.htm
Dim MessStr(6) As String
MessStr(1) = "こんにちは、数あるメッセージのうちの1つにすぎません"
・
・
・
・
'Rndで取得した数値をiとすると・・・
'MessStr(i)で取得できるので
MsgBox(MessStr(i))
ってね。
やりたい事を実現するのに、配列というのを使うのも手ですよ。
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard27.htm
Dim MessStr(6) As String
MessStr(1) = "こんにちは、数あるメッセージのうちの1つにすぎません"
・
・
・
・
'Rndで取得した数値をiとすると・・・
'MessStr(i)で取得できるので
MsgBox(MessStr(i))
ってね。
投稿者 いんでくさ  (社会人)
投稿日時
2009/10/24 01:21:02
手元の資料のサンプルコードで、乱数に取り組んでいるところです。
そこではサイコロの目を事例として、私は初見ですが、よくある説明文、よくあるサンプルなのかもしれません。
Math.Floorを使用して、ランダム関数によって返される値を整数化し、Rnd()そのものには6をかけて、さらに+1として、実現しています。「未満」というのがポイントかのかなあと、個人的には、うなりながら読み進めていますが。。。。(笑)
私はいつもサンプルを少し変更するだけという学び方をしているのですが、このサンプル・コードに関しては、ちょっと不相応な変更にチャレンジしたようで、ちょっと質問させてほしいのです。
せっかく数字の1~6までをランダムで出せるようになったわけですから、この1~6までの数字に何かセリフを割り当てて、ボタンを押すごとに、6種類のメッセージがランダムに表示される、というプログラムにしようと思いつきました。
そこで単純な私は、この数字の1~6までを変数名にして、そこに各々、何らかのメッセージを代入しようとしたのですが、ボタンクリックイベントのハンドラ内に、例えば、
Dim 1 As Integer
1 = "こんにちは、数あるメッセージのうちの1つにすぎません"
2 = "全部で何種類あるかなんて、知ろうとしないことが正解ですよ"
3 = "やれやれ、まさかすべてのメッセージを確かめようという気ではないでしょうね"
4 = "とても正気とは思えない"
5 = "でもね、それが、アナタの、い~いト・コ・ロ♪"
6 = "えっ? 何? このメッセージより先にオチが表示されてしまったって?"
この後にRnd()を使えば、意図しているところを実現できるかなと思っていたのですが、どうにも識別子が必要とかで、ちょっと分からないことになっています。構文的にもエラーですよと指摘されています。なんとかVBからのご指摘を克服したいのですが、どうすればよいのでしょうか。
そこではサイコロの目を事例として、私は初見ですが、よくある説明文、よくあるサンプルなのかもしれません。
Math.Floorを使用して、ランダム関数によって返される値を整数化し、Rnd()そのものには6をかけて、さらに+1として、実現しています。「未満」というのがポイントかのかなあと、個人的には、うなりながら読み進めていますが。。。。(笑)
私はいつもサンプルを少し変更するだけという学び方をしているのですが、このサンプル・コードに関しては、ちょっと不相応な変更にチャレンジしたようで、ちょっと質問させてほしいのです。
せっかく数字の1~6までをランダムで出せるようになったわけですから、この1~6までの数字に何かセリフを割り当てて、ボタンを押すごとに、6種類のメッセージがランダムに表示される、というプログラムにしようと思いつきました。
そこで単純な私は、この数字の1~6までを変数名にして、そこに各々、何らかのメッセージを代入しようとしたのですが、ボタンクリックイベントのハンドラ内に、例えば、
Dim 1 As Integer
1 = "こんにちは、数あるメッセージのうちの1つにすぎません"
2 = "全部で何種類あるかなんて、知ろうとしないことが正解ですよ"
3 = "やれやれ、まさかすべてのメッセージを確かめようという気ではないでしょうね"
4 = "とても正気とは思えない"
5 = "でもね、それが、アナタの、い~いト・コ・ロ♪"
6 = "えっ? 何? このメッセージより先にオチが表示されてしまったって?"
この後にRnd()を使えば、意図しているところを実現できるかなと思っていたのですが、どうにも識別子が必要とかで、ちょっと分からないことになっています。構文的にもエラーですよと指摘されています。なんとかVBからのご指摘を克服したいのですが、どうすればよいのでしょうか。