【完走目指す】初心者が25日で強くなる Advent Calendar 2022
5日目です。「プチコン3号」を使います。
この記事を書いている途中、「Visual Basic」とかいうものの存在を初めて知りました。
C#:VisualStudio 2019
BASIC:プチコン3号
そもそもBasicとは
昔のパソコンはこれで動いてたらしいですね。
プログラミング言語のご先祖様でしょうか。
誕生したのが1964年であり、当時普及していたプログラミング言語FORTRANにいくつかの点で似ている。構文は、FORTRANの文法が基になっているとしばしば解説されている。
BASICはインタープリタ方式で動くものと、コンパイラ方式で動くものに大別できる。現時点では、構文の様式が大きく異なる2種類のBASICが存在している。構造化前のBASICと、構造化後のBASICである。
引用:ウィキペディア BASIC
ちょうど東京オリンピックが行われた年に生まれたみたいです。2022年現在、もう58歳になります。
プチコン3号とは
SMILE BASICホームページ
3dsのソフトです。500円で買えます。BASIC言語が使えます。ほかにもシリーズはあるそうです。前に買っておいたし、せっかくなので使ってみます。
![IMG_0624[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2Fb9c1e51d-99f4-9acf-ccbc-f718086a4008.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=34a79e54fc72e49de6e9023c97672c0f)
実際にプチコン3号を使います。
![IMG_0628[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2F981c2c16-eb38-48f9-0df0-0aeb82a5470c.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=daa551d19484f0ad7ff6d83a55dc451c)
下画面をご覧ください。
DIRECTとEDITに分かれています。
DIRECTでロードやセーブを行い、EDITでプログラムを打っていきます。
SMILEボタンを押すと、音楽や効果音、画像などが出てきます。
サンプルのゲームもいくつか用意されていました。
自分的 違い10選
本題に入ります。
とりあえず適当に10個くらい挙げてみます。
1.命令
C#では予約語と呼んでいるものを、BASICでは命令といいます。
2.if
C#では、
if(条件式)
{
処理
}
else{
処理
}
でしたが、BASICでは
IF 条件式 THEN 処理 ELSE 処理
になっています。
一文であらわせます。また、()がいらないのが便利です。
3.print
BASICでは、PRINTを使うことで画面に文字を出すことができます。
C#ではWriteLineというのを使うっぽいです。
ためしに、それぞれ画面に文字を出してみます。
画像 BASIC
文字が出ました。
PRINTの後、表示したい文字を「"」でくくるようです。
ちなみに、VisualStudioで文字を表示させようと思ったらもう入ってました.
以下がコードです
using System;
namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
文字が多いですね。
BASICほどシンプルではないようです。
4.for
basicでは、以下のようになります。![IMG_0630[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2Ff1c89588-13a3-13ca-7932-70d326988a51.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=814ed2729bc1f7b847c4a8120be0ed78)
C#ではforの後に(条件式)が入り、NEXTは使ってなかったと思います。
5.RND
BASICではランダムな値をこんな感じで簡単に取得できます。
C#はRandom.Range(最小値,最大値)だったかと。調べたらほかにもいろいろあるっぽいです。
6.LOAD/SAVE
説明は、多分書かなくてもわかると思います。
セーブとか、ロードとかも一文書かなければならないです。
C#でそんなことをした覚えがないので、多分ありません。
7.CLS
![IMG_0633[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2Fd0e43c5b-04ea-9d35-c688-d26fa532369b.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=bb6a1eb5940b710c3a5eebacd824d519)
これを実行すると
![IMG_0634[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2Ff9d0494b-d7b7-447f-2429-4e20b0d95b6c.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=7f4707d6d2e295e0bc92d7bd13f83c9b)
さっきまでのやつが全部吹っ飛んで消えます。
8.COLOR
色が付きます。
色は数字で管理してやります。
通常はCOLOR 文字,背景,境界,描画,パレット
プチコン3号ではCOLOR 描画色,背景色で変わるようです。
試しにやってみました。
![IMG_0635[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2F315d0630-399c-5b69-57c9-15f217ac2e28.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=9b2e09a821208d2bd6fe8cebe38b9496)
適当に色合いを選んだら見にくくなりましたが、ちゃんと色が変わります。
C#では、たぶん一文で簡単にできるやり方はないかもしれません。
9.STOP
動かしているものを止めるためのものです。
C#にこんなものありません。ないはずです。多分ないです。
10.RUN
プログラムを実行するための命令です。
BASIC専用かと思われます。
調べた結果
BASIC限定、C#限定のものもある。
でも、見た目が変わったけど中身が同じなもの(例えばif文とか、for文とか)もあった。
ここでは紹介しきれなかったけど、三角関係のsin,cos,tanなんかはどっちでも使える。
感想
BASIC、思ってたよりよかった。
どっちも楽しい。
5日目終わり。

![IMG_0631[1].JPG](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F2961125%2F70b51f2d-7719-f5b7-1d39-3b148ee4601e.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=e7a8bafc43840ad4fcc19ca9b2e1b520)