約 7,945 件
https://w.atwiki.jp/memosite/pages/4.html
C,C++分かんないけど、 いきなりD言語を利用してみたり 現在 Poseidonっていう IDEをDLanguageで利用中。 ある日突然、日本語表示がおかしくなった。 みんな「□」で表示される・・・ 原因は、エディタのフォント設定が、 日本語に対応していないやつが 選択されていたためでしたが、 変えた記憶が無いのですが・・・ 取りあえず、MS P明朝にでも置き換えて解決 文字補完リスト作成?にチェックを入れること コンパイルの-w設定を有効にすること。 ※実行時Errorも見つけれることがあるっぽい 連想配列のMemo D言語のリファレンスに普通に記載あったけど、普通に見逃していたため、記載 連想配列の要素を削除するためには、 a.remove( 要素名 ) 配列の要素へのポイントを取得 p = ( 要素名 in b); ※ 存在しないときは、Nullを返す。
https://w.atwiki.jp/vsaturn/pages/38.html
第2回覚えておくと便利な小ネタ 文字を入れる型 今まで変数の型はint型等の数値を格納する型ばかり扱って来ましたが、 文字を格納する型もあるんです。それがchar型です。読み方はキャラ型と読みます。 変数1つにつき半角1文字を格納する事ができます。配列にすれば複数の文字が扱えます。 char型 char c = a ; #includeの意味 今までなんとなく使っていた#includeはどの様な意味を持っているのかという疑問を解決しましょう。 これは「あるファイルをこの場所にインクルード(取り込む)しなさい」という命令をコンパイラに対して行なっているのです。 #includeの後に記述する stdio.h はstdioヘッダーファイルを読み込みなさいという命令だったんですね。 C言語での文字 先ほど文字を扱う型をやりましたが、実はC言語ではその文字に与えられた文字コードと呼ばれる整数値なんです。 もちろん型の代入でも文字コードで指定することも可能です。文字コードはJISコードやASCIIコードなどが使用されています。 有効範囲(スコープ) { }内で宣言された変数はその{ }内でしか使えません。これをスコープといいます。 他の関数等で呼ぶような記述をするとエラーになります。 例 int main( void ) { { int n; n = 0; } n =10; /* エラーになる */ return 0; } この{ }でくくられている部分をブロックと呼びます。変数はそれそれのブロック内のみ有効です。 違うブロックならば同じ変数名で変数が作成されてもエラーになりません。仮引数宣言も同様です。 ブロック内で宣言された変数をローカル変数と呼びます。 プロトタイプ宣言 これは予めコンパイラに対して関数の情報を与える宣言文です。 書き方は関数を書く前にmain関数より前に関数頭部のみを記述するだけです。 あくまで情報を与えるだけで関数と実態は別で書きます。 例 int func( void ); /* プロトタイプ宣言 */ int main( void ) { 処理 } /* 関数実体 */ int func( void ) { 処理 } 関数に配列を渡す 関数には配列も引数として渡すことができます。 まず、関数の仮引数に配列宣言しておきます。実引数は配列名だけを渡すだけです。 しかし、同時に要素数を渡す事ができないので別の仮引数を宣言して渡してあげましょう。 多次元配列でも同様です。 例 int func( int list[], int num ) { 処理 } /* 関数実体 */ int main( void ) { int vc[ 5 ] = { 0,1,2,3,4 }; func( vc, 5 ); /* 2番めに要素数を渡している */ } const型修飾子 型の前にconstをつけるとその変数は書き換えができなくなります。 配列の要素数等の不変的な定数に使用するのが一般的ですね。 定数をこのようにまとめておくと変更する場合の手間が減ります。 例 const int num = 5; /* 要素数(要素数の変更があった場合ここのみを変えれば他にも反映される) */ int vc[ num ] = {0,1,2,3,4}; /* 定数化して変更を容易に */ for( int i = 0; i num; i++ ) { 処理 } /* 仮引数に使用すると関数に渡した値が勝手に書き換わるのを防ぐ */ int func( const int vc[] ) { 処理 }
https://w.atwiki.jp/rpg2kpsp/pages/29.html
イベント・主人公・乗り物の位置情報 形式:一次元配列 配列番号リスト 配列番号 内容 形式 省略時の初期値 備考 11 マップID BER圧縮整数 不明 イベント情報のときはない 12 X座標 BER圧縮整数 不明 13 Y座標 BER圧縮整数 不明 21 キャラクタの向き? BER圧縮整数 2,4,6,8 の形式? 22 話し掛けられている時の向き? BER圧縮整数 2,4,6,8 の形式? 31 斜め? 話し掛けられた時? のキャラグラ BER圧縮整数 2 向き固定時に使用? 32 ↓向きの時のキャラグラ BER圧縮整数 2 向き固定時に使用? 33 斜め? 話し掛けられた時? のキャラグラ BER圧縮整数 2 向き固定時に使用? 34 ←向きの時のキャラグラ BER圧縮整数 3 向き固定時に使用? 35 斜め? 話し掛けられた時? のキャラグラ BER圧縮整数 2 向き固定時に使用? 36 →向きの時のキャラグラ BER圧縮整数 1 向き固定時に使用? 37 斜め? 話し掛けられた時? のキャラグラ BER圧縮整数 2 向き固定時に使用? 38 ↑向きの時のキャラグラ BER圧縮整数 0 向き固定時に使用? 41 一次元配列 51 BER圧縮整数 52 BER圧縮整数 53 BER圧縮整数 54 BER圧縮整数 71 72 73 キャラグラのファイル名 シフトJIS文字列 "¥0" 74 キャラグラの位置 BER圧縮整数 0 101 102 103 104 105 106 107 108 121 122 123 124 BER圧縮整数 131 BER圧縮整数 132 BER圧縮整数 コメントフォーム メモ:0x15と0x16どちらかがキャラグラの向きっぽい。でも、値がまったく一緒で判別不可。 -- take-cheeze (2009-07-22 13 36 06) 名前 コメント
https://w.atwiki.jp/elona_valiant/pages/20.html
material_data マテリアル情報格納配列 mat.s1 dim mat, 400 配列の要素サイズは4バイト(=符号付32ビット整数)
https://w.atwiki.jp/tetdm/pages/25.html
文字の配列 char str[4]; int count; str[0] = R ; str[1] = e ; str[2] = n ; str[3] = a ; for(count = 0 ; count = 3 ; count++) { printf("%c" , str[count]); } printf("\n"); } 文字列を出力するのに,いちいちfor文を書くのは面倒. 配列の先頭アドレスを指定して,%s書式で出力できるようにする #include stdio.h main() { char str[5]; str[0] = R ; str[1] = e ; str[2] = n ; str[3] = a ; str[4] = \0 ;//文字列の終わりを意味するNULL文字 printf("%s\n",str);//%s書式で出力 } 演習 以下のプログラムの実行結果を書き,%s書式は,どこからどこまでの文字を出力するか答えよ. #include stdio.h main() { char str[7]; str[0] = R ; str[1] = e ; str[2] = \0 ; str[3] = n ; str[4] = a ; str[5] = b ; str[6] = \0 ;//文字列の終わりを意味するNULL文字 printf("%s\n%s\n",str, str[4]);//%s書式で出力 } 文字配列の初期化 NULL文字は勝手に挿入される. #include stdio.h main() { char str1[] = { R , e , n , a , \0 }; char str2[] = "Rena"; int n1 = sizeof(str1);//配列の長さ int n2 = sizeof(str2);//配列の長さ printf("%s\n",str1);//%s書式で出力 printf("%s\n",str2);//%s書式で出力 printf("配列の長さは%d\n",n1); printf("配列の長さは%d\n",n2); } char型のポインタ ちょっと例外(ふつうはポインタ変数の初期化はできない) #include stdio.h main() { int *x = {1,2,3}; } char型のポインタ変数は初期化できる #include stdio.h main() { char *str2 = "Rena"; char *str1 = { R , e , n , a , \0 }; printf("%s\n",str2); printf("%s\n",str1); } 演習 ポインタ変数pを用いて文字列deを出力するプログラムを書け. char str[] = { a , b , c , \0 , d , e , \0 }; char *p;
https://w.atwiki.jp/akitaicpc/pages/38.html
ページ一覧 8パズル 3目並べ 重要なアルゴリズム 配列を逆順にする 配列を巡回シフトさせる 配列 過去の結果 過去の活動の記録 過去のコンテストの解説 過去のAtcoderのコンテスト 蟻本 練習用ページ 編集履歴 組合せ 素因数分解 競技プログラミングに役立つページ 標準入出力(stdio.h) 木 最大値・最小値 文字列処理関数(string.h) 数学関数(math.h) 探索アルゴリズム 幾何アルゴリズム 基本的なアルゴリズム 動的計画法(DP) 値の交換 リンク一覧 リスト ライブラリ検証用問題 ユークリッドの互除法(2 つの自然数の最大公約数を求める) メニュー ページ一覧 プラグイン ハノイの塔 ナイトツアー問題 トップページ ダイクストラ法 ソートアルゴリズム スタック・キュー グラフ構造 グラフアルゴリズム グラフとは エラトステネスのふるい(素数判定) エイトクイーン問題 どうでもいいページ その他・古典パズルなど vectorの使い方 stringの使い方 stack,queue,priority_queueの使い方 setの使い方 ...
https://w.atwiki.jp/sevenlives/pages/2107.html
ゼロオリジン 読み:ぜろおりじん 英語:zero origin 別名: 意味: ゼロオリジンとは、数字の0から始まる数え方のこと。 プログラミング言語の配列などで使われることが多い。 2011年01月11日 オリジン 配列
https://w.atwiki.jp/dslua/pages/210.html
テーブル操作 テーブル(連想配列)となっています。 使用法は、まず table = {} のように変数に空の連想配列を代入する必要があります。 しかし、値を一気に代入することもできます。 例えば、table = {"a", "b", "c"} と書くことができます。 配列のインデックスは、1から始まります。 一般的な使用法は a_table = {} -- 配列の宣言 a_table[1] = "a" -- 配列への代入 a_table[2] = "b" -- 配列への代入 a_table[3] = "c" -- 配列への代入 とか、 a_table = {} -- 配列の宣言 a_table = { "a", "b", "c"} -- 配列への代入 となります。 tebleの区切り文字と連結した文字列を返すのは、table.concat (table [, sep [, i [, j]]])。sep:デフォルト値は空文字列 i :デフォルト値は1、 j:テーブルの長さ a_table = {"1","2","3"} -- 配列 a_txt = table.concat(a_table,",") -- abc_tableを,で区切る abc_txtは1,2,3 tableへのデータ追加は、table.insert (table, [pos,] value)。pos:位置 value:要素 table の位置 pos に要素 value を挿入します。posがないときは一番後ろに挿入します。 a_table = {"a"} -- abc_table[1] = "a" table.insert(a_table, "b") -- abc_table[2] = "b" table.insert(a_table, "c") -- abc_table[3] = "c" table.insert(a_table, 2, "d") -- 2つ目にdを挿入 結果a,d,b,c テーブルに含まれている要素数は、table.maxn (table)。 a_table = { 1, 2, 3} total = table.maxn(a_table) -- totalは3 a_table = { "a", "b", "c", "d", "e"} total = table.maxn(a_table) -- totalは5 tableのデータ削除は、table.remove (table [, pos])。pos:位置 table から位置 pos の要素を取り除きます。 a_table = { 1, 2, 3, 4, 5} table.remove (a_table, 2) -- 配列の中身は1,2,3,4,5 その2つ目を削除。結果1,3,4,5 tableのソートは、table.sort (table [, comp])。comp がない場合は " " 。 指定された順序で その場でソートする。そのため、配列の位置が変化する場合があります。 a_table = { 3, 1, 2} table.sort(a_table) -- a_tableの中身は1,2,3 a_table = { "a", "c", "d", "b", "e"} table.sort(a_table) -- a_tableの中身はa,b,c,d,e テーブルの関数を使用したサンプルプログラム ------------------------------------------ -- テーブルのサンプル table_sample.lua ------------------------------------------ function main() C_Black = color( 0, 0, 0) -- 黒(ブラック) C_White = color(255, 255, 255) -- 白(ホワイト) canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText("画面タッチで次のサンプルに進みます。", 10, 280, 24, C_Black) touch(3) -- 普通の使用のサンプル a_table = {} -- 配列の宣言 a_table[1] = "a" -- 配列への代入 a_table[2] = "b" -- 配列への代入 a_table[3] = "c" -- 配列への代入 canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText("普通の使用のサンプル", 0, 24, 24, C_Black) for i, value in pairs(a_table) do canvas.drawText( i .. " " .. value, 0, 50 + 24 * i, 24, C_Black) end canvas.drawText("画面タッチで次のサンプルに進みます。", 10, 280, 24, C_Black) touch(3) -- table.concat b1_table = { 1, 2, 3} -- 配列への代入 b1_txt = table.concat(b1_table,",") -- abc_tableを,で区切る abc_txtは1,2,3 b2 = { "ABC", "TEST", "Lua", "Luarida" } b2_txt = table.concat(b2, ";") -- s = "ABC;TEST;Lua;Luarida" canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText( b1_txt, 0, 24, 24, C_Black) canvas.drawText( b2_txt, 0, 48, 24, C_Black) canvas.drawText("画面タッチで次のサンプルに進みます。", 10, 280, 24, C_Black) touch(3) -- tableへのデータ追加のサンプル c_table = {} -- 配列の宣言 c_table = {"a"} -- abc_table[1] = "a" table.insert(c_table, "b") -- abc_table[2] = "b" table.insert(c_table, "c") -- abc_table[3] = "c" table.insert(c_table, 2, "d") -- 2つ目にdを挿入 結果a,d,b,c canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText("tableへのデータ追加のサンプル", 0, 24, 24, C_Black) for i, value in pairs(c_table) do canvas.drawText( i .. " " .. value, 0, 50 + 24 * i, 24, C_Black) end canvas.drawText("画面タッチで次のサンプルに進みます。", 10, 280, 24, C_Black) touch(3) -- テーブルに含まれている要素数のサンプル d1_table = { 1, 2, 3} d1_total = table.maxn(d1_table) -- abc_totalは3 d2_table = { "a", "b", "c", "d", "e"} d2_total = table.maxn(d2_table) -- def_totalは5 canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText("テーブルに含まれている要素数のサンプル", 0, 24, 24, C_Black) canvas.drawText( d1_total, 0, 50 + 24, 24, C_Black) canvas.drawText( d2_total, 0, 50 + 24 * 2, 24, C_Black) canvas.drawText("画面タッチで次のサンプルに進みます。", 10, 280, 24, C_Black) touch(3) -- tableのデータ削除のサンプル e_table = { 1, 2, 3, 4, 5} table.remove (e_table, 2) -- 配列の中身は1,2,3,4,5 その2つ目を削除。結果1,3,4,5 canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText("tableのデータ削除のサンプル", 0, 24, 24, C_Black) for i, value in pairs(e_table) do canvas.drawText( i .. " " .. value, 0, 50 + 24 * i, 24, C_Black) end canvas.drawText("画面タッチで次のサンプルに進みます。", 10, 280, 24, C_Black) touch(3) -- tableのソートのサンプル f1_table = { 3, 1, 2} table.sort(f1_table) -- abc_tableの中身は1,2,3 f2_table = { "a", "c", "d", "b", "e"} table.sort(f2_table) -- def_tableの中身はa,b,c,d,e canvas.drawCls(C_White) canvas.drawText("テーブルのサンプル", 0, 0, 24, C_Black) canvas.drawText("tableのソートのサンプル", 0, 24, 24, C_Black) for i, value in pairs(f1_table) do canvas.drawText( i .. " " .. value, 0, 50 + 24 * i, 24, C_Black) end for i, value in pairs(f2_table) do canvas.drawText( i .. " " .. value, 0, 50 + 24 * 3 + 24 * i, 24, C_Black) end canvas.drawText("すべてのサンプルの表示が終了しました。", 10, 280, 24, C_Black) canvas.drawText("画面タッチで終了します。", 10, 280 + 24, 24, C_Black) touch(3) end main() 1.tableのサンプルの実行結果です。 2.普通の使用のサンプルの実行結果です。 3.table.concatのサンプルの実行結果です。 4.tableへのデータ追加のサンプルの実行結果です。 5.テーブルに含まれている要素数のサンプルの実行結果です。 6.tableのデータ削除のサンプルの実行結果です。 7.tableのソートのサンプルの実行結果です。 コメント(最大10行) 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/bambohe/pages/354.html
同じ図案の麻雀牌を偶数個取るという遊戯。 しかし他の麻雀牌によって表面の図案の一部でも遮蔽されていたり、左右側面のどちらか一方が完全露出していないものは対象に出来ない。 また、対象に出来る同じ図案の麻雀牌が奇数個存在する場合は、偶数個しか取ってはいけない。 並べられた麻雀牌をすべて取ることが出来ればゲームクリアとなる。 場に取られていない麻雀牌が残存している状態で対象に出来る対になった麻雀牌が存在しない場合は詰みである。 麻雀牌の並べ方に規定は存在しないが、一牌をひたすら垂直に積み上げたものはクリア不能の配列であるのでゲームとして意味をなさない。 麻雀牌同士を一切接触させずに並べただけの配列は、池沼でもなければ時間をかければ必ずゲームクリア出来る配列であり、これもゲームとして成立しないどころか人生における意味すらも生じないので注意である。
https://w.atwiki.jp/wakan-momomikan/pages/380.html
分類の解説 五十音引き 五十音順に分類し配列したもの。 産地引き 産地ごとに分類をしたもの。 和(日本)漢(漢土)西(泰西)など配列は五十音引き。日本産については更に詳細に州ごとにも分類。 部類引き 形状や性質などで分類をしたもの 部類それぞれの中では ●事物別ごとの分類。●漢→和→諸外国→新手の順。●主だったもの→細分したものの順。と配列してあります。 個別項の解説 漢字、英字表記 特に無いもの、不明のものはこれを略してあります。 産地引きによる分類表示 口碑や関連作品が残されている地域を記してあります。 オリジナルの場合は、デザイナーの名前を併せて記してあります。 部類引きによる分類表示 とりあえずは暫定的に、最も近い、或いは判りやすいと考えられる部類を記してあります。 和漢百魅缶該当番号 和漢百魅缶でのアドレス。 短句 ブログなどでの記事で使ったキャッチフレーズ、ギャグなど。 もどる