サイトトップへ
OSASK.NET
  サイトトップへ       新掲示板(閉鎖済)   Wiki(凍結済)   旧掲示板(廃止済)   ニュース(廃止済)  
1: 2011-02-16 (水) 13:48:33 k-tan ソース 2: 2011-02-16 (水) 14:57:22 k-tan ソース
Line 3: Line 3:
---- ----
-blikeを使えば、これくらいのものがこれくらいの行数、これくらいのプログラムの難易度で作れますという例。配列とかポインタとかをできるだけ使わないようにしています。 -blikeを使えば、これくらいのものがこれくらいの行数、これくらいのプログラムの難易度で作れますという例。配列とかポインタとかをできるだけ使わないようにしています。
 +--でも配列は使っている例もあります。
 +-もちろん他のもっと便利な言語を使えばこれより短くかけるかもしれませんが、C言語だけでここまでできるのは教えやすいのではないかと。しかも環境依存なしで。
*** test002a (6行) [#wcadd555] *** test002a (6行) [#wcadd555]
 +http://osask.net/w/gate.php/test002a.jpg?way=attach&_noumb&refer=blike%2Fintro%2Fdemos&openfile=test002a.jpg
 int x, y;  int x, y;
 openWin(256, 256);  openWin(256, 256);
Line 10: Line 13:
         setPix(x, y, rgb(x, y, 0));          setPix(x, y, rgb(x, y, 0));
 }  }
 +*** boxes00a (6行) [#u5410064]
 +http://osask.net/w/gate.php/boxes00a.jpg?way=attach&_noumb&refer=blike%2Fintro%2Fdemos&openfile=boxes00a.jpg
 + int i;
 + setCol(0x0000ff);
 + setBCol(0xc6c6c6);
 + openWin(160, 144);
 + for (i = 0; i <= 60; i += 3)
 +     drawRect(19 + i * 2, 139 - i * 2, 71 - i, 3 + i);
 +*** bball00a (30行) [#re151792]
 +http://osask.net/w/gate.php/bball00a.jpg?way=attach&_noumb&refer=blike%2Fintro%2Fdemos&openfile=bball00a.jpg
 + struct POINT {
 +     int x, y;
 + };
 + static struct POINT t[16] = {
 +     { 196, 100 }, { 187,  61 }, { 164,  29 }, { 129,  9 }, {  90,  5 },
 +     {  53,  17 }, {  23,  44 }, {  7,  81 }, {  7, 119 }, {  23, 156 },
 +     {  53, 183 }, {  90, 195 }, { 129, 191 }, { 164, 171 }, { 187, 139 },
 +     { 196, 100 }
 + };
 + static int c[8] = {
 +     0x000000, 0xff0000, 0x00ff00, 0xffff00,
 +     0x0000ff, 0xff00ff, 0x00ffff, 0xffffff
 + };
 + int i, j, d;
 +
 + openWin(200, 200);
 + setMode(BL_POR);
 + for (i = 0; i <= 14; i++) {
 +     for (j = i + 1; j <= 15; j++) {
 +         d = j - i; /* 2つの点の距離 */
 +         if (d >= 8) d = 15 - dis; /* 逆回りに数える */
 +         if (d != 0) {
 +             setCol(c[8 - d]);
 +             if (t[i].x <= t[j].x)
 +                 drawLine(t[i].x, t[i].y, t[j].x, t[j].y);
 +             else
 +                 drawLine(t[j].x, t[j].y, t[i].x, t[i].y);
 +         }
 +     }
 + }
 +*** test005a (9行) [#q65e7724]
 +http://osask.net/w/gate.php/test005a.jpg?way=attach&_noumb&refer=blike%2Fintro%2Fdemos&openfile=test005a.jpg
 + int x, y;
 + openWin(256, 256);
 + for (y = 0; y < 256; y++) {
 +     for (x = 0; x < 256; x++)
 +         setPix(x, y, rgb(x, y, 0));
 + }
 + locate(13, 8);
 + setCol(iCol(7)); /* iCol(7) == 0xffffff */
 + printf("hello");
 +-このようにグラフィックの上に普通にprintfできます(重ねあわせが美しくはないですが)。今までのprintfの知識をむだにすることはありません。
 +--ピクセル単位で表示位置を指定できて、大きさも指定できて、さらに重ねあわせが問題ない文字列表示関数drawStrFもあります。
 +-このようなテキストとグラフィックの混在を許すので、学習者がステップアップしやすくなっています。

トップ   差分 バックアップ 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ
新着

目次
メンバー一覧


最新の20件
2016-10-01 2016-09-08
  • @MenuBar.
2016-09-07 2016-09-04 2016-08-15 2015-09-23 2014-07-30 2014-07-04 2014-02-04 2013-10-26 2013-06-21 2013-06-17 2013-06-15 2013-04-02 2013-02-09 2013-02-04 2012-12-25 2012-12-01 2012-05-28 2012-03-31

トピック一覧
一般用コメント最新
新掲示板lina
2016/9/5 20:58
SandBoxゲスト
2016/9/4 12:01
RecentDeletedlina
2015/6/2 19:29
Old-OSASK-MLlina
2014/6/29 9:14
hideyosi/メールhideyosi
2014/1/6 20:17
hideyosi/募集中lina
2013/11/8 19:56

このサイトは川合秀実から委託を受けて、OSASKコミュニティによって管理・運営されています。