5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

BASICでこんなプログラム作れるの?

1 :音楽好き中学生:04/10/09 13:53:29
こんな問題見つけたんですけど、ホントに作れるんですか?

10人の身長と体重を測定する。(身長は小数点第1位まで表記)
身長170cm以上の人の人数と体重の平均。
体重 68kg未満の人の人数と身長の平均。
(ただし、170.0cmの人を1人入れよ)

できればお願いします。

40 :デフォルトの名無しさん:04/11/17 16:39:08
誰か、N88BASICでこのプログラム作ってください。お願いします。

正六角形の中心から対角線方向を選んで進むランダム・ウォークを行うプログラムを次の二通りで作成する。
 1) サイコロで方向を決め、IF文で各方向に移動距離を計算するプログラム。
 2) 最初に6方向の移動距離を計算して配列(DIM)に保存し、利用するプログラム。



41 :デフォルトの名無しさん:04/11/17 20:15:14
座標軸をちょっと変換すれば
移動方向は (1,0) (-1,0) (0,1) (0,-1) (1,1) (-1,-1) の6つだろ。
いちいち移動距離なんて計算すんなよ。


42 :デフォルトの名無しさん:04/11/18 08:31:06
宿題は宿題スレへ

43 :デフォルトの名無しさん:04/11/19 16:48:37
→ ← ↓ ↑ / \

\ |
 \|
ーー+ーー
  |\
  | \

六角家まずぃ。

44 :デフォルトの名無しさん:04/11/22 00:06:37
>>39
クイックソートなら、ふつーのBASICには再帰がないので
どうあがいても無理。



45 :デフォルトの名無しさん:04/11/22 00:42:50
>44
クイックソートは再帰使わなくてもループで実装できた希ガス。
コード忘れたけどorz

46 :デフォルトの名無しさん:04/11/22 14:48:01


47 :デフォルトの名無しさん:04/11/22 16:45:23
全ての再帰はループに置き換え可能です。

48 :デフォルトの名無しさん:04/11/23 00:29:27
>>47
無限に続く漸化式も一つの式にまとめられるように
全ての再帰もループに置き換えが効くな。


49 :デフォルトの名無しさん:04/11/26 12:16:15
>>48
テーラー展開とか?

50 :デフォルトの名無しさん:04/11/26 15:04:46
>>1
なんでそんな勉強してるの?
なんでもかんでも手続き型でやってると、
ホスト系馬鹿みたいになっちゃって設計センスまで馬鹿になっちゃうから、
最初っからデータベースでやるべし。

51 :デフォルトの名無しさん:04/11/26 15:12:15
高校数学のコンピュータって確かBASICだよね

52 :デフォルトの名無しさん:04/11/26 15:39:55
対角線って頂点から出るものだから、中心から選ぶのは難しいね。


53 :デフォルトの名無しさん:04/11/26 15:50:35
>>1の宿題の手伝いを必死でするスレはここですか?

54 :デフォルトの名無しさん:04/11/26 17:58:25
>>44
配列を使ってスタックを自前で実装すれば可能。

スタック領域が少ない組み込みで
再帰処理を非再帰バージョンに書き直すのはわりと
ありがちな状況

ちなみにローカル変数が使えるVBとかなら
再帰可能だからふつーに組める。


55 :デフォルトの名無しさん:04/11/27 07:12:50
ああ、疲れてるんだな。
>>10-11のLETで笑いが止まらねえ。

56 :デフォルトの名無しさん:04/11/27 11:01:40
JavaのsetterもLETとそんなに変わらんがな。
BASICはJavaより30年進んでんだよ。

57 :デフォルトの名無しさん:04/12/03 11:45:50
BASICでOS。これ最強。

58 :デフォルトの名無しさん:04/12/04 03:25:18
Disk BASIC とか?

59 :デフォルトの名無しさん:04/12/04 03:40:28
考えてみればROM BASICって立派なOSだよなぁ。
……いやまぁそりゃしょぼいけどさ……

60 :デフォルトの名無しさん:04/12/06 14:20:15
MZ-80シリーズはテープからBASICロードしてたからさらにOSぽ

61 :デフォルトの名無しさん:04/12/06 23:15:35
>60
懐かしいなぁ〜
クリーンコンピュータってのが売りだったんだよねー
その気になればテープからUNIXEN読み込ませて……てのもありだったのかなw

62 :デフォルトの名無しさん:04/12/08 11:37:47
そういえば AhSKI!(ASCII のパロディ版)でUNI×(ユニクロス)っていう
BASIC で実現したUNIX風のファイル管理ソフトがありましたね。
これこそまさに「BASICでこんなプログラム作れるの?」という
話題にふさわしいネタかも知れない。
昔は目の前にはBASICしか無かったんだから全ての欲望は
BASIC で解決するしかなかったからなぁ……


63 :デフォルトの名無しさん:04/12/09 01:46:56
>62
何を言う。そこでハンドアセンブルの密林に分け入る道もあっただろう。

漏れは入り口で引き返してきたっす´`,、(´∀`)´`,、
懐かしいぜ、Z80ニーモニック表。

64 :デフォルトの名無しさん:04/12/09 09:20:32
大したことない香具師ばっかだな

65 :デフォルトの名無しさん:04/12/09 12:40:27
自慢野郎がやってきましたぜ・・・
( ´д)ヒソ(´д`)ヒソ(д` )


66 :デフォルトの名無しさん:04/12/09 14:07:09
BASICでアセンブラ作ったよ。
それで作ったアセンブラで高速化ルーチン作ったよ。
最後はオールアセンブラでアセンブラ。
でもローダーはBASICのDATA文。

懐かしい、なにもかもが、懐かしい。

67 :デフォルトの名無しさん:04/12/09 19:02:02
RST 00H

68 :デフォルトの名無しさん:04/12/20 21:35:32
POKEとPEEKでだいたいOK
ペンティアムでもOK
問題ない。

69 :デフォルトの名無しさん:04/12/20 23:07:18
EXEC&1058H

70 : あけおめ! :05/01/01 18:09:24
>>66
なんかロビンソン・クルーソーみたいですね(イイ!!意味で)

71 :デフォルトの名無しさん:05/01/30 21:26:49
積分で書いたグラフを回転させて出来たやつの体積を求めるプログラムって出来る?
FullBasicで。

72 :デフォルトの名無しさん:05/01/30 21:36:28
構造化BASIC、RATBASてあったな。
確かN88-BASIC上で動くソースリスト付き書籍があったはず。

73 :デフォルトの名無しさん:05/01/30 21:43:35
明日提出で困ってるんですがorz

74 :デフォルトの名無しさん:05/01/30 21:48:27
Cみたいに誰かがやってくれるスレはないんでつか…

75 :デフォルトの名無しさん:05/01/30 21:48:59
>>73
>明日提出で困ってるんですがorz
手遅れです。諦めましょう。

76 :デフォルトの名無しさん:05/01/30 22:17:24
せめてヒント下さい

77 :デフォルトの名無しさん:05/01/30 23:07:10
basicってどんなbasicなんだろ
グラフは最初から指定してあるのかな
どの軸で回転させるのかな〜

78 :デフォルトの名無しさん:05/01/30 23:12:03
BasicはFullBasicです。
与えた関数の式を積分してX軸を回転軸にして回転させるつもりなんですが…

79 :デフォルトの名無しさん:05/01/30 23:19:00
さらに範囲は指定できるようにしたいのですが。

80 :デフォルトの名無しさん:05/01/30 23:26:32
数式処理なのか数値積分なのか?
後者なら軸からの距離を半径とする薄い円柱の体積を足し合わせるだけなんだが

81 :デフォルトの名無しさん:05/01/30 23:30:14
検定あった。


82 :デフォルトの名無しさん:05/01/30 23:53:14
>>1
なんで出来ないのか?
それが分からない。
ネタ?


83 :デフォルトの名無しさん:05/01/31 00:04:54
>>82
>>21で解決済み

84 :デフォルトの名無しさん:05/01/31 00:19:10
多分数値積分だと思うんですが…

85 :71:05/01/31 00:20:44
PRINT "入力した値が大きすぎる場合グラフが意味を持ちません"
INPUT PROMPT "xの係数を正の値で入力してください":a
INPUT PROMPT "xの乗数を入力してください":b
INPUT PROMPT "このグラフの求めたい範囲の始点を入力してください":c
INPUT PROMPT "このグラフの求めたい範囲の終点を入力してください":d

SET WINDOW -(d+1) ,(d+1) ,-(b*50),(b*50)
DRAW GRID (1, 10)

SET LINE COLOR 2
FOR x =-50 TO 50 STEP 0.1
LET y=a*(x)^b
PLOT LINES :x,y;
NEXT x

SET LINE COLOR 1
FOR y =-(50*b) TO (50*b) STEP 0.1
LET x = c
PLOT LINES :x,y;
NEXT y
PLOT LINES


86 :71:05/01/31 00:21:28
続き

SET LINE COLOR 1
FOR y =-(50*b) TO (50*b) STEP 0.1
LET x = d
PLOT LINES :x,y;
NEXT y
PLOT LINES

LET Y0=(a*(c)^b)
LET Y1=(a*(d)^b)

SET AREA COLOR 4
PLOT AREA:c,0;c,Y0;d,y1;d,0

LET S=((a*(d^(b+1)))/(b+1))-((a*(c^(b+1)))/(b+1))

PRINT "この赤い範囲の面積は";S

END

87 :71:05/01/31 00:22:10
これを改造して作れないでしょうか?

88 :71:05/01/31 00:44:50
あうぅ

89 :71:05/01/31 00:50:36
どうしたらいいでしょうか?

90 :デフォルトの名無しさん:05/01/31 00:54:11
>LET S=((a*(d^(b+1)))/(b+1))-((a*(c^(b+1)))/(b+1))
定積分の公式のようですが、回転体の不定積分のやり方忘れちゃいました。
 ∫π*(a*x^b)^2・dx
 =π*a^2*∫x^(2*b)・dx
 =π*a^2*x^(2*b+1)/(2*b+1)
こんなんだっけ?
で、xにdとcを入れて引き算かな。

91 :71:05/01/31 01:46:01
大体出来たんですが、積分関数のグラフを書く方法が良く分かりません

92 :75:80:90:05/01/31 01:59:06
長半径y、短半径y/2の楕円を下の辺りに重ねて描くと3Dぽくなるよ。

FOR x =-50 TO 50 STEP 0.1
LET y=a*(x)^b
PLOT LINES :x,y; ←ここら辺
NEXT x

93 :71:05/01/31 02:09:48
>>92
どういうことですか?

94 :92:75:80:90:05/01/31 02:18:43
>>93
回転体の表示がしたいと勝手に解釈してました。
 y=π*a^2*x^(2*b+1)/(2*b+1)
のグラフを描きたいのでしょうか。

95 :71:05/01/31 02:22:22
>>94
回転体の表示もしたいのですが、よく分からないので求めるために回転させる部分を赤く塗りつぶしてました。
それとは別にy=ax^nを積分したもののグラフを表示したかったんです

96 :71:05/01/31 02:22:52
楕円の書き方とか分かりませんm(__)m

97 :94:92:75:80:90:05/01/31 02:37:54
>>95
y=ax^nのグラフは描けているようですので、y=ax^nを積分したy=ax^(n+1)/(n+1)のグラフを表示するのは如何でしょうか。

>>96
PLOT LINESがあるならPLOT CIRCLESとかがありそうなんですけど、FullBasicの描画命令は分かりませんです。

98 :97:94:92:75:80:90:05/01/31 02:47:24
描きたいのはy=π*a^2*x^(2*n+1)/(2*n+1)かな。

99 :71:05/01/31 02:52:19
書きたいのはy=ax^(n+1)/(n+1)なんですが何故かうまくいきません
そして回転体も書きたいんですが良く分からない感じです

100 :98:97:94:92:75:80:90:05/01/31 03:07:46
>>99
>書きたいのはy=ax^(n+1)/(n+1)なんですが何故かうまくいきません
具体的にどうなりますか?
積分すると偶関数と奇関数が入れ替わるのでx<0で積分値が負になったりするのとは違いますよね。


PLOT LINESで楕円風の多角形でも描きますか?

101 :71:05/01/31 03:48:19
グラフ書けました。
今気づいたんですが、範囲を負の数から始めていると面積がちゃんと出ないことに気付きました。
-15から15にすると面積が0に…


102 :100:98:97:94:92:75:80:90:05/01/31 03:59:00
>>101:71
おめでとう。

103 :71:05/01/31 04:04:11
面積解決しました。
定義域に負の数が入っていた場合加算にしました

104 :デフォルトの名無しさん:05/02/01 01:19:04
>>103
絶対値ではあかんのですか?

105 :デフォルトの名無しさん:05/02/02 23:35:20
悪質なマルチポストだった罠。
http://science3.2ch.net/test/read.cgi/infosys/1097162168/

106 :デフォルトの名無しさん:05/02/27 00:39:47
100 REM
110 A=A+1
120 INPUT B
130 INPUT C
140 IF B<170 THEN GOTO 150 ELSE GOTO 160
150 D=D+1
160 E=E+1
170 IF C>68 THEN GOTO 180 ELSE GOTO 190
180 DA=DA+1
190 EA=EA+1
200 IF A=10 THEN GOTO 210 ELSE GOTO 110
210 Ave=B/10
220 Ave=C/10
230 PRINT B
240 PRINT C
250 END

107 :デフォルトの名無しさん:05/02/27 00:46:27
>160
こらまた見事なカルボナーラで。しかも冷めて固まってるよ。

108 :デフォルトの名無しさん:05/02/27 10:01:27
>>107
構造化という考え方が一般的になる前のコードだ。これが普通。
先人のせっかくの教訓が形骸化されたスローガンとなってしまって一辺倒な物の見方しかできなくなってるんですよ。その発言って。
気をつけた方がいいぞ。


109 :デフォルトの名無しさん:05/02/27 13:15:26
>160
なにこれ?
自演?


110 :デフォルトの名無しさん:05/02/27 13:29:29
>>188は>160とケコーンシル!

111 :デフォルトの名無しさん:05/02/27 18:30:26
>>106
懐かしい

112 :デフォルトの名無しさん:05/02/28 16:52:37
教科書に載ってそうな簡単なしくみだな>106

113 :デフォルトの名無しさん:05/03/02 23:09:44
簡単ですね

114 :デフォルトの名無しさん:05/03/05 12:13:44
だな

115 :デフォルトの名無しさん:05/03/05 18:16:38
call -151

116 :デフォルトの名無しさん:05/03/06 16:48:52
>>1
>(ただし、170.0cmの人を1人入れよ)
この命題の意味がよくわからないな。その条件を除けば、

教科書的には、上のようなものなんだろうが8086系の実践では、かのように単純
ではうまくいかないだろうな。例えば人間の手動計算で0.05になるものがCPU内部では、
0.05未満の数値(0.0499・・・)で扱われるといったようなことが起きることがある。

90 CLEAR
100 DEFINT B,I,J
110 DEFDBL W,A
120 '
130 FOR I=0 TO 9
140 INPUT A(I)'身長
150 INPUT B(I)'体重
160 IF A(I)>=170 THEN
170 IANIN=IANIN+1
180 IB=IB+B(I)
190 ENDIF
200 IF B(I)<68 THEN
210 IBNIN=IBNIN+1
220 WA=WA+A(I)
230 ENDIF
240 NEXT I
250 IBHEI=int(IB/IANIN+.501)'-整数一桁目を桁落ちさせないための丸め処理
260 WAHEI=int((WA/IBNIN+.0501)*10)/10'-少数点一桁目を桁落ちさせないための丸め
270 PRINT "170cm以上の身長の人数、平均体重";IANIN;" ";IBHEI
280 PRINT "68kgs以下の体重の人数、平均身長";IBNIN;" ";WAHEI
(こんなところかな。テストはしてないが。)


117 :デフォルトの名無しさん:05/03/06 16:50:08
END が抜けた。

118 :デフォルトの名無しさん:05/03/08 07:37:14
BASICのエミュってどこにあるの?

119 :デフォルトの名無しさん:05/03/08 07:42:30
MSXのエミュどっかにあったな

120 :デフォルトの名無しさん:05/03/08 16:09:54
N88BASICでcドライブにある画像をBLOADで表示するには
どうゆう書き方すりゃいいの?

1 bload "(ファイル名)":c ←こんな感じ?

さっぱりわからんから誰か教えてー!!!!!

121 :デフォルトの名無しさん:05/03/12 06:56:18
まだ>>1の答えが出てないのかw

122 :デフォルトの名無しさん:05/03/12 11:40:52
単発質問スレでしたか・・・

123 :デフォルトの名無しさん:05/03/12 22:39:46
>121
スレ頭から全部読んだか? とっくに答え出てるぞ。

124 :デフォルトの名無しさん:05/03/19 18:30:08
>>120
ドライブ名はファイル名に入れろ

 1 BLOAD "C:TEKITO.BAS"

こんな感じで。


125 :デフォルトの名無しさん:05/03/20 22:29:05
100 REM
110 A=A+1
120 INPUT B
130 INPUT C
140 IF B<170 THEN GOTO 150 ELSE GOTO 160
150 D=D+1
160 E=E+1
170 IF C>68 THEN GOTO 180 ELSE GOTO 190
180 DA=DA+1
190 EA=EA+1
200 IF A=10 THEN GOTO 210 ELSE GOTO 110
210 Ave=B/10
220 Ave=C/10
230 PRINT B
240 PRINT C
250 END


126 :デフォルトの名無しさん:05/03/20 23:08:23
誰か125のD、E、DA、EA、Aveが
何に使われているのか教えてくれなさい

' てか、変数にまず0入れてないと気持ち悪く感じるってのはC系の言語に染まっちまったなぁ
' MSX-BASICに取り組んでいたあの日が懐かすぃ

127 :デフォルトの名無しさん:2005/03/21(月) 07:23:07
VB6.0ヘルプでみたけど"Ave"という演算子も関数もないんだけど・・・
そういった演算子、関数類があったとしても、要求されている平均身長(小数点1桁)と
平均体重(整数)の精度は違うから、同じ計算式というのはおかしいと思うが。

平均身長に関してだけ言えば、>>125の210行、220行は、Aveが使われた変数を精度は小数点2桁以上
で計算して小数点1桁に丸めて代入するという演算子、関数の類でなければ意味がないだろ。





31 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)