最近始めたカードゲームのコストシミュレーターのようなものを探していたのですが、検索して探してみたものの、公開されたばかりのゲームなのでそんなものはなく…;
ゲーム自体のインターフェースもまだまだ不親切なので、あったらすごく便利だなと思っています。
そこで、ないならエクセルなどを使って自分で作ってみようと思ったのですが…高校で習っただけの簡単な関数しかわからず、なかなか進みません;
解説サイトなどで調べて、最大値を返す関数や違う場所に抜き出すような関数は見つけたのですが、どうもそれではできなくて…
詳しい方にお力を貸していただければ…と思い質問させていただきます。
説明不足なところがあれば言ってください。どうぞよろしくお願いします><
添付写真のベースから、
●決められた攻撃Pの中で、一番強い攻撃力のデッキを表示させたい
例えば、
最大攻撃P:50
所持カード:A,B,C,D,E,F
50以内で一番攻撃力が高くなる組み合わせを、右の表に抜き出したいというような感じです。
●同じ属性のカードが何枚あるか表示させたい
こちらはCOUNTIFで合っていますか?
ベースをこうした方が関数使いやすいよというようなことがあれば、ご指摘もよろしくお願いします。
No.4ベストアンサー
- 回答日時:
「最適解問題」ですね。
これは、一つの式で簡単に導き出せるようなものではありません。
参考) http://www.is.doshisha.ac.jp/report/2011/1/24/20 …
確かに、高校までの数学では習わない話です。
----
まあ、強引にやるならば、すべての組み合わせを列挙し、結果を並べ換え、コスト内で一番上位の物を表示する、と言うことになります。
例えばまず、カードがA~Fの6枚あるならば、その組み合わせ数は
6C1 + 6C2 + 6C3 + 6C4 + 6C5 + 6C6
=6 + 15 + 20 + 15 + 6 + 1
=63通り、あります。
別のシートに、その63通りすべての場合の、カード種別 | カード攻撃力合計 | カードコスト合計という、63行のデータを作ります。
(ソート条件1)攻撃力 降順、(ソート条件2)コスト 昇順、でソートします。
コストの列を見ていって、手持ちコストを下回った物が、最適解となります。
なお、カードが6枚なら、作業用シートは上記のように63行ですみますが、カードの数が増えるにつれ、行数は等比級数的に増加してしまいます。(だから、最適解問題は難しいのです)
----
すべての場合分けのシートを作る部分で、マクロが必要でしょうね。これは立派なプログラミングとなります。
その後のソート作業・抽出作業もマクロによって組めます。
ソート結果の表が出たならば、最後の抽出表示ぐらいは式で出来ますが。
式だけでは到底出来そうにない、と言うことがおわかりいただけるでしょうか。
なお、2番目の質問については、そのとおりCountif()でOKです。
他に条件がいろいろ付くなら、また違ってきますが。
回答ありがとうございます。
URLも読みました。
決められた数値の中で最も高い組み合わせを選ぶということを最適解問題、というのですね。
式だけでは無理がある、そういった専門の知識が必要ということもよくわかりました^^;
詳しい解説本当にありがとうございました。
No.3
- 回答日時:
>●決められた攻撃Pの中で、一番強い攻撃力のデッキを表示させたい
どの様なカードの組合せならば同時に使用できるのか、又は、どの様な組み合わせならば使用する事が出来ないのか、又、無制限に何枚でも攻撃カードを同時に使う事が出来るのか、或いは枚数制限があって何枚までなら同時に使う事が出来るのか、また、「自分が使うカードの組わせ」や「相手が使用しているカードとの相性」等によって攻撃力はどの様に変化するのか、等々、そのゲーム特有のルールによって、どの様な事が出来て、どの様な事は出来ないのか、という事を御説明頂けなければ、回答のしようがないと思います。
>●同じ属性のカードが何枚あるか表示させたい
>こちらはCOUNTIFで合っていますか?
合っていますが、質問者様が仰る「同じ属性」とは、「その場に出しているカードと同じ属性のカードが何枚あるのかを、場に出しているカードを入力した横に表示させたい」という意味でしょうか?
それとも、「全ての属性を網羅したリストがあって、そこに、各属性のカードが何枚あるのかを表示させたい」という事なのでしょうか?
この回答への補足
ご回答ありがとうございます。
説明不足で申し訳ありません。
>●決められた攻撃Pの中で、一番強い攻撃力のデッキを表示させたい
左のピンクの表が所持しているカードを入力するリストで、その中から右の攻撃デッキという表に表示されるようにしたいです。
制限は、
・10枚以内であること
・最大攻撃Pの欄に入力した数値は超えられないこと
となっていれば問題ありません。
相手カードとの相性による補正数値はまだ正確にわかりませんので、目安の表を別に作ってあります。なので、この表の計算ではとりあえず置いておくつもりです。
カードの組み合わせは1つのデッキに何種類でも組み込む事ができるので、これも制限はありません。
>●同じ属性のカードが何枚あるか表示させたい
右の表から、4枚以上ある属性を別の枠(横にでも追加するつもりです)に抜き出し、その属性が何枚あるのかということを表示させたいです。
属性自体は3種類あり、
10枚の抜き出されたカードが属性a,a,a,b,b,a,c,a,b,bとなったら
aは5 bは4
といった感じです。
わかりにくい説明ですみません;
No,4様の回答で、プログラミングの知識が必要となってくるようですので、さすがに諦めようと思います。
回答どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 戦争・テロ・デモ サイバー攻撃の8割は中国から発言 皆様のご意見をお聞かせください。 8 2022/10/07 12:55
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
- 政治 天皇機関説の否定が日本敗戦の原因ですね? 1 2023/02/25 23:11
- 会社・職場 Excel、Googleスプレッドシートなどへのデータ入力 2 2023/07/06 05:59
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- Excel(エクセル) エクセル、日々の集計整理方法。(再送です。) 5 2022/10/02 00:19
- その他(Microsoft Office) エクセルの関数について 4 2022/07/30 16:42
- Excel(エクセル) エクセルでエラーを無視して一番左側のセルの値を返したい 2 2023/07/27 13:06
- その他(アニメ・マンガ・特撮) ワンパンマンの信者ってアホなんですか? 8 2022/11/13 02:58
- マルウェア・コンピュータウイルス Microsoftサポートをかたる詐欺について 5 2022/03/22 19:22
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カードゲームにハマってお金を...
-
スマホの裏にステッカーやトレ...
-
トランプゲームの「スピード」O...
-
カードゲームで、友達とカード...
-
数当てゲームの仕組みがわかり...
-
ファイナルファンタジー8のディ...
-
Carioca Rummyというゲーム
-
ウォーターワークス(水道管ゲ...
-
ビンゴゲームのカードを作りた...
-
フリーセルの"空きスペース"と...
-
USBポートのないpc9821ノートに...
-
トランプ
-
人生ゲームのルール
-
インディアンポーカーについて...
-
ZIPドライブのSCSIをUSBで使い...
-
FF8のカード集め スコール...
-
遊戯王のパックの名前がわかり...
-
大富豪のやり方!
-
カードやゲームを無くさない工夫
-
トランプ大富豪
おすすめ情報