約 13,725 件
https://w.atwiki.jp/sevenlives/pages/1361.html
高階関数 読み:こうかいかんすう 英語:higher-order function 別名: 意味: 高階関数とは関数を引数や戻り値にしたりする関数のこと。 Lispなどの関数型言語で見られる使い方。 2009年09月07日 関数型言語 クロージャ?
https://w.atwiki.jp/gamexprogram/pages/40.html
C言語 関数2 今回説明するのは戻り値を使った関数です。 例文 //=============================================== //include //=============================================== #include stdio.h //=============================================== //関数のプロトタイプ宣言 //=============================================== void Initialize();//初期化関数 int CalcDamage(int at, int def);//ダメージ計算 //=============================================== //struct //=============================================== struct CharaData { int m_attack;//攻撃力 int m_defence;//防御力 }; //=============================================== //variable //=============================================== struct CharaData player; struct CharaData enemy; //=============================================== //メイン関数 //=============================================== int main(void) { int damage;//ダメージ値 Initialize(); damage = CalcDamage(player.m_attack, enemy.m_defence); printf("enemyに%dのダメージ\n", damage); return 0; } //=============================================== //初期化関数 //=============================================== //[input] //なし //[return] //なし //=============================================== void Initialize() { player.m_attack = 5; player.m_defence = 3; enemy.m_attack = 5; enemy.m_defence = 3; } //=============================================== //ダメージ計算関数 //=============================================== //[input] //at 攻撃力 //def 防御力 //[return] //at-defの計算結果 //=============================================== int CalcDamage(int at, int def) { return at - def; } 実行結果 解説 int CalcDamage(int at, int def) { return at - def; } int型で宣言した関数です。 戻り値として、攻撃力と防御力の差を取っています。 damage = CalcDamage(player.m_attack, enemy.m_defence); ここで、プレイヤーの攻撃力と敵の防御力の差をdamageという 変数に入れています。
https://w.atwiki.jp/yryo1005/pages/13.html
1. 数字関連 str(数字) 数字を文字列に変換に変換する関数 ()内に数字を入れると文字列になる。 abs(数字) ()内の数字を絶対値にする関数 int("数字"X) Xに何も入れていない場合文字列として入力された数字を数値に変更する関数 Xに2か16を入れると、数字をそれぞれ二進数、十六進数に変える関数 2. if関連 if 条件式 条件が成立している場合にする行動 else ifの条件式が成立していない場合にする行動 elif 条件式 条件式が満たされている場合にする行動(ifが先にある場合にのみ使える。if 条件式以外の条件式を追加する関数) 3. グラフ関係 %matplotlib inline import matplotlib.pyplot as plt(グラフを用いるときのおまじない) plt.plot(リスト名) (作成済みのリストをグラフにして表示する。リストの要素がすべて数字でなければならない) 4. その他 def 関数名() 関数の内容 新しく関数を定義する関数 入力したセル以外のセルに、関数名() と入力することで関数として利用できる。 input("") 入力フォームを出す関数 ""内に入力した文字がフォームと同時に出てくる。何も入力しなくても問題はない。 フォームには文字列や数字を入力できる。エンターキーで確定する。 フォームに入力された数字は文字列として処理されるため、数値として入力するにはint()関数などで数値に戻す必要がある。 変数 = input() のように変数に代入するのが一般的
https://w.atwiki.jp/sevenlives/pages/2494.html
即時関数 読み:そくじかんすう 英語:immediate function 別名:The immediate function pattern 意味: 即時関数とは、関数を定義してそのまま実行するスタイルのこと。 JavaScriptでは、ブロックスコープがなく関数でしかスコープを表現出来ないため、擬似的にスコープを作り出すために利用されます。 多くのライブラリに使用されている方法ですが、関数として本来の使用目的ではないため、即時関数と呼ばない方が良いという意見もあります。 例 (function() { //実行内容 }()); 2012年06月20日 関数スコープ? グローバル変数 無名関数(JavaScript)? JavaScript
https://w.atwiki.jp/openmusic/pages/33.html
関数の中にはtest引数を持っているものがある。test引数は関数のふるまいを定義するものである。例えば、ソートするときの比較ルールとか、リストから要素を削除する条件など。 このtestは主にラムダ関数で定義する。 例:リスト内の重複要素を削除する remove-dup関数は、リスト内で同じ要素を削除する関数。要素を2つずつ全ての組み合わせでチェックして同じだったら片方削除するというような感じ。 removedup-args_1.png 引数[0]はリスト。 引数[1]はテスト関数。これが消す条件を設定するところ。デフォルトでは eql。値はLisp eql関数で比較される。比較の結果がt(真偽値のtrue)ならば削除対象として消される。イコールにもいろいろ種類があるがそれはまた別のページで。 removedup.png 上例のremove-dup関数が重複している6300を1つ削除している。 別のテスト関数を定義する 音高リストからオクターブ重複も含めて削除したいとする。しかしOMにそんな関数はない。どうするか? これはremove-dup関数のテスト関数をいじれば実現可能。いま問題となっているのは、デフォルトのeq関数では6000(C4)と7200(C5)は同一の値と判断されてない、つまりeq関数では偽を返すので削除されないことである。6000と7200を新しいテスト関数で比較してt(真偽値のtrue)を返すことができれば、「これは削除対象だ」とremove-dup関数が判断して消してくれる。 思い出せ:1オクターブは1200セント。 modulotest_1.png このパッチはom//関数を使ってオクターブ関係も同一とみなす関数の試作品である。 今6400(F#4)と7600(F#5)が比較されている。 om//のアウトプット[0]は割り算の商を、アウトプット[1]は余りを出力する。 1200で割った余りはそれぞれ400、400でom=で比較すればt(真)が返る。 余りとオクターブ関係 1200で割った余りでオクターブ関係を判断するこの関数はうまくいきそうである。 C4 (6000 / 1200) = 5 あまり 0 C5 (7200 / 1200) = 6 あまり 0 F#4 (6400 / 1200) = 5 あまり 4 F#5 (7600 / 1200) = 6 あまり 4 関数のふるまいを変える 試作品をいじってきちんとしたテスト関数にする。 内部パッチを作って(図の赤いアイコン)その中を「インプットを2つあげたらオクターブ関係を含めた重複を判断して同じ音なら真をアウトプット」という形に組む。 この重複判定関数mypatchをremove-dup関数のtest引数にラムダモードでつなぐ。 そうしてremove-dup関数を評価するとうまいことオクターブ重複も消える。 modulotest-lambda.png
https://w.atwiki.jp/nopu/pages/165.html
超関数論の歴史 1935 Sobolev が部分積分の拡張として弱微分を提唱 1940 Schwartz による超関数(Distribution)論としての整備 1960 佐藤による超関数(Hyperfunction)論 Dirac s δ 佐藤超関数(Hyperfunction)としての定義 Dirac s δ の近似列 Def. 次を満たす関数族を,Dirac s-Delta の近似列という。 注.収束の位相に注意。 Ex. Dirac s δ の積分表示 Ex. これは Dirac s δ を形式的に反転公式に代入して導かれる。
https://w.atwiki.jp/sevenlives/pages/360.html
匿名関数 読み:とくめいかんすう 英語: 別名:無名関数, 関数リテラル 意味: 匿名関数とは関数名指定せずに関数を呼ぶ方法です。 JavaScriptではfunction()で呼び出します。 動的に関数を定義することにより柔軟な関数の扱いが可能となります。 2008年08月02日 高階関数 JavaScript
https://w.atwiki.jp/abwiki/pages/356.html
仮想関数とは、定義のない関数で子クラスが実際に定義して使う関数です。 Class OyaPublicVirtual Sub V()'仮想関数は定義不可Sub X()Print "Oya X"End SubEnd ClassClass KoInherits OyaPublicSub V()Print "Ko V"End SubEnd Class#N88BASICDim k As Ko, o As Oyak.X()k.V()o.X()o.V()'アクセス違反で落ちる! ABではVirtualという言葉でその関数が「継承して使ってください!」という意思表示になります。 これでクラスの作り方のお話は終わりです。 ここですこし知っておいて欲しいことがあります。 ABの普通のメンバ関数はC++でいう仮想関数で、 ABでいう仮想関数ははC++でいう純粋仮想関数と呼ばれています。 上のプログはコンパイルエラーになるのが望ましい動作でした。 仮想関数を含むクラスでオブジェクトの宣言を許すなんて意外でした。 ABにはコピーコンストラクタやオペレーターオーバーロードが無いようです。 よって次のようなことをするとエライ目に合います。 これはコンストラクタで内部にメモリを確保しデストラクタで解放するものですが、 残念ながら代入するaのpの指すものは行方不明になり、 aのpとbのpは同じアドレスを指すのでデストラクタでアクセス違反になります。 デストラクタでp=0をすればアクセス違反になりませんが、いずれにせよメモリリークの原因となります。 Class AlocPrivatep As *BytePublicSub Aloc()p = malloc(100)End SubSub ~Aloc()free(p)End SubSub PutAddr()Print Hex$(p)End SubEnd Class#N88BASICDim a As Aloc, b As Aloca.PutAddr()b.PutAddr()'2つは違うアドレスを指すa = b'代入a.PutAddr()b.PutAddr()'2つは同じアドレスを指す'デストラクタで落ちる...
https://w.atwiki.jp/nopu/pages/135.html
連続関数 有界区間 I 上の関数に対して, C1 ⊂ Lipschitz ⊂ AC ⊂ UC ⊂ C ⊂ α-C LpとCとの関係などは一般に定義域 Ω に依存することに注意! 境界のなめらかさとか。 α-連続 (Abbott) Th. 連続 ⇒ α連続 不連続点の議論をするのに使った。 Def. α-continuous α 0に対し、[a,b]上の関数 f が x でα連続であるとは、 Th. 不連続関数 不連続関数に対しては、あるαに対してα連続でない。 各点連続 C0 各点連続 f D→R が Dの各点で点列連続となること。 Def. 点列連続 pに収束する任意の点列(xn)をとったとき, となるとき,fはpで(点列)連続という。 Rem. 定義域の空間が第一可算(高々可算個の近傍からなる基本近傍系をもつ)ならば, 点列連続 ⇔ 連続 一般には,点列連続は連続よりも弱いが,距離空間なら同値になるので Cf. C0 サポートがコンパクトな連続関数。 BrezisとかJostはCcと書いている。 特に,JostはC0を次の意味で使っている。 ただし は,本当は ⊂⊂ という記号であり, Cf. Cb 有界な連続関数 Prop. [a,b]上の連続関数は有界関数 [証明]は,Bolzano-Weierstrass を使う。 Ex. 連続だけど一様連続でない Ex. Q上で連続 この関数を連続性を保ったままRに拡張することはできない。 稠密な距離空間上定義された連続関数を閉包上の関数に拡張するには一様連続が必要である。 Rem. 定義域を適当に修正すれば一様連続になったりする。 ε 0に対し、 Th. Supノルムを入れると,Banach空間になる。 K⊂R,f K→R Cb における点列の収束をsupノルムによる収束 で定めるが, これは一様収束と同値なので, 一様収束位相を入れるともいう。 一様連続 動きをεより小さくするための幅δを場所に依らず決めることができる。 リプシッツ⇒一様連続 Rem. 有界関数との関係 一様連続だけでは,有界にはならない。(など。) (閉とは限らない)有界集合上の一様連続関数は有界である。 一様連続関数が無限大になるとしたら,定義域の端っこである。 Th. 閉区間上で連続ならば一様連続 しかも有界(コンパクト集合上の連続関数は有界なので) Rem. 閉でなければならない。実際,(0,1] 上の連続関数 は一様連続でない。 Ex. 一様連続 Ex. 一様連続だがリプシッツでない。 Ex. 二変数の場合 足し算 は一様連続だが 掛け算 は一様連続でない。 Rem. 一様連続かどうかは区間の取り方による は 閉区間[a,b]で一様連続だが,実数全体Rでは一様連続でない。 α-Hölder連続 Def. α-Hölder連続 f D→R, 0 α 1 Lipschitz連続 Hölder連続において,α=1の場合 Th.Rademacher Lipschitz 関数 f Rm→Rmはa.e.微分可能 特に,導関数は存在すればLipschitz定数で押さえられる。 逆に,a.e.で絶対連続かつ導関数が有界であれば,L連続になる。 特にR1の場合は,平均値の定理と組合わせると,導関数が(存在して)有界ならばL連続であることが分かる。 Th.Whitneyの埋め込み定理の系 Lipschitz関数はC1関数で近似できる。 Prop. 簡単な初期値問題の解の一意性 φ R→R Lipschitz, f [a,b]→R fは高々1つしか存在しない。 同等連続 関数列を考えているときに出てくる。 特に,Arzela-Ascoliを使うときの条件として。 Def. 同等連続 fn D→R Prop. 同等連続なら,特に全てのfnは一様連続
https://w.atwiki.jp/codearena/pages/16.html
ライフサイクル Start() Update() 組み込み関数 クイックスタート関数 UseMove() UseJump() UseBullet() Get関数 GetKeyDownInput() GetKeyInput() GetPlayerName() GetEnemyName() GetMousePosition() GetPlayerPosition() GetBulletPosition() GetBulletTimer() GetBulletCount() Set関数 SetPlayerAddForce() SetPlayerAddTrque() SetBulletVelocity() SetPlayerAnimation() その他の関数 BulletFire() FreezeRotation() DebugLog()