2次方程式a*x^2+bx+c=0えお解くプログラムを考える。メインプロシージャmain1がsubプロシージャread1,solve1,display1を1回ずつ呼び出す。プロシージャread1で変数a,b,cにinputboxで整数値を入力する。プロシージャsolve1では、まず判別式D=b^2-4*a*cを計算して、D>0の場合にはx1、x2に実数解x1=(-b+sqr(D)/(2*a)、x2=(-b-sqr(d)/(2*a)を求める。D<0の場合はx1に実部-b/(2*a)を、x2に虚部sqr(-D)/(2*a)を求める。プロシージャdisplay1は入力された3つの整数値とsolve1で得られた2つの変数x1.x2の値を判別式Dの符号に応じてMsgbox関数で表示する。
以上のプログラムをモジュールレベル変数を用いてつくりなさい。
Sub read1() '問10(1)
Dim a As Integer, b As Integer, c As Integer
a = InputBox(" aの値を入力して")
b = InputBox(" bの値を入力して")
Sub solve1()
D = b ^ 2 - 4 * a * c
If D > 0 Then
x1 = (-b + Sqr(D)) / (2 * a)
x2 = (-b - Sqr(D)) / (2 * a)
Else
x1 = -b / (2 * a)
x2 = Sqr(-D) / (2 * a)
Sub display1()
End Sub
ここまでやったのですがこの先どうやるかわかりません。
おしえてください。
あとモジュールレベル変数ってなんですか?
No.4ベストアンサー
- 回答日時:
ヘルプ確認しましたか??
もしかして、関数自体の使い方を知らないとか?
でも、inputbox関数使ってるしね・・・
msgbox関数は、プログラミングの基本中の基本ですよ・・・
Sub display1() <- display1というサブプロシージャ
End Sub <- display1というプロシージャの最後
ってことは、わかってるんですよね?
msgbox関数は、そのプロシージャの中に書けばいいだけなんですが・・
取り合えず、プロシージャの中に、
msgbox("メッセージです",0,me.text)
って入れて、動作を確認してみたらどうですか?
動作が確認できれば、どこにどれを書けばどうなるのかわかると思いますよ。
この回答への補足
回答ありがとうございます。
初心者なんでプログラミングの基礎ができてません。
でもどんどん先に進まれてしまい・・・
とにかくヒントをもとにやってみます。
No.3
- 回答日時:
問題にmsgbox関数で表示するって書いてるから、msgbox() <-引数は参考URLを。
ヘルプで「msgbox関数」を検索するとすぐ出るのですが・・変数やリテラルなどは、一般的に & でくっつきます。
End Sub も抜けてるけど、End Ifも無いよ・・・
参考URL:http://msdn2.microsoft.com/ja-jp/library/139z2az …
この回答への補足
display1()
のヒントをもう少しもらえませんか?
msgbox関数をどのようにいれればうまくできるのでしょうか?
教えてもらえるとありがたいです。
No.2
- 回答日時:
こんな宿題の丸写しのような質問は、規約的見地から、ご遠慮いただくタイプの質問ではないですか。
先生に聞くとか、回答の解説発表が後日あるのでしょう。>モジュールレベル変
WEB照会(例えばGoogle)で、「モジュールレベル変数」(VBを加えるか)で照会してください。
http://www.bcap.co.jp/hanafusa/VBHLP/hensu.htm (1例)
沢山説明記事が出ます。
同時に「変数 スコープ」も照会してみたら
ーー
VBではコードの単位は
Sub
END Sub
です。End Subがないのが散見される。
それを分けると変数のスコープの外にナリ、その変数を使えないので
簡単な問題では、できるだけ、単一の中にまとめては。
例 変数入力受け取りと判別式・根の公式計算計算を分けない。
No.1
- 回答日時:
そのモジュール内でのみ有効な変数です。
同じ変数(文字が同じ)でも違うモジュールでは別の変数として扱われます。
課題は、自分の力でやらないと身に付きませんよ?
出来ないのなら、出来たところまでで提出しましょう。それがあなたの実力なのですから。
なんだ、こいつは出来るんじゃないかと思われてどんどん先に進まれるよりは、立ち止まって補習などで勉強した方があなたの為になるような気がしてきました・・・
自分の力でやりたいんですけど初心者なんで
できないんです。
授業もどんどん進み、質問しても答えてもらえないのです。
実際に授業を受けてもらえればわかります。
答えがほしいんではありません。
ヒントがもらえればと思いしつもんしました。
理解してもらえればありがたいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) VBAプログラミング 2 2022/11/27 12:07
- Excel(エクセル) エクセルで同じ数字同士を自動で線で結ぶVBAを教えてください 6 2022/04/26 23:13
- Visual Basic(VBA) 標準モジュール Public mOnTime As Date Sub sample() '実行プロシ 1 2023/02/22 15:44
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBAプログラミング 2 2022/11/27 12:13
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
- Visual Basic(VBA) エクセル VBAについて教えてください 2 2023/04/26 13:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プロシージャまたは関数の引数...
-
【VBScript】変数のスコープ
-
パーソナルXLSBのfuctionを呼び...
-
【HTML、VBScript】HTAアプリケ...
-
PL/SQLのプロシージャ間でカー...
-
整数を二つ読み込み、それらの...
-
Excel vba で複数のテキストの...
-
プログラムの素朴な質問です 分...
-
C#のループでtextboxに値を入れ...
-
三項でたとえば交換って
-
レコードセットにnullの場合
-
VBA public変数はどのようなこ...
-
C言語のサフィックスについて
-
アクセスできない保護レベルエ...
-
他のフォームから別のフォーム...
-
ExcelのVBAで文章にある複数の...
-
エクセルVBAでテキストボッ...
-
Functionの戻り値を配列にした...
-
エクセル・VBAでテキストボック...
-
VB.NETでのイベントの途中終了
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラムの素朴な質問です 分...
-
【VB6.0】 あるフォームから他...
-
プロシージャまたは関数の引数...
-
PL/SQLのプロシージャ間でカー...
-
パーソナルXLSBのfuctionを呼び...
-
【HTML、VBScript】HTAアプリケ...
-
定数を構造体で・・・
-
HTML + VBScript で Sleep でき...
-
Callで呼び出したプロシージャ...
-
整数を二つ読み込み、それらの...
-
変数を複数のモジュール間で共...
-
プロシージャを呼び出したプロ...
-
【VBScript】変数のスコープ
-
VB6のFriendについて
-
VB.NETのグラフィック描画で困...
-
ExcelのVBA。Staticな変数について
-
subを連続で実行する
-
文字列をINTEGER型に変換
-
subプロシージャーですか?sub...
-
変数の宣言はすべきでしょうか...
おすすめ情報