![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
BM法(ボイヤームーア法)について
VisualC++にて、BM法のプログラムを作りたいと思いましたが、書き方が、わかりません。
概要を下記にまとめますので、どなたか、作ってみてくれませんか?
お早めにお願いします!!
1.scanf(入力関数(これ以外でも可))にて、テキスト(検索される文字列)を入力する。
2.上記にて、パターン(比較する文字列)を入力する。
3.BM法にて、1.と2.を比べて、あったら、"○○文字目にありました。\n\n"
4.続けて検索するか、しないか(While(これ以外でも可))を入力してもらう。(C(大文字か、小文字のC)を入力したら、続ける。E(大文字か、小文字のE)を入力したら、終了する)))
上記のような、プログラム作りは可能でしょうか?
可能なら、作ってみてくれませんか?
不可能なら、どこがダメか、どうしたらよいか、を踏まえ、サンプル的なプログラムを作ってみてくれませんか?
お願いします。
No.3ベストアンサー
- 回答日時:
BM法を本当に知っているならそんなにむずかしいことではありません
プレーンのBM法だったら技術のレベルとしては従来の(それ以前の)検索方法とほとんど
かわりません
プレーンでなくジャンプテーブルを使う場合がちょっと複雑のように見えますが
それもジャンプテーブルを作ってしまえばあとはらくです
フルコードのサンプルもネットにありますので参考にするとよいでしょう
No.2
- 回答日時:
>BM法のプログラムを作りたいと思いました
この文と
>どなたか、作ってみてくれませんか?
この文って、矛盾してませんか?
「自分で」作りたいんじゃないんですか?
「自分の頭と手を」フルに使ってこそ、あなたのプログラミング能力が
向上するんじゃないんですか?
プログラミングのいちばんおいしいところを人に任せてどうするんですか?
この回答への補足
ご解答ありがとうございます。
考えて、ネットを見て回ったりもしましたが、ぜんぜんっていいほどわかりません。
つまり、意味はわかりますが、プログラムを作るまではできない程度。
なので、詳しい方のプログラムを教えていただき、勉強したいと思いました。
書き方が、悪くてすみません・・・
No.1
- 回答日時:
書き方:
1. BM のアルゴリズムを調べて理解する.
2. そのアルゴリズムを C なり C++ なりで実装する (これは普通関数にするんだろうなぁ).
3. その他の部分を作る.
4. 全体をデバッグしてきちんと動作することを確かめる.
「書き方がわからない」ということだから, これで十分だよね.
この回答への補足
ご解答ありがとうございます。
意味は、わかります。
しかし、プログラムに直す作業(プログラミング)がわからなく、そこを教えていただけませんか?(詳しくは、どんな風になるかを、サンプルみたいなもんを作ってみていただけませんか?)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- PHP ここで言う空文字の意味とは? 1 2022/08/05 16:27
- Java Java 南京錠 2 2023/02/04 11:46
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- Java Javaの問題なのですが、「3文字以上の英数字文字列を入力し、文字列の中に文字(9)が出てくるまでの 1 2023/06/06 18:55
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングの課題で1万円か...
-
プログラミングソフトパスカル...
-
PICのプログラムでsrandを使う...
-
JCLの基本について教えてください
-
LEDイルミの点滅プログラムを教...
-
変数の値が勝手に変化する原因
-
Segmentation fault
-
Visual C++ 2005 のプログラム...
-
無限ループとループ文
-
basicで書いた測量プログラムが...
-
プログラミング
-
c言語のプログラミング 2つの整...
-
360度を超える角度
-
最近c言語始めたばかりなんです...
-
65536は2の何乗なのでしょうか?
-
0除算して、落ちるプログラムと...
-
Excelで4096点以上のFFTの方法
-
排他的論理和 BCC(水平パリテ...
-
c言語でsinx=0(0<x<5)をニュー...
-
Bluestacks内でダウンロードし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【JAVA】数字をひし形に出力す...
-
プログラミング
-
ruby
-
変数の値が勝手に変化する原因
-
JCLの基本について教えてください
-
Fortran90についての質問です。
-
fortran if文
-
3つの整数のうち奇数のみを表示...
-
Sublime Text 3でのFortranプロ...
-
Matlabについて質問2
-
ProC 固定SQLでNULLってどう表...
-
COBOLのピリオド
-
360度を超える角度
-
main関数終了時のreturnの意味は?
-
Visual Basic 三辺の長さ? ...
-
c言語です
-
C言語 バッファについて。
-
c言語のプログラミング 2つの整...
-
_dupenv_s関数でメモリリーク
-
N88basicを用いたGPIB制御
おすすめ情報