プログラミング言語/なでしこ/楽しいなでしこ講座
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*楽しいなでしこ講座 [#mee6023c]
なでなでしこしこ
#contents
**変数宣言 [#of0521ec]
-なでしこで変数の型を宣言する
(変数名)とは(型)。
-型には以下のものがあります。「変数」にしとけばメモリ大量...
--文字列
-- 数値
-- 整数
-- 配列
-- 実数
-- ハッシュ
-- 変数
-メモリのでかさ
--変数>文字列>数値>実数>整数
-別次元
--配列 ・ハッシュ
**配列 [#g1405d1b]
-配列を扱う
--文字列変数で使うとインデックスのところが行数になります。
配列変数名¥インデックス
配列変数名[インデックス]
-二次元配列を扱う
配列変数名¥行,列
配列変数名[行,列]
**ハッシュ [#j2ec5058]
-ハッシュを扱う
ハッシュ変数名@「ハッシュ文字列」
-多次元ハッシュを使う
ハッシュ変数名@「ハッシュ文字列1」@「ハッシュ文字列2」...
**条件分岐構文 [#n9ec7126]
-簡単な条件分岐
//---------------
もし、(条件式)ならば
(真の処理)
違えば
(偽の処理)
//---------------
-複雑な条件分岐
//---------------
(条件式)で条件分岐
(条件)ならば
(条件)ならば
違えば
//---------------
共に「違えば」はあっても無くてもいい
**繰り返し構文 [#y392ed1b]
-処理をCNT回繰り返す
(CNT)回
回数を表示。//繰り返しが何回目か表示される
-配列Sの要素分繰り返す //文字列ならば毎行分繰り返す
(配列S)を反復
回数を表示。
それを表示。//データの要素が表示される
対象を表示。//同上
-数値変数をAからBまで1ずつ増やしながら繰り返す。「(数値変...
(数値変数)でAからBまで繰り返す
回数を表示。
-条件式が真の時、処理を繰り返し実行する
//(条件式)のループ でも同じである
//1の間 とすると常に条件式が真となるので、無限ループに...
(条件式)の間
回数を表示。
**中断続行 [#l7197548]
[[繰り返し構文>#y392ed1b]]内での中断続行処理の解説。
全て「1の間」、つまり無限ループの繰り返し構文で説明する。
-繰り返しから「抜ける」
1の間
回数を表示。
抜ける。
-出力
1
-繰り返しの途中で、繰り返しの先頭に戻って「続ける」。
1の間
回数を表示。
続ける。
『「続ける」が途中で入ったため、表示されない』と表示。
-出力
1
2
3
4
5
....
**関数の定義 [#i40a975b]
- 書式
●関数名(引数リスト)
定義内容
//●は*で代用できる
-例:関数を使い、引数三つを表示させる
三表示("撫子に",「かかる涙や」,『楠の露』)。
●三表示(A,B,C)
Aを表示。Bを表示。Cを表示。
引数を日本語らしく助詞で区切ることもできる
-助詞リスト
--助詞を変数名などに使うと処理がうまくいかない
とは、は、について、ならば、なら、でなければ、から、まで、
までを、までの、で、を、の、が、に、へ、と、して、だけ、
くらい、なのか、として、より、ほど、など、って、では、て、
-「撫子の」と『暑さ忘るる』と"野菊かな"で俳句表示。
●俳句表示(上句と中句と下句で)
上句と表示。中句と表示。下句と表示。
**変数の展開 [#led7130f]
展開ありのカッコ内で{...}の内部は展開されます。
-展開あり
A=「あいうえお」。
「AAA{A}AAA」と表示。
表示("AAA{A}AAA")。
-出力結果
AAAあいうえおAAA
-展開無し
A=「あいうえお」
『AAA{A}AAA』を表示。
表示(`AAA{A}AAA`)。
-出力結果
AAA{A}AAA
-展開ありで、内部に「 」や{ }や『 』を使いたいときは、下...
「 {カッコ}
」 {カッコ閉じ}
{ {波カッコ}
} {波カッコ閉じ}
『 {二重カッコ}
』 {二重カッコ閉じ}
**関数の定義part2 [#e5a257d5]
''注意:''~
''関数内で宣言された変数は、その関数内だけのローカル変数...
''その他のグローバル変数と変数名被った場合は問答無用でグ...
-引数リストは省略することができます。
A表示。
●A表示
「A」と表示。
-Sで戻る で戻り値を設定することができます
--「Sで」を省略した場合、「それ」が戻り値になります
A=「あああ」。
A=Aの値変更。
Aを表示。 //いいい
●値変更(Sの)
S=「いいい」。Sで戻る。
**関数の定義part3 [#a9d6a10d]
-引数リスト内の引数型を宣言することができます
--「区切る」は特定の文字列で区切って文字列を配列で返します
--配列合計は、配列の各要素を合計して返します(つまり、これ...
S=「10|100|1000」を"|"で区切る。
Sの配列合計値を表示。 //1110
●配列合計値({配列}Sの)
Sの配列合計で戻る。
-引数を省略した場合、普通はエラーがでるのですが、{=?}と入...
--ここでは上との合わせ技を使っていますが、{=10}だけでも動...
「10
100
1000」の配列合計値を表示。//1110
配列合計値を表示。//10
●配列合計値({配列=10}Sの)
Sの配列合計で戻る。
**サンプル [#oke7841i]
-ゲーム
--数当てゲーム(cnakoモード用)
1の間
答え=(10000の乱数)を4でゼロ埋め。
答え1=答えの1から1バイト抜き出す。
答え2=答えの2から1バイト抜き出す。
答え3=答えの3から1バイト抜き出す。
答え4=答えの4から1バイト抜き出す。
「数値当てゲームを始めます。」と表示。
「-【開始!】-------------------------{改行}」と表...
1の間
「-【{回数}回目!】-------------------------」...
1の間
解答=「答えだと思う4桁の数値を入力して下...
もし、(解答が数列か判定)=いいえならば、「...
もし、(解答のバイト数)≠4ならば、「【エラー...
抜ける。
解答1=解答の1から1バイト抜き出す。
解答2=解答の2から1バイト抜き出す。
解答3=解答の3から1バイト抜き出す。
解答4=解答の4から1バイト抜き出す。
判定=0。ズレ判定=0。
もし、答え1=解答1ならば、判定=判定+1。
もし、答え2=解答2ならば、判定=判定+1。
もし、答え3=解答3ならば、判定=判定+1。
もし、答え4=解答4ならば、判定=判定+1。
それ=答え。もし、((それの1から1文字削除)で1か...
それ=答え。もし、((それの2から1文字削除)で1か...
それ=答え。もし、((それの3から1文字削除)で1か...
それ=答え。もし、((それの4から1文字削除)で1か...
もし、判定=4ならば
「【{回数}回目で成功!】おめでとう!正解は{...
「位置も数値もあっている数字が{判定}個。位置だ...
「-【終了!】-------------------------{改行}{改行}...
終了行:
*楽しいなでしこ講座 [#mee6023c]
なでなでしこしこ
#contents
**変数宣言 [#of0521ec]
-なでしこで変数の型を宣言する
(変数名)とは(型)。
-型には以下のものがあります。「変数」にしとけばメモリ大量...
--文字列
-- 数値
-- 整数
-- 配列
-- 実数
-- ハッシュ
-- 変数
-メモリのでかさ
--変数>文字列>数値>実数>整数
-別次元
--配列 ・ハッシュ
**配列 [#g1405d1b]
-配列を扱う
--文字列変数で使うとインデックスのところが行数になります。
配列変数名¥インデックス
配列変数名[インデックス]
-二次元配列を扱う
配列変数名¥行,列
配列変数名[行,列]
**ハッシュ [#j2ec5058]
-ハッシュを扱う
ハッシュ変数名@「ハッシュ文字列」
-多次元ハッシュを使う
ハッシュ変数名@「ハッシュ文字列1」@「ハッシュ文字列2」...
**条件分岐構文 [#n9ec7126]
-簡単な条件分岐
//---------------
もし、(条件式)ならば
(真の処理)
違えば
(偽の処理)
//---------------
-複雑な条件分岐
//---------------
(条件式)で条件分岐
(条件)ならば
(条件)ならば
違えば
//---------------
共に「違えば」はあっても無くてもいい
**繰り返し構文 [#y392ed1b]
-処理をCNT回繰り返す
(CNT)回
回数を表示。//繰り返しが何回目か表示される
-配列Sの要素分繰り返す //文字列ならば毎行分繰り返す
(配列S)を反復
回数を表示。
それを表示。//データの要素が表示される
対象を表示。//同上
-数値変数をAからBまで1ずつ増やしながら繰り返す。「(数値変...
(数値変数)でAからBまで繰り返す
回数を表示。
-条件式が真の時、処理を繰り返し実行する
//(条件式)のループ でも同じである
//1の間 とすると常に条件式が真となるので、無限ループに...
(条件式)の間
回数を表示。
**中断続行 [#l7197548]
[[繰り返し構文>#y392ed1b]]内での中断続行処理の解説。
全て「1の間」、つまり無限ループの繰り返し構文で説明する。
-繰り返しから「抜ける」
1の間
回数を表示。
抜ける。
-出力
1
-繰り返しの途中で、繰り返しの先頭に戻って「続ける」。
1の間
回数を表示。
続ける。
『「続ける」が途中で入ったため、表示されない』と表示。
-出力
1
2
3
4
5
....
**関数の定義 [#i40a975b]
- 書式
●関数名(引数リスト)
定義内容
//●は*で代用できる
-例:関数を使い、引数三つを表示させる
三表示("撫子に",「かかる涙や」,『楠の露』)。
●三表示(A,B,C)
Aを表示。Bを表示。Cを表示。
引数を日本語らしく助詞で区切ることもできる
-助詞リスト
--助詞を変数名などに使うと処理がうまくいかない
とは、は、について、ならば、なら、でなければ、から、まで、
までを、までの、で、を、の、が、に、へ、と、して、だけ、
くらい、なのか、として、より、ほど、など、って、では、て、
-「撫子の」と『暑さ忘るる』と"野菊かな"で俳句表示。
●俳句表示(上句と中句と下句で)
上句と表示。中句と表示。下句と表示。
**変数の展開 [#led7130f]
展開ありのカッコ内で{...}の内部は展開されます。
-展開あり
A=「あいうえお」。
「AAA{A}AAA」と表示。
表示("AAA{A}AAA")。
-出力結果
AAAあいうえおAAA
-展開無し
A=「あいうえお」
『AAA{A}AAA』を表示。
表示(`AAA{A}AAA`)。
-出力結果
AAA{A}AAA
-展開ありで、内部に「 」や{ }や『 』を使いたいときは、下...
「 {カッコ}
」 {カッコ閉じ}
{ {波カッコ}
} {波カッコ閉じ}
『 {二重カッコ}
』 {二重カッコ閉じ}
**関数の定義part2 [#e5a257d5]
''注意:''~
''関数内で宣言された変数は、その関数内だけのローカル変数...
''その他のグローバル変数と変数名被った場合は問答無用でグ...
-引数リストは省略することができます。
A表示。
●A表示
「A」と表示。
-Sで戻る で戻り値を設定することができます
--「Sで」を省略した場合、「それ」が戻り値になります
A=「あああ」。
A=Aの値変更。
Aを表示。 //いいい
●値変更(Sの)
S=「いいい」。Sで戻る。
**関数の定義part3 [#a9d6a10d]
-引数リスト内の引数型を宣言することができます
--「区切る」は特定の文字列で区切って文字列を配列で返します
--配列合計は、配列の各要素を合計して返します(つまり、これ...
S=「10|100|1000」を"|"で区切る。
Sの配列合計値を表示。 //1110
●配列合計値({配列}Sの)
Sの配列合計で戻る。
-引数を省略した場合、普通はエラーがでるのですが、{=?}と入...
--ここでは上との合わせ技を使っていますが、{=10}だけでも動...
「10
100
1000」の配列合計値を表示。//1110
配列合計値を表示。//10
●配列合計値({配列=10}Sの)
Sの配列合計で戻る。
**サンプル [#oke7841i]
-ゲーム
--数当てゲーム(cnakoモード用)
1の間
答え=(10000の乱数)を4でゼロ埋め。
答え1=答えの1から1バイト抜き出す。
答え2=答えの2から1バイト抜き出す。
答え3=答えの3から1バイト抜き出す。
答え4=答えの4から1バイト抜き出す。
「数値当てゲームを始めます。」と表示。
「-【開始!】-------------------------{改行}」と表...
1の間
「-【{回数}回目!】-------------------------」...
1の間
解答=「答えだと思う4桁の数値を入力して下...
もし、(解答が数列か判定)=いいえならば、「...
もし、(解答のバイト数)≠4ならば、「【エラー...
抜ける。
解答1=解答の1から1バイト抜き出す。
解答2=解答の2から1バイト抜き出す。
解答3=解答の3から1バイト抜き出す。
解答4=解答の4から1バイト抜き出す。
判定=0。ズレ判定=0。
もし、答え1=解答1ならば、判定=判定+1。
もし、答え2=解答2ならば、判定=判定+1。
もし、答え3=解答3ならば、判定=判定+1。
もし、答え4=解答4ならば、判定=判定+1。
それ=答え。もし、((それの1から1文字削除)で1か...
それ=答え。もし、((それの2から1文字削除)で1か...
それ=答え。もし、((それの3から1文字削除)で1か...
それ=答え。もし、((それの4から1文字削除)で1か...
もし、判定=4ならば
「【{回数}回目で成功!】おめでとう!正解は{...
「位置も数値もあっている数字が{判定}個。位置だ...
「-【終了!】-------------------------{改行}{改行}...
ページ名: