日本語プログラミング言語なでしこの公式掲示板

なでしこ の 掲示板

トップ 新規 検索

2023-08-04 07:09:50

Re①:変数の呼び出しについて

雪乃☆雫 さん

まず、りんごのプログラムの場合、「果物」という変数に代入されているのは「りんご」という変数ですから、その内容は10となりますね。
しかし、カレーの場合はどうかというと、「該当品番」という変数に代入されているのは「それ\0」で、その内容は「カレー粉黒」という文字列なんです。
文字列はあくまでも文字列で、「カレー粉黒」という変数ではありません。
なので、表示されるのは「カレー粉黒」という文字ということになるわけです。

とりあえず、このプログラムをとにかくこのまま動くようにするのなら、
#-----------
    該当品番をナデシコして表示する
#-----------
で、いけます。
「ナデシコ」は、引数に指定した文字列をそのままなでしこのプログラムとして実行するとゆう荒技で、該当品番すなわち「カレー粉黒」という文字列をなでしこのプログラムとして実行すると、「カレー粉黒」変数が呼び出されてその内容が表示されるって寸法です。

でもタブン、データをハッシュにしたりした方がいいのかなあ? という。
#------------------------------------------------------------
パターン=「カレールー|カレー粉|スパイス|」

レシピ@「海鮮カレー」は「じゃがいも,200
にんじん,10
カレー粉黒,100」

レシピ@「カレー粉黒」は「ターメリック,2
唐辛子,1
クミン,3」

レシピ@「海鮮カレー」を反復
  対象をパターンで正規表現マッチ
  もし、それが空でなければ
    対象を「,」で区切る
    #パターンに合致する行を,で区切って品番と個数に分割する
    それ\0を該当品番に代入する
    それ\1を該当個数に代入する
    レシピ@該当品番を表示する
#------------------------------------------------------------
 「レシピ」というハッシュ変数の中に、「海鮮カレー」という項目と「カレー粉黒」という項目を作り、それぞれのレシピを入れています。
 ハッシュの項目名は文字列なので、該当品番に代入された文字列で、そのまま呼び出せるってワケです。


いま複数のレシピの結合をしたくて試行錯誤しているのですがどうしてもわからないので助けていただけないでしょうか?

現在添付のようなプログラムを組みました。
このプログラムは海鮮カレーのレシピとカレー粉のレシピがそれぞれ存在しており
これを結合させることを最終目的としています。

途中段階として
上記を実施すると海鮮カレーレシピの中にカレー粉などの文字列ががある場合
カレー粉のレシピを表示させたいのですが
最後の行でカレー粉と表示されてしまいます。
変数の名前と値の関係を調べるため

#ここから
りんごは10
りんごを表示する
果物はりんご
「{果物}」を表示する
#ここまで

上記を実施すると
10
10となり
変数の名前を変数の値とすることで呼び出せると思うのですが
最初のプログラムを実行すると
カレー粉
が表示されてしまい
期待している

ターメリック,2
唐辛子,1
クミン,3

は表示されません。
お手数ですがどなたかお教えいただけないでしょうか?


(編集パスワード送信)

子記事

親記事 (No.1691)
返信した記事(元) (No.1691)

この内容(No.1692)に返信

この内容(No.1692)をダウンロード

この内容(No.1692)のテキスト表示





www.eznavi.net