[1]
1.2つのtxtにはそれぞれa,bの文字列があります。
例)d.txt aaaaaabbbbbbaabbbbbbbbbaaaaaaaaaaaaa
t.txt aaaabbbbbbbbaaaaaabbbbbbbbbbbaaaaaab
これらのテキストを読み込み、1に対してどのくらい文字が同じになっているのかを何%で表したいです。
2.[code]
#include <stdio.h>
int main(void)
{
int i;
FILE *file;
file = fopen("d.txt","r");
fscanf(file,"%d",&i);
fclose(file);
printf("%d\n",i);
return 0;
}
[/code]
3.2つのtxtの読み込みはどうしたらいいのでしょうか。
2つのtxtに対しての文字の合っている割合はどう処理また、計算すればいいですか。
[2]環境
1.OS:Linux
2.TeraTerm ?
[3]
プログラミングは初心者です。まだ始めたばかりです。
2つの文字列がどのくらい合っているかの割合を求めたいです
Re: 2つの文字列がどのくらい合っているかの割合を求めたいです
codeの周りのかっこが全角になっているので、コードが正しく表示されていませんね。記事の送信の際はプレビューして問題ないか確認してから送信することをお勧めします。
あとは、読み込んだ全体数と一致していた数を使えば割合が求められるはずです。
やりたいことはだいたいわかりますが、仕様書としては不十分なところがあるように思えます。例えば、二つのテキストの文字列が違う場合、どのような処理をするつもりですか?(短い方に合わせる or 長い方に合わせる etc...)これらのテキストを読み込み、1に対してどのくらい文字が同じになっているのかを何%で表したいです。
提示されたコードではd.txtしか読み込んでいないようなので、d.txt、t.txtそれぞれ読み込み処理を行ってください。2つのtxtの読み込みはどうしたらいいのでしょうか。
まず、文字を読み込んで比較するためには文字列を格納する必要があるので、char型の配列が必要です。読み込んだchar型の値に対して、t.txtの配列とd.txtの配列についてそれぞれ比較すれば大丈夫そうですね。C言語であれば、 のようにして比較することができると思います。2つのtxtに対しての文字の合っている割合はどう処理また、計算すればいいですか。
あとは、読み込んだ全体数と一致していた数を使えば割合が求められるはずです。
Re: 2つの文字列がどのくらい合っているかの割合を求めたいです
この例の場合、何%としたいのですか?例)d.txt aaaaaabbbbbbaabbbbbbbbbaaaaaaaaaaaaa
t.txt aaaabbbbbbbbaaaaaabbbbbbbbbbbaaaaaab
仮にコンピューターを使わずに手計算するとしたら、どういう手順を踏みますか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。
プログラムは思ったとおりには動かない。書いたとおりに動く。
Re: 2つの文字列がどのくらい合っているかの割合を求めたいです
どうしてさっきみたいなことを聞いたかというと、例えば
ab
ba
という2つの文字列を比べた結果を何%にしたいのかな?という疑問がわいたからです。
先頭から1文字ずつ比べる方法だと全く一致しませんが、
aの数とbの数という観点に立つと、完全に一致しますよね。
なので、
ab
ba
という2つの文字列を比べた結果を何%にしたいのかな?という疑問がわいたからです。
先頭から1文字ずつ比べる方法だと全く一致しませんが、
aの数とbの数という観点に立つと、完全に一致しますよね。
なので、
という問いかけに対しては、質問者さんはどうしたいのですか?という逆質問となります。2つのtxtに対しての文字の合っている割合はどう処理また、計算すればいいですか。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。
プログラムは思ったとおりには動かない。書いたとおりに動く。