プログラミングBASIC言語について。
■ このスレッドは過去ログ倉庫に格納されています
古い数学Bで、プログラミングのBASIC言語の教科書や参考書を持っている方がいましたら、少しずつで、いいので、用語の解説と用語と文法をわかりやすく教えていただけると幸いなのですが。すみません。教えていただけると幸いなのですが。 ネットで探せばいくらでもあるんじゃないですか てか数学なんですかねそれ 選択問題で、あるのですが、数学Bの教科書や参考書に載っている用語を詳しく解説 したものがあまり良いものがないのです。何か知っていることはありませんか? センターも新しくなるみたいですし、プログラムの項目ってまだあるんですかね 調べた方が良いですよちゃんと ググれば出てきますよ ここよりもわかりやすいいろんなサイトがあります こういう所は、何が分からないか具体的に聞かないとダメだよなあ わからないってかそもそも何も知らないんじゃないですか? 入門用のサイトなり書籍なんていくらでもあると思いますけどね マイナー言語ならまだしもBASICならそれこそ 例えば、どんなサイトですか?教えていただけると幸いです。数学Bのプログラミング言語BASIC言語では、これで十分っていうサイトを。教えていただけると幸いです。すみません。書籍は、今、どこの本屋さんでも売っている数学のBASIC言語の本 はありますかね?教えていただけると幸いです。 今確認しましたけど、やっぱり今年のセンターからはプログラミングが範囲から消えてましたよ センターの対策としてプログラミングを勉強したいということならば、もっとちゃんと入試について調べた方が良いと思います http://www.greenowl5.com/gprogram/basic/basic1_010.html ただBASICについて知りたいならこういうサイトとか本がゴロゴロ転がってますから自分にあったの見つけましょう これはオススメとかじゃなくて検索の一番上に出てきたの拾ってきただけですけど 数学Bなら大人しく数列ベクトル選らんどけって思いますけどねー DEF文について、載っているところは、知りませんか?教えていただけると幸いなのですが。すみません。 自分で調べた結果をまとめる訳でもなく、教えてもらったものを書くのでもなく、知っていることを書くのでもなく、ただ教えてくれっていうようじゃ、学ぶの不可能でしょ。 ここを参考にBASIC言語のプログラムを作っていただきたいのです。すみません。 https://6900.teacup.com/cgu135/bbs BASICで何がしたいのかが不明 例えば 「ニュートン法で√2の近似値を求めるプログラムを作ったのですが正しく動きません どこが間違っているか指摘してもらえませんか」 といってソースを示すならともかくただ作って下さいとか それに数学板じゃなく別の板で質問すべきだろ >>19 まずは日本語と論理の勉強からするべきではないか? 支離滅裂すぎてプログラミングが出来るとは思えないぞ。 【DEF文】 極普通の古いBASIC、懐かしい せっかくなので、簡単なBASICなら 教えたくなった。 BASICのDEF文は使ったことは あまりない。けど、 10 DEF F(X)=X^2 20 LET X=10 30 PRINT F(X) を実行すれば100と表示されると思う ちなみに、 10 PRINT 10^2 を実行しても100と表示されるかと あの、ありがとうございます。それで、繰り返し処理のところで例10のSTEP増分 が、なぜ、STEP2がつかないのでしょうか?教えていただけると幸いなのですが。すみません。 あの、なぜ変数名は、X、ABC、PIのように、アルファベット1文字と数字の列で表せるというのは、どういうことでしょうか?教えていただけると幸いなのですが。すみません。 向こうの掲示板で怒られているような…w それに例10なんてないぞ? 変数名だけど、ABCとかPIはアルファベット1文字じゃないけど? 例10は、初項2、公差3の等差数列の10項まで求めるというものです。 これで、STEP2を使わないのはどうしてでしょうか?教えていただけると幸いなのですが。すみません。 すみません。なぜ、変数名は、アルファベット1文字で始まる文字と数字の列で表す。(X、ABC、P1)これは、なぜ、変数名になるのでしょうか?教えていただけると幸いなのですが。すみません。 まず回答をもらってるんですから、それに答えたらどうなんですか?? >>21 とか>>26 とか質問に答えましょうよ、まずは 論理的に質問しよう! いや、ほんと、何言ってるのかわからん。 >>27 多分、等差数列の「和」だと判断して… S=0 : FOR I=29 TO 2 STEP 3 : S=S+I : NEXT : PRINT "結果=";S こんな感じ? STEP 2 だと、2ずつ変数が増加するから、公比 3 と合わないよ? >>28 それが、そのBASIC の文法だから。 >>19 望む答えではないが、 内容を拝見してみた。 絶対値(ABS命令)のご質問 大変興味深い質問である。 質問) 絶対値(ABS命令)は不要か? 回答) 必要。 ダメな例 -10の3乗根 【解説】 文「実数bと実数aの誤差がε未満」を 数式表すのに、 ✕ a - b < ε とか、 ✕ b < a + ε ではダメ ○ a - ε < b < a + ε です。故に ○ |b - a|< ε です。また、 ○ |a - b|< ε でも良い 【考察】 「bとaの誤差がε未満」と 「bとaの差がε未満」は違う 等差数列の第10項を求めるのです。第1項から第10項までを求めるプログラムです。それで、なぜ、STEP2ががないのでしょうか?教えていただけると幸いなのですが。すみません。 さらりと代わりに答えちゃう もし、初項2 公差3 ではなく、 初項3 公差2の 等差数列なら 極めて素朴にプログラミングすると 10 PRINT 3 20 PRINT 3+2 30 PRINT 3+2+2 40 PRINT 3+2+2+2 50 PRINT 3+2+2+2+2 … 100 PRINT 3+2+2+2+2+2+2+2+2+2 FOR〜NEXT でSTEPを使用しないなら 10 FOR N = 1 TO 10 20 PRINT 3 + 2 * (N - 1) 30 NEXT N FOR〜NEXT でSTEPを使用しなら 10 FOR N = 0 TO 19 STEP 2 20 PRINT 3 + N 30 NEXT N BASICって文末にセミコロンはいらないんだっけ? BASIC言語は、C言語でない。然るに 構文終了を意味する面倒な セミコロン ; は不要 そもそもシンタックスエラーになるか それに改行してれば、そんなの不要 とはいえ、 マルチステートメントを多用する 超上級者なら、: を多用も時にある。 行儀悪いと言われようがキニシナイ そうだ、思い出した。 BASICにもセミコロン ; を使える と言ってもC言語とは全然違う BASICのPRINT命令のセミコロン; は、改行しない。命令だ。即ち、 10 PRINT "I am "; 20 PRINT "TENSAI " なら、 I am TENSAI と画面に表示される。 セミコロンつけないと、つまり 10 PRINT "I am " 20 PRINT "TENSAI " なら、 I am TENSAI と画面に表示される。 >>28 の答えは超難解であるが… 有能プログラマは、何故か直感で判る 【ご質問内容】 なんで変数名かがワカラナイです。で X、ABC、P1は変数名みたい。何で? 【回答】 変数名かの判断、BASICが自動判断は 仕組難解 故に直感でマスタで善い。 しかも直感だから、瞬時に判断出来る 人間の直感はスゴイ。 でも納得できないですよね ワタシの方法 ・予約語以外、全部変数名ぽぃ ・全予約語は丸暗記不可能だけど 主要な予約語だけ暗記で後は直感 ・2文字なら例えばP1は、変数名 例外は、IFぐらいだろぅ ・ダブルコーテーション " で囲まれたら変数名ではない。 例えば、"P1"は、変数名ではない。 かなり適当なこと書いたけど仕方ない 変数名かの判定は難解だし、仕方ない いつの間にか直感でマスタできる。 直感だから、楽ちんである。 もういまさらBASICなんて勉強する気にもならないけど、一応BASICにもなんか公認規格のようなものはあるんだろうな。 今度導入される共通テストのプログラミング言語ってBASICじゃないよね? なんか本当に入門書買ったほうがいいんじゃないですか? てかちゃんとパソコン使ってコード打ち込んでますか? 試しながらやらないとプログラミングなんて意味ないと思うんですけど 頭の中でだけやってるから=が等しいの意味なんじゃないかなんて有り得ない質問が起こるわけですよね >>41 LET文を省略できるBASICにおいて、 S = A * B の意味合いは、 正「A × B の値をSに代入」 誤「A × B の値とSは等しい」 でも勿論、S = A * B 実行後なら 「A × B の値をSに代入」したのだから 「A × B の値とSは等しく」なる。 さらに、S = A * B が条件式の場合 いまの説明とは全く異なり、 誤「A × B の値をSに代入」 正「A × B とSは等しいか」 となる。 そうですね、 10 S = 9 : A = 2 : B = 5 20 IF S = A * B THEN PRINT "Ooo" 30 PRINT S 40 ' 50 S = A * B 60 IF S = A * B THEN PRINT "Yyy" 70 PRINT S の実行結果が 9 Yyy 10 だと思えるなら、恐らく完璧ですよ 後半の、そうですね、の以下の文章がわかりません。教えていただけると幸いなのですが。すみません。 LET文を省略しないで、教えていただけると幸いなのですが。すみません。左辺=右辺とならない理由はなんなのでしょうか?もう少し説明を簡単にしていただきたいのです。すみません。教えていただけると幸いなのですが。 BASIC の 「左辺=右辺」という文は、数学と違って、左辺の変数に右辺の結果を代入するって意味だからな。 そこを混乱する人もいる。 >>45 まず、そのプログラムを自分で入力、実行してみたか? >>46 数学と同じだよ。 Put b=3. と If b=2, then b is even. では等号の意味が違う。 >>40 知らんが、BASICじゃないの? 何を導入しても、彼らが就職する頃には時代遅れの言語になっているはず。 それなら、一番簡単な教育用の BASICで良いんじゃ無いの? つーか、大阪書院の javascript を使った教科書を見たが、地獄だったぞ。 他のHTMLタグが丸見えで、幾ら無視しろと言ってもそれは不可能だろ。 あれじゃ初心者は分からん。 >>48 LET B=3 だな。数学と同じなら「B+4=2+A」という表現もできなきゃおかしい。 >>49 いや、一時期センター試験用のなんか日本語でプログラミングができる言語が開発されてそれ使ってた時期あったんじゃなかったっけ? それを再利用するのかどうかはしらんけど。 できる言語もありますよ Haskellとかはn+kパターンとかいうのがありました 今はもうないみたいですけど >>51 ぴゅー太の日本語BASICかな? かえって面倒なことになるような。 日本語FORTHとか、MINDなら日本語にする意味はあるけど、今の主流のプログラム言語とは 全く系統が違っていて、後で混乱するような。 こういうのも黒板でやるの前提だから日本語のわけわからない新言語作るわけですよね おお!初心者が混乱する代入が「←」だw APLみたいだ。関数も日本語だし、成御構文も日本語か。 面白そう。 >>56 どうせ何で教えても時代遅れになるのだから、徹底的に簡単にするのは良いコト。 パソコンでコーディングしないということが問題だと思うんですけど DNCLはブラウザ上でも実行できるみたいだよ。 ラズベリーパイ + キーボード + マウス + 液晶で実行環境が2万円でできる! フリーのBASICのインタプリタをどこかからダウンロードすればいいだけ ソースコードを自分で入力する あちこち数値やコマンドを変えると実行結果がどう変わるか実験しながら覚える 本眺めているだけではダメだろ それにしても何で今更BASICなんだ? 去年のセンターの問題みたらDNCLの問題でてる。 なんかニヤけた。 https://www.dnc.ac.jp/albums/abm.php?f=abm00036460.pdf& ;n=k+23+jouhoukankeikiso.pdf >>61 言語は何でも良いだろ?どうせどんな言語をやっても就職時には時代遅れだ。 むかしはパソコン=N88BASICだったから仕方ないけど 今さらやらんでも・・・。 >>64 How many files(0-15)? >>64 いかに教育用コンピューター言語の開発をサボっていたかの証左かと。 プログラミングは、教育用というより デバッグする怪しげな娯楽なのです。 >>68 じゃ、高校教育からプログラムを追い出すべきかもね。 高校生が理解できんから。 >>70 そんな事は言ってないだろ わざわざ教育用の言語作る必要ないって言ってるんだよ >>71 簡単なのがないとそもそも、扱えないだろ。高校で教えられない。 高校で javascriptを扱った教科書見たが、冗談かと思うくらい初心者に不親切そうな内容だった。 pascalもいいが、BASIC以上に現場では使われていないだろ。だったら、より簡単な方が良い。 >>74 じゃあBASICでいいだろ この言語だって元々は初心者向けの言語だし 新しく教育用言語作ったってそれこそ現場じゃ使わないだろw 初項2公差3の等差数列の10項の番号とその値を求めたいというプログラミングのBASICが、わかりません。 なぜ、STEP3がつかないのでしょうか?また、行120はどういう意味でしょうか? また、例10のプログラムの仕組みを教えていただけると幸いなのですが。すみません。 >>76 >なぜ、STEP3がつかないのでしょうか? For Next文で増やしてる変数Iは項の番号 だから増えるのは1ずつ 考えような 脳みそあるんだろ? >>76 >また、行120はどういう意味でしょうか? PRINT文だろ? この場合、I(項の番号)とA(項の値)を画面に印字する いや、>>76 の頭の中に脳は存在しない。 脳は脳でもNothingのNo! >>76 ちゃんと教科書読めよ A=A+3って書いてあるだろ 元のAに3加えたものをAに代入する これを10回繰り返す 数列の漸化式だと a[n+1]=a[n]+3 の計算を10回繰り返すのと同じ 最終的にAには第11項の値が代入されてるがFOR〜NEXTのループから抜けるから画面には表示されない たった6行の簡単なコードが分からないならプログラミングは諦めろ step 増分 を指定しないと、増分は1と自動的に見なされる。 それを利用した。 120 PRINT I;A とは、変数の I の後に直ぐ A を表示せよという命令 1 2 2 5 3 8 4 10 … こんな感じに表示される 数学板に数学以外の話して おまえら数学の愛情なさすぎだし 数学の権威を利用してわるふざけして数学板を潰して 結局自分の遊び場を自ら破壊してる おとなしく該当板に行けクソガキ スマホでも使えるインタプリタあるみたい。 やっぱり使いながらでないと覚えられないと思う。 > A=A+3 って書いてあるだろ > 元の A に 3 加えたものを A に代入する 知恵袋や okwave でさんざん説明されているのに、頭に脳が存在しないからわからないのだ(笑)。 BASIC では代入演算子と関係演算子に同じ = を使うから、確かに最初面食らうところであろう。 だから Jis-FullBasic 誤解をまねかないように代入演算子では LET A=A+3 のように LET が必須なのだが、実際の処理系、たとえば十進 BASIC では A=A+3 とコーディングしてもプログラムを走らせるとき自動的に LET を親切に補ってくれるので、本当の BASIC 初心者はさらに戸惑うだろう。 > やっぱり使いながらでないと覚えられないと思う。 その通り。プログラミングは習うことも大事だが慣れることも同じくらい大事。とにかくフリーの BASIC 入手して遊び感覚でマスターしたほうがよい。 > だから Jis-FullBasic 誤解をまねかないように代入演算子では 訂正 だから Jis-FullBasic の規格では、誤解をまねかないように代入演算子では A=A+3 って初心者には誤解を招く表現だよね。 初心者に特化したはずの BASIC で選択すべきでは無かった。まあ、元々は LET A=A+3 で誤解は少なかったのだが、誰かが「LET」を外した訳だ。 APL みたいに「A←A+3」とか、一部処理系の「A:=A+3」みたいな表現が親切だったはず。 キチガイ、他板逝けや、汚い文字の羅列を垂れ流すな プログラミングなんか数学ではない 高校数学は専用隔離スレッドのみでやるか受験板でやれ >>87 汚い汚い、何の美しさもない煩雑な些末な事実の指摘 >>76 >>77 画像がぼやけてよく分かんないけど もし、公差が3なら、単なるミスプリ 【誤】130 LET A = A + 1 【正】130 LET A = A + 3 でしょう なおSTEP 3は不要と考えます。 専門的な話になりますが、 プログラム製造工程では、 プログラムミスは多数発生し、 デバッグという作業が大半を占めます なお、仮にSTEP 3と修正したら デグレ(デグレード)発生です。 まぁ、プログラムミスというより 単なるタイプミスでしょう 机上でそれを発見されたようですから かなり高い素養をお持ちと思われます > 机上でそれを発見されたようですから > かなり高い素養をお持ちと思われます wwwwwwwwwwwwwwwwwwwww >>73 >>89 A=A+1 には命令文なのに、その肝心の命令が無い。そして、判断文でも成御構文でもない。 LET を入れると命令文だとはっきり分かり、文法的にはすっきりする。 >>90 ミスプリじゃねえよ お前の目がぼやけてるんだろジジイ (^^)/ これ、オモシロイ 目は、ぼやけてないよ。 網膜に映った像がぼやけてるのである 目ではなく、像がぼやけてるんですよ 時々、思うのだが情報処理系の人々の 中には、一部論理が破綻してて その一部が目立っちゃうん。 それ以前に、日本語自体が一見 正常なように見えて、支離滅裂なので 仕方ない。 デバッグレビューは楽しいな ルンルン あっそうだ。 ミスプリ xor プロミスだから、 プロミス となるのか それぢゃ可愛そう。 ミスプリでいいぢゃん ○社の○88-BASICのMANUALぢゃが、 MANUALでもREFERENCEぢゃ! LETステートメントの解説ぢゃが、 ・LETなくても、かまわん (☆キリッ) ・値の代入、等号だけでよいですぅ〜 って感じで、記載されてた。 だから、素晴らしいと思われます。 単に、A=A+1なら、代入文で善いです モチロン論理式ではない。 理由はワカラナイ。だがしかし、 manual観なくても、直感で分かる。 しかも、BASICという高級言語は ワイのような【キチガイ】でも、 瞬時に直感で分かっちゃうんですぅ。 LET命令とか、←とか、:= とか、 あるいは判断文は、== しろとか を採用してるような言語はダメだ。 余計だから、見づらい。 でぇ、だから、○88-BASIC素晴らしい 数学みたいに参照透過性成り立たせたいっての突き詰めてくと結局関数型言語になるんですよね どうでもいい話だが、 通常BASICは代入はLET文は、省略OK なお、あるBASIC入門書は、 「変数に、LETなしで代入OK」と解説 LET文必要派は、まさかと思うが 下記のプログラムは、 10と表示されると言い出しそうだ。 10 LET A=10 20 LET 39=A 30 PRINT 39 LET文なら何でも代入できるなどと、 勘違いするヤツらだ。形式的すぎる という訳でLET文は廃止すべきぢゃ と思ったけど、COBOL言語では、 LET文相当のCOMPUTE文が存在するぅ A=10 が判断か代入か ドッチ?は ワイのような超優秀な人間は直感で BASIC言語では、形式的に判断される BASIC作った方は、スゴい。 Aを指示なしでも変数と判断するし BASICスゴい。 BASICダイースキ♡ LET文の省略、ダイースキ♡ ┏━┓ ┏┓ ┏┓ ┗┓┃ ┃┃ ┏━━┛┗━┓ ┃┃ ┃┃ ┗━━┓┏━┛ ┃┃ ┃┃ ┃┃ ┃┃ ┃┃ ┃┃ ┃┃ ┃┃ ┏━━┛┗━┓ ┃┃ ┃┃ ┃┏━┓┏┓┃ ┏┛┗┓ ┃┗┓┃┗━┛┃┃┗┓ ┗━━┛ ┗━┛┗━━━┛┗━┛ ┏┓ ┏━━━━━━━━┓ ┏━━━━┛┗━━━━┓ ┃┏━━┓┏━━━┛ ┃┏━━━━━━━━━┛ ┃┗━━┛┗━━┓ ┃┃ ┏┓ ┏┓ ┃┏━━┓┏━━┛ ┃┗━━┛┗━┛┗━━┓ ┃┗━━┛┗━━┓ ┃┏━━┓┏━┓┏━┓┃ ┃┏━━┓┏━━┛ ┃┗━━┛┗━┛┗━┛┃ ┃┃ ┃┃ ┃┏━━━━━━━━━┛ ┃┗━━┛┗━━━━┓ ┃┃┏┓ ┏┓ ┏┓ ┗━━━━━━━━┓┃ ┃┃┃┗━━┓┃┗━┛┃ ┏┓┏┓┏┓┏━┓┃┃┏┛┃┃┏━━┛┃┏━━┛ ┃┃┃┃┃┃┃┏┛┃┃┃┏┛┃┃ ┏┓┃┃ ┏┓ ┏┛┃┃┃┃┃┗┛┏┛┃┃┃┏┛┗━┛┃┃┗━━┛┃ ┗━┛┗┛┗┛ ┗━┛┗┛┗━━━━┛┗━━━━┛ まぁいいけどLET文は有害 解説しよう COBOL言語では、 LET文相当のCOMPUTE文が存在するぅ 故に、LET文相当なので残念な言語だ なぜ、COMPUTE文を省略できないか 表向きは、COBOLは動詞が必要だとの 意味不明なイイワケだ。 COMPUTEは、計算せよという動詞で 動詞が省略できないから と宣う。 多分、本当は違うと思われます。 COBOLのIF ☆ THEN ★ END-IF.は、 あろうことかTHENが省略OKとなり、 IF ☆ ★ END-IF. でOKとなった。 ☆と★の区切りの判別に動詞が必要 でCOMPUTEという命令が追加された しかーし、 BASICは、THEN省略は、見送たようだ ワイの霊感だが、 THENにより☆と★区別、然るに ☆を条件式、★は条件式ぢゃないと 判別させてるぽぃ。然るかつ瞬時に ★はLET不要とワカる。 BASIC作った方は、スゴい。 BASICはTHEN省略見送り、スゴい。 BASICはLET文の省略継承、超賛成♡ なるほど >>1 は馬鹿だ これは 馬鹿を装ってレスを求める荒らしだ >>104 FORTRAN 時代から LET は省略可能だっただろ。 それじゃ実際混乱するから、初心者向けを標榜する BASIC では LET を付けた。 だが、「それいらなくね?」と考えた人が削除した。 C言語になると事態は複雑になる。 次のプログラムを見てくれ while((c = getchar() != EOF) if(c == 0x30) putchar(c); 以上のプログラムは、入力した文字列から、文字'0'(アスキーコード 0x30)だけを抽出し出力するプログラムだ。 制御構文の判断文の中に、代入文がある。C言語ではそれを許すわけだ。 このプログラムは次のようになっても動作する。 while((c = getchar() != EOF) if(c = 0x30) putchar(c); 上のプログラムは if 文の中は代入文になっている。だが、C言語としては文法的に正しい。 if 文の中で C に 0x30 を代入してお終いだ。 これはC言語の重大な構造欠陥で、今はワーニングが出るが昔はするっとチェックを通過した。 代入文を c:= getchar() とか c<- getchar() (構造体アクセスに使われている表現だが)にすると 幾分かマシだったはずだ。 >>109 「もし、BがXより大きいならば、BとXは等しい」で意味が通るなら数学の場合と同じなのかもね >>109 BASICの代入文は、あくまで等号の左の変数に右の式の値を代入するという意味です。 結果的に等しい値にはなるのですが,微妙に意味合いが違うかと。 IF 条件式 THEN 命令 において、条件式と命令では書けるものが異なる、という 点については理解されているでしょうか? ここが大事です。 LET X=B は条件式には書けないし、 B > X は命令には書けません。 これが理解できれば、テキストにある 「条件式で使う等号の意味は、代入文と異なり、数学の場合と同じである」 の意味もわかって、LET X=B がIF文に出てきてもその = は 数学とは違うのだ、ということも腑に落ちると思います。 という回答をもらっているではないか。さらにテキストの説明も 初心者向きで実に丁寧である。これでわかなければあきらめろ。 「BがXより大きく」で「BとXは等しい」 と解釈するのではなく 「BがXより大きいなら BとXは等しくさせるために、 BにXを代入する」 と思ったけど、いけねぇ〜 違うな 「BがXより大きいなら BとXは等しくさせるために、 XにBを代入する」だな。 日本語は、BASIC言語より難解だ >>117 具体的指摘もなしに何か言ってるつもりになってるガイジ >>120 >>114 を見て何も思わないのかよカス こんな簡単な条件文に何悩んでるだそれにBASICやる前に日本語勉強しろよクズ 例えばこれ ↓↓↓ >BとXは等しくさせるために、 マトモな日本語書けよアスペ >>121 何だ、いまさら2chで日本語能力に突っ込むアスペだったか アスペは本筋に関係ないどうでもいいような所が気になって仕方がないらしい 10 REM PRINT "2chじゃなくて5chな、と言い出すかな?" >>122 またまたアホ丸出しのガイジ >BとXは等しくさせるために、 これが「BとXを等しくさせるために、」 の誤記だとしても「等しくさせる」には色々意味あるだろが 「Bの値をXの値と等しくさせる」 と 「Xの値をBの値と等しくさせる」 をハッキリ区別しろよ 代入演算子の話をしてるんだから重要な話だろクズ >>123 >>114 に書いてあるんだが何か? お前は>>1 と同類なんだな 「BとXは等しくさせるために、 BにXを代入する」と「Bの値をXの値と等しくさせる」は 本質的に何が違うんだ? 「BとXは等しくさせるために、 XにBを代入する」と「Xの値をBの値と等しくさせる」は 本質的に何が違うんだ? 前者は「違う」と否定してあるのだが、お前が何をもって>>114 がハッキリ区別していないと 判断したのか俺には理解できない 「え?書いてあるだろ?」としか言えないのだが、お前や>>1 のような人間共通の「何か」が あるんだろうね ここオモシロイ、ガイジだらけ。 ポクより、マシだけど、で、 Letって英語を教えてあげる。 で、LET X=B を 超正しい日本語に訳してやると、 「XはBにしようゼェ」なのだ。 綺麗事ばかりの日本語に訳すから 本来の意味からずれるのです >>124 またまたアホ丸出し >>1 のように頭が悪い奴には正しくハッキリと日本語を書けと言ってるんだよボケ >>1 は「代入」って言葉がよく理解出来てないんだから「Bの値をXに等しくする」のか 「Xの値をBに等しくする」のか書けよクズ >>126 書いてあるだろw (まあ、お前にとっては>>112 なども日本語では無いのかもしれんが) お前も「頭が悪い奴」だから理解できなかったということだな そもそも「区別してあるが書き方が悪い」という指摘ならそういういい方にはならんよ >>>1 は「代入」って言葉がよく理解出来てないんだから 「IF文のところ」でという条件が全く考慮されていない。30点 >>1 は、「IF文」と「条件式」や、「条件式」と「命令」の区別が付いてないんだよw >のか書けよクズ お前は単に煽りたいだけで自分からは何もしないクズ そもそも>>1 は、プログラミング言語より、まず「やりたいこと」「やるべきこと」を アルゴリズムとして日本語なりフローチャートで書き出す練習をすべきだ 以下を理解していれば「数学の場合と同じ」かどうかなど気にないはず 100 2つの値を入力させ、AとBに格納する 110 とりあえず大きい方の数Xの値を入力値Aの値ということにしておく 120 もし、入力値BのがXの値より大きければ、大きい方の数Xの値を入力値Bの値で上書きする 130 大きい方の数Xの値を表示する 140 終わり >>127 またまたまたまたまたアホ丸出し そもそも俺は ID:XIh+u9Z6 = ID:QnlTHyeL がアホ丸出しって言ってるだよカス 煽りたいだけのアホはオマエだろクズが >>128 >がアホ丸出しって言ってるだよカス 「アホ丸出し」と言いまくっていまさら言い訳が通ると思ってるところがクズだな >煽りたいだけのアホはオマエだろクズが お前からは煽りだけで建設的意見など皆無だけどな 不毛なので役立たずの煽り野郎の相手はこれで終わりにする >>129 またまたまたまたまたアホ丸出し 敗北宣言かw クズ>>1 が我慢できずに正体を現してしまったでよろしいか 論理的な整合性は、勿論 BASIC言語 ≫ 日本語だ。それは置いて 【今どきのBASIC】 Dim A as Long IF LET A = 1 THEN MsgBox A はコンパイル時エラー、思った通りだ もしや、1などと表示かと思ったが 杞憂であった。 VBAコンパイラはワィと同様賢い Dim A as Long LET A = 1 : MsgBox A は実行時に、ちゃんと 1と表示 今のでもLET文使える。信じられん まっLET文なくても問題は皆無だ。 蛇足だが、 PRINT文は、サポートされてないから Msgbox関数とか、 Debug.Print メソッドという ものを利用しても善さそうだ。 そうだ、>>1 の愛読書の数学書の プログラムVBAに手入力して遊ぼうと思う 数値解析とか、あと統計処理とか なんかプログラム作るのオモシロイ 次のURL先https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q102162841... で、つまり、LET文は、命令文の時に使い、条件式には、数学記号しか使えないという決まりにした。ということでしょうか?教えていただけると幸いなのですが。すみません。 この質問に答えていただけないでしょうか? 教えていただけると幸いです。すみません。 THEN の後は、命令などが来る 何やら過去ログの質問と重なるが、あおりなんかが入っているから分からなかったかも知れん。 LET X=B ってのは数学とは違って、XにBの値を代入するという意味だ。 IF B>X THEN LET X=B 従ってというのは、変数 X には X と B と比較して、大きい方の数を入れるって意味。 133番の質問に答えていただけると幸いなのですが。もう少し詳しく教えていただけると幸いなのですが。すみません。 >>127 オマエが日本語で解説してるのに>>1 は全く理解してねえぞ オマエが最後まで>>1 の面倒みろよカス それが出来ないならさっさと消えろクズが 従ってというのは、とはどういことでしょうか?教えていただけると幸いなのですが。すみません。 >>139 改行ミスねw 従って IF B>X THEN LET X=B というのは、変数 X には X と B と比較して、大きい方の数を入れるって意味。 ホントはこう↑やりたかった訳w すみません。従ってというのは、どういう事でしょうか?でした。すみません。 133番の質問に答えていただけると幸いなのですが。すみません。 LET MK$ = "おま〇こ" !代入演算子 "おま〇こ" を MK$ という文字列を収容できる箱(変数)に入れなさい。 LET TP$ = "ちんぽ" !代入演算子 "ちんぽ" を TP$ という文字列を収容できる箱(変数)に入れなさい。 IF MK$ = TP$ THEN !関係演算子 MK$ と TP$(に収容した文字列)が等しければ PRINT "人類破滅" ELSE PRINT "人類安泰" END IF END LET 文の = は代入演算子 IF 文の = は関係演算子 まったく違う機能を = に与えているから、確かにわかりにくい。 関係演算子が数学における = に相当するが, まったく違う機能を = に与えているから、確かにわかりにくい。 一応、関係演算子が数学における = に相当するがそれは、IF文、DO〜LOOP文など条件を伴う命令といっしょに塚割るときに限る。単に A = 100 と書いたら、それは LET A = 100 と解釈される。 インデントしてないので見にくい。連投スマヌ。 LET MK$ = "おま〇こ" !代入演算子 "おま〇こ" を MK$ という文字列を収容できる箱(変数)に入れなさい。 LET TP$ = "ちんぽ" !代入演算子 "ちんぽ" を TP$ という文字列を収容できる箱(変数)に入れなさい。 IF MK$ = TP$ THEN !関係演算子 MK$ と TP$(に収容した文字列)が等しければ PRINT "人類破滅" ELSE PRINT "人類安泰" END IF END LET 文の = は代入演算子 IF 文の = は関係演算子 まったく違う機能を = に与えているから、確かにわかりにくい。 一応、関係演算子が数学における = に相当するがそれは、IF文、DO〜LOOP文など条件を伴う命令といっしょに塚割るときに限る。単に A = 100 と書いたら、それは LET A = 100 と解釈される。 すまん、すまん > IF文、DO〜LOOP文など条件を伴う命令といっしょに塚割るときに限る。 IF文、DO〜LOOP文など条件を伴う命令といっしょに使うときに限る。 >>133 >条件式には、数学記号しか使えないという決まりにした まあ、無理せず、単に「BASICではそう決めた」ということでリンク先の比較表を覚えればいいと思うぞ BASICは、等価演算子と代入演算子が同じ「=」なので不親切といえば不親切なんだろうね ちょっと説明すると、君の言う数学記号が何かは知らないが、要するに「条件式」とは「結果として真偽値を返す式」であり、 「0」「1」も立派な「条件式」だ ちなみに、「0」を「偽」、「0」以外を「真」、とする言語が多い 百聞は一見にしかず 君に足りないのは「実際に実行する」という行為だ 以下の3つのプログラムを実際に実行し、結果を報告してくれ 100 IF 0 THEN PRINT "真" ELSE PRINT "偽" 110 END 100 IF 10-50 THEN PRINT "真" ELSE PRINT "偽" 110 END 100 LET A=2 110 LET B=2=2 120 PRINT 2 130 PRINT 2=2 140 PRINT A 150 PRINT B 160 END なんでこんな物分かり悪い人がプログラミング独学でやろうとしてるんですか? テストもないならやらなくていいですよね テストあるなら先生に聞きましょう >>1 LET X = 1 FOR I = 1 TO 10 PRINT I;":";X LET X = X + 2 NEXT I を実行すると 1 : 1 2 : 3 3 : 5 4 : 7 5 : 9 6 : 11 7 : 13 8 : 15 9 : 17 10 : 19 LET X = 1 FOR I = 1 TO 10 STEP 2 PRINT I;":";X LET X = X + 2 NEXT I を実行すると 1 : 1 3 : 3 5 : 5 7 : 7 9 : 9 >>149 何でバカ相手に必死なの? オマエもバカなの? 【今どきのBASIC 第2段】 Dim A As LongLong A = (2 = 2) : Msgbox A を実行したら、-1と表示された。 まぁワィの思った通り。想定内だ。 だから、 Dim B As Boolean B = (2 = 2) : Msgbox B を実行すれば、-1と表示されるハズ しか〜し、ワィよりVBAスゴイことに true と表示しやがった。想定外だ。 未来のBASICなら、 その内、「真」と表示しそうだ。 これは、まっ冗談だが、 BooleanかLetかのBASICの判断力は、 人間を超えたワィの判断をも超えてた DECLARE EXTERNAL SUB solve INPUT PROMPT "a = ":a INPUT PROMPT "b = ":b INPUT PROMPT "c = ":c WHEN EXCEPTION IN CALL solve(a,x,b,y,c) PRINT "x = ";x PRINT "y = ";y USE PRINT "解なし" END WHEN END EXTERNAL SUB solve(a,x,b,y,c) IF b=0 THEN IF MOD(c,a)=0 THEN LET x=c/a LET y=0 ELSE CAUSE EXCEPTION 999 END IF ELSE LET q=INT(a/b) LET r=MOD(a,b) CALL solve(b,u,r,v,c) LET x=v LET y=u-q*v END IF END SUB >>154 >BooleanかLetかのBASICの判断力は、 いやいや、変数が、LongLongの時は「-1(つまり、真)」、Booleanの時は「true(真)」 なのだから君の指定したデータ型の通りでは? >>149 で出した俺の例は以下の方がよかったかもね これなら「LET A=2」としているのだから「PRINT A」で「2」が表示されるのはすぐ分かる 100 LET A=2 110 LET B=A=5 120 PRINT A 130 PRINT B 140 END ちなみに、LongLongで「-1」が返ってくるのでは、IFを使わない以下の技は使えないな 100 INPUT "A=";A 110 INPUT "B=";B 120 LET X=A*(A>=B)+B*(A<B) 130 PRINT "A=";A;" B=";B;" X=";X 140 END >>156 なるほど、しかし、 125 X = -X を追加するだけで、上手くいくと思う そうだ。ここは、数学板だった まずは、数学の話をする。 数学では(-1)の二乗と1の二乗は同じ値 ∵ ドッチも1になるぅ \(^o^)/ ∵ マイナス同志を掛けるとプラス さて、BASIC言語のお話に戻すとする 変数aの二乗は、a^2 だ。だから 論理式(A>=B)の二乗は(A>=B)^2 かも 怪しく感じるかも知れんが、直感で BASICはバカ正直に計算するハズ。 だから>>156 の120行目のは 以下の改善で更に万能だ。 【改善前】 120 LET X=A*(A>=B)+B*(A<B) 【改善後】 120 X=A*(A>=B)^2+B*(A<B)^2 trueが1でも、-1でもドッチでもOKだ 【蛇足】 N88-BASICの、REFERENCE MANUAL では、真は(-1) との旨の記載であった 【蛇足2】 マトモな教科書にはアリエナイ プログラムです。 お行儀を重視なら、で ELSEが使えるBASICなら、 120 IF A>=B THEN X=A ELSE X=B でも、でも、でも、 120 X=A*(A>=B)^2+B*(A<B)^2 の方が短いゼ。ワィの勝ち\(^o^)/ 【続き】 ちょっとまてよ、短いなら 120 X=A:IF A<B THEN X=B だな。 古いBASICの数学Bのとほぼ同じだ 古い教科書スゴイ。古いBASIC最高 短いと、手作業でも直ぐ入力できる。 だからヤッパリ教育用プログラムは、 古いBASICで、決まりだね。サイコー 古いBASIC ダイースキ♡ >>1 は理解することをとっくにあきらめたかなwww ただの荒らしがスレを立てた おまいらはもてあそばれた いや、きょうもここで馬鹿さらしとるぞwwwwwwwwww https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14216457024 熱心に回答してくれている人がいるけど、反応がないところを見るとわからんのだろうね。 とにかくこいつ、まともな日本語が使えないのだ >>164 あれあれ。荒らしだとおもっていたけど、本格的にわかっていないのか。 どうも、自分が分からない事を的確に文章にできないカンジ。 IF B>X THEN LET X=B だと、 IF と THEN の間は、条件文と言って、数学の式と同じように書けるんだよね。 THEN の後は、命令文が来るから、数学と同じように書けず。 LET X=B などの命令が来るわけだ。 オマイラ、板違いには厳しいけど、マルチポストには寛容なのな >>164 結構多い理系でも、初心者は、 100 A = 66 110 A = A + 600 120 PRINT A は 666 なのだが、 数学的に考えちゃって、 「A = A + 600となる実数解なし、故に 110 A = A + 600 は、意味不明」 って感じ 110 LET A = A + 600 でも納得できないようだ。 因みに 等差数列、公差3は、数学的には A(n+1) = A(n)+3 だけど これをプログラムさせると素朴にも 何と、配列 DIM A(10) を定義し、 FOR N = 1 TO 9 A(N+1) = A(N) + 3 NEXT とプログラミングする。 FOR I = 1 TO 10 LET A = A + 3 NEXT は、文法的に間違ってるとのこと 理解してもらうのに半年位かかる なるほど。 プログラミングは習うより慣れろみたいなところがあるから >>151 みたいなことをいろいろやって感覚的に慣れる方がいい。 ま、普通の人が半年かかるのなら、>>1 は3年くらいはかかりそうだな。 >>167 逆にブログラマ上がりの奴が数学の問題をやるとき A = A + 3 の感覚で同じ記号を使い回す(そして間違う)からたちが悪い 奇数芸人がその一例 フェルマー芸人も恐らくその感覚だろう >>170 そんな特殊や奴らを例に出してプログラマを一括りにするとかw アホ丸出し >>170 いやむしろ逆だろう プログラマは A = A + 3 を実行する前と後の A の違いは正しく認識する 正しく認識してなければプログラマとしてやっていけん 連中はそれらを混同するから間違う そうかも知れないが、たまに馬鹿になったり、同じレベルで話するのもいいじゃないか。 説明は同レベルで接しないと納得しない。 つまり、IF条件式THEN命令の文で、LETが命令 で、条件式は、>などを使うということを覚えるしかないということでしょうか?教えていただけると幸いなのですが。すみません。 >>175 現状ではBASICに限らずプログラミング言語のマスターはあきらめたほうがよい。 知恵袋やokwaveで、あれだけ丁寧な回答をもらっていて、それで理解できないと いうことは、日本語の読解力、文章の作成能力が極めて貧弱であることを意味する。 自分の思っていることをきちんとした文章にできないようでは、プログラミングなんて 夢のまた夢である。コンピュータは一面では気が利かないマシンなので、命令文の スペル1つ間違っただけで正常に動かない。 掲示板の問答で毎回毎回 教えていただけると幸いなのですが。すみません。 のような情けないことを書いていると、こいつは痴呆であると判断されても仕方がない。 質問は簡潔で、きちんとまとまった文章にしなければならない。 そのためにも小学校高学年以降高校三年までの国語の教科書を手に入れ、きちん とした日本語を学ぶべきだ。 また質問の中に 「こういうプログラムを作ってください」 などと平気で書くのは非常識極まる態度である。日常生活における常識というものも 身につけよう。 >>175 その通りです。覚えるしか無いというのはその通りなんだけど、ホントは納得して欲しいんだけどね。 https://okwave.jp/qa/q9685268.html > なんでも良いので、BASIC言語のプログラムを作って、 > また、どの様なプログラムを書いたのかも教えていただけると幸いなのですが。 > すみません。かなりの負担がかかる質問ですので、答えられる範囲でいいです。 歴史的な愚か者だな >>175 だからプログラム板あるからそっちで聞けばいい 今後期待されている言語 rust では let 文が大復活しているね。 BASIC から LET 文を、簡略化の為に削除したのは、 BASIC の目的が分かっていない。 p が奇素数であることが仮定されているだけで、x、y、z、r が何か仮定されていない。 これだけで数学の証明としては失格。よって以後の証明は数学的価値がない。 pが奇素数ならば、 x^p + y^p = z^p は、自然数の組(x,y,z)を持たないことを証明するのだから x、y、z は当然自然数と仮定しなければならない。したがって z = x + r と置いたときの r は整数である。r が実数だと言うのならここでそう宣言すべきである。しかし、r が実数なら z = x + r より、少なくとも x か z のどちらかは必ず実数となる。これは x、y、z を自然数と仮定したことに反するので、以後の証明はまったくムダである。 r^(p-1){(y/r)^p-1} = p{x^(p-1)+…+r^(p-2)x} ………(3) から > (3)はr^(p-1)=pとなるので、r=p^{1/(p-1)}となる。 とは断定できない。 A = r^(p-1) B = {(y/r)^p-1} C = p D = {x^(p-1)+…+r^(p-2)x} と置いたとき AB = CD ⇒ A = C が成り立つという戯けたことを言っているわけで、それが間違いであるのは 4×3 = 6×2 の反例からも明らかである。 【AB = CD ⇒ A = C の真偽】 ・それら4つのA、B、C、Dは、 命題(より厳密に論理値)とみなす ・A∧Bは、AとBの論理積で、 掛算的なのでABと略記しちゃう C∧Dも、同様とする なら、 AB = CD ⇒ A = C は 正解。 なお、等しいとは、論理値が等しい という意味で、命題の文字列が 一致という意味ではない。 以上 戯言かも そうだ、突然ですが、 論理値のtrueを内部表現で-1 とすることも多いけど、 +1の方が何か好きだな。理由は、 true ∧ true = true ∵自明 (-1) * (-1) = -1 なんて変だし。 電子回路的に速度的に有利だと言う 話は聴いたことあるが、信じない 論理値は、英語でbooleanであり、 ブーリアンと発音する。何だか、 怪しい宇宙生命体って感じの発音だ BASIC言語の初歩部分の基本文法すらできないやつが、 コンピュータ言語とか無理だから、あきらめろ、 10年学んでも分数が繰り返し理解できない奴の原理と同じでそれは根本的に 分数にアレルギー反応しているだけ、それは信じるか信じないかの話と同じよ、 3秒あれば住むレベルの認知が分からないいっているのは、「理解したくない」という 本質を表現しているのと何の違いもない。 むかむかし電機大出版局が出してる本がわかりやすかった 初めて買ったPC(もどき)がMSXでした。(富士通FM-X) そのマシンでBASICとタッチタイピングに慣れ親しみました。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.4.7 2024/03/31 Walang Kapalit ★ | Donguri System Team 5ちゃんねる