今適応アルゴリズムの勉強をしていて、LMSアルゴリズムのプログラムが書けなくて困っています。誰か教えて下さい。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

FORTRAN ですが以下のようなページがありました。


でもアルゴリズムを理解していればプロ倉ミグは容易なはず。

参考URL:http://maxwell.elcom.nitech.ac.jp/~kikuma/list/l …
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QOTCについて

医療用医薬品については今日の治療薬などで勉強することが可能ですが、OTCについて自分は全く知識がありません。噂によるとドラッグストアにおけるOTCの研修では利益の高いものからお客さんに薦めるように指導されるそうです。そう考えるとドラッグストアへは就職する気はありません。そうではない、OTCの勉強をするために良い本、勉強法などありましたら教えてください。

Aベストアンサー

no-no-planさん おはようございます

 #3です。

 no-no-planさんが薬剤師さんだとしたら、「家庭の医学」と「治療薬マニュアル」は手放さないでいつでも手元に置いておかれる事をお勧めします。私自身も、営業している間はこの2冊は必ず手元に置いて接客しています。

 リュウマチを例に説明しますと、薬局店頭ではリュウマチの効能効果が取れている医薬品は販売する事が出来ません。それは医家向けの要指示薬だからです。でも店頭での対処法は有ります。1つは漢方薬ですね。もう1つは例えば「スターリーミルク」等の免疫力を強める働きのある健康食品を使う事です。
 リュウマチの場合は、免疫機能に狂いが生じて本来なら何にも人体には影響しない免疫が人体に影響する事によって病状が起こります。(これを「自己免疫性疾患」と言います。)従って、この狂った免疫力が元に戻れば治る事も可能な病気なんです。(とは言ってもなかなか難しいですが)そこで、この狂った免疫力を元に戻す物として例えば「スターリーミルク」等を使うと治る(または少しは軽くなる)可能性は高いと言う事です。(「スターリーミルク」の説明は省きます)
 薬局店頭に「リュウマチなんだけど」とか「胃潰瘍なんだけど」とか病名を言って来る患者さんがいます。そう言う患者さんは、ほぼどこかの病院に通院されていて病名を特定されています。でも多くの病院では、3分間診療言う事と機械等に頼った検査結果で判断すると言うことしかしておらず、患者さんがご自身の病気の起こるメカニズムの説明がなされた無いのが事実なんです。その場合、「この本のここに書いてある通り、こう言う理由で病気が起こっているんですよ」と的確に説明できて、その対処法として薬局店頭で販売出来る範疇の物でこんな物が使えるよと説明出来れば、購入に繋がる可能性は高いと思います。例えば「スターリーミルク」みたいな約1ヶ月分で1万円」と言う高価な健康食品で有っても。そう言う高価な物が売れれば、売上貢献だって可能なわけです。
 軽医療の範疇と言われている薬局でも、ただ薬を販売するだけでなくて少しでも治療に近いような効果の優れた物を販売して、お客様に喜ばれたいと考えているのであれば「まずは病気ありき」と言う事を考えて下さい。敵の病気が解らないと治療方針も立たないですから・・・。そう言う意味で、敵の病気の事を知るために「家庭の医学」は手放さず勉強されると言いと思います。

 ご質問の皮膚病の「ジュクジュク云々」の件ですが、私の場合は母の友人の知り合いの方で薬局経営のベテランの方がいて、その方に薬局に薬局店頭での病状の判断方法と薬局で出来る治療の仕方を簡単に教わった事が有ります。それ以外は、数種類の医学書を読みました。
 大きな本屋さんに行けば、医師・看護士・薬剤師等の専門家向け医学書コーナーが有りますよね。そう言う所には、皮膚科が専門でない方(例えば内科医とか整形外科医等)向けの「皮膚病の鑑別方法と治療方法」的な本が売られています。そう言う本の多くは、内科等の開業医があんちょこで診療中に呼んだり出来る簡単に纏まったものも有ります。そう言う本の中から、no-no-planさんが理解し易い本を買われて勉強されたらと思います。そう言う本には、皮膚病の基礎中の基礎の「皮膚病三角形」の事や「患部が状況によっての対処方」等の簡単な説明が出ています。そう言う本は結構役立ちます。
 本気に皮膚科を目指すのであれば、皮膚科専門医でも「まずは目で見て判断」と言う判断方法をします。患部を目で見るだけの判断方法ですから、皮膚科専門医と同じ事が医師法違反にならずに出来る訳です。そう言う意味では、治療と言う事を考えている薬局薬剤師にとっては皮膚科は面白い分野だと思います。この「目で見て判断」ですが、的確な判断が出来る目を養うしか方法がありません。例えば「皮膚病アトラス」的な皮膚病の写真集的な本を読まれて勉強されるのが第一歩だと思います。後は、皮膚科の専門医が、皮膚病を患者さん(素人)向けに書かれたHPも数々有りますから、そう言うHPを読まれるのも大変参考になります。

 また、長々と書いてしまいましたがお解りになりましたでしょうか??解らない事が有りましたら、また質問されたらと思います。

no-no-planさん おはようございます

 #3です。

 no-no-planさんが薬剤師さんだとしたら、「家庭の医学」と「治療薬マニュアル」は手放さないでいつでも手元に置いておかれる事をお勧めします。私自身も、営業している間はこの2冊は必ず手元に置いて接客しています。

 リュウマチを例に説明しますと、薬局店頭ではリュウマチの効能効果が取れている医薬品は販売する事が出来ません。それは医家向けの要指示薬だからです。でも店頭での対処法は有ります。1つは漢方薬ですね。もう1つは例えば「ス...続きを読む

Q万年カレンダーのプログラム(C言語)が分からなくて困っています。

万年カレンダーのプログラム(C言語)が分からなくて困っています。
一応作ってみたけどダメだったので何処がおかしいか指摘してくれると幸いです
あとC言語についてはかなり初心者ですすみません

#include <stdio.h>
int main(void)
{
int d[13]={ 31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 ,31 ,30 ,31 };
char youbi[7][4]={"日","月","火","水","木","金","土"};
int y ,m ,n ,a ,b ,c ,cc ,s ,ss ,e;

printf("西暦 月 日を入力");
scanf("%d ""%d ""%d ",y,m,n);

for(a = 1900 ; a < y ; a++){
if(a % 4 == 0){
if(a % 400 == 0){
s = s+2;
}
else{
s = s+1;
}
}
if(a % 100 == 0){
s = s+1;
}
else{
s = s+2;
}
}

if(y % 4 == 0){
if(y % 400 == 0){
ss = ss+2;
}
else{
ss = ss+1;
}
}
if(y % 100 == 0){
ss = ss+1;
}
else{
ss = ss+2;
}

if(ss == 2){
d[1] = 29;
}
else{
d[1] = 28;
}
for(b = 0 ; b < m+2 ; b++){
e = d[m] + e;
m = m+1;
}
e = e+n;
c = e%7;
s = c+s;
cc = s%7;
printf("%c",youbi[cc]);

return 0;
}

万年カレンダーのプログラム(C言語)が分からなくて困っています。
一応作ってみたけどダメだったので何処がおかしいか指摘してくれると幸いです
あとC言語についてはかなり初心者ですすみません

#include <stdio.h>
int main(void)
{
int d[13]={ 31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 ,31 ,30 ,31 };
char youbi[7][4]={"日","月","火","水","木","金","土"};
int y ,m ,n ,a ,b ,c ,cc ,s ,ss ,e;

printf("西暦 月 日を入力");
scanf("%d ""%d ""%d ",y,m,n);

for(a = 1900 ; a < y ; a++){
if(a % 4 == 0){
i...続きを読む

Aベストアンサー

突っ込みどころ満載ですが…
○プログラムについて
1) #1の人が書いてますが scanf の書式がおかしい。
2) s,ss,e など加算される変数が初期化されていない。
 そもそもs以外はループしてないので加算する必要性自体が無い。
3) for(b = 0 ; b < m+2 ; b++){ のループの中で mをインクリメントしている
 なのでb<m+2は常にtrueになりループから抜けられない。

○万年カレンダーのアルゴリズムについて
4) 閏年の算出方法がおかしい。
 y%4 == 0 && (y%100 != 0 || y%400 ==0) であるはずなのに
 (y%4 == 0 && y%400 ==0) と y%100 != 0 でダブルカウントされている。
5) 基点を1900年1月1日じゃなくて1582年10月15日にするとツェラー(Zeller)の公式が使えます。

QOTC薬剤師のための医学書

5月からOTCで働いている薬剤師です。お客様からいろいろな相談を受けるのですが知識不足のため答えることができないこともあります。特に大学では習わない水虫などのような一般的な疾病に関してOTCの薬剤師が読むと良い医学書と言うか本はないでしょうか。

Aベストアンサー

はじめまして。私は、以前OTC担当のMSをしてました。医学書というよりメーカーごとの添付文書集や、勉強会用の資料とか持ってました。MRなど専門的な資料など持っています。MRの中には、薬剤師の人もいますから、相談したらどうでしょうか。必要な資料を集めてくれると思います。

Qこのプログラムのアルゴリズムを教えていただけませんか?

ファイルlog.txtの文章中からIPアドレスを抜き出し、ip.txtに書き込むというプログラムです。文章は 日付 http attempt from xxxx.xxxx.xxxx.xxxx:ポート番号とう具合に並んでいます。
/*・・・ from IP:portなフォーマットが前提*/
より下でIPを検出しているとおもうのですが、具体的にどういう手順で検出しているのかわかりません。
どうか宜しくお願いします。




#include <stdio.h>
#include <string.h>


void
addLine(const char*,FILE*);

char*
getFromIP(const char*,char*);

int main()
{
FILE*pFileA = fopen("log.txt","rt");
charbuff[256];

if(pFileA){
FILE*pFileB = fopen("ip.txt","wt");
if(pFileB){
for(;fgets(buff,256,pFileA) != NULL;){
char buff2[32] = {'\0'};
addLine(getFromIP(buff,buff2),pFileB);
}
fclose(pFileB);
}
fclose(pFileA);
}
return 0;
}

/*・・・ from IP:portなフォーマットが前提*/
char*
getFromIP(const char* line,char* buff){
const size_t length = strlen(line);
size_ttop,back = length-1,i,k;
for(back = length-1;line[back] != ':';--back);
for(i=0,top = back - 1;i<3;++i){
for(;line[top] != '.';--top);
}
for(;line[top-1] != ' ';--top);
for(i=top,k=0;i<back;buff[k++] = line[i++]);
return buff;
}

void
addLine(const char* str,FILE* pFile){
charbuff[1024];
sprintf(buff,"%s\n",str);
fputs(buff,pFile);
}

ファイルlog.txtの文章中からIPアドレスを抜き出し、ip.txtに書き込むというプログラムです。文章は 日付 http attempt from xxxx.xxxx.xxxx.xxxx:ポート番号とう具合に並んでいます。
/*・・・ from IP:portなフォーマットが前提*/
より下でIPを検出しているとおもうのですが、具体的にどういう手順で検出しているのかわかりません。
どうか宜しくお願いします。




#include <stdio.h>
#include <string.h>


void
addLine(const char*,FILE*);

char*
getFromIP(const char*,char*);

int...続きを読む

Aベストアンサー

あらまあ、わざとややこしく書いてるプログラムみたいですねえ。

じゃあもうちょっとわかりやすく書き直してみますか?

char *getFromIP(const char *line, char *buff)
{
 char *src, *dst;       // 作業用ポインタ
 src = strstr(line, "from"); // fromを見つける
 src += 4;          // fromの文字の分進める
 dst = buff;         // 作業用ポインタ
while(1)
 {
  if(isspace(*src))
  {
   src++;
   continue;        // スペースを読み飛ばす
  }
  else break;        // スペース以外なのでループを抜ける
 }
                // ここでsrcはIPアドレスの先頭を指している
                // 当然dstはbuffの先頭を指している
                // ここから文字列をコピーする
 while(1)
 {
  *dst = *src;        // 文字をコピーする
  if(*dst == ':')      // コロンだったら
  {
   *dst = '\0';       // コロンを終端文字に書き換えて
   break;          // ループを抜ける
  }
  if(*dst == '\0')      // コロンが見つからないまま文字列が終わった場合
  {
   break;          // 仕方がないのでループを抜ける
  }
  dst++;           // ポインタを進める
  src++;           // ポインタを進める
 }
 return buff;         // 戻り値は渡されたbuffのポインタ
}

ということですね。

え、これじゃダメ?

じゃ、コメントつけてみましょか?
char*
getFromIP(const char* line,char* buff){
const size_t length = strlen(line); // 文字列の長さを求めておく
size_t top,back = length-1,i,k;   // 変数定義
for(back = length-1;line[back] != ':';--back);
                   // 文字列の最後から':'(コロン)を探す。
for(i=0,top = back - 1;i<3;++i){   // 見つけたコロンの位置から3回ループ
                   //(コロンの1文字手前の位置をtopにセットしておく)
for(;line[top] != '.';--top);    // ピリオドを見つけるまで一文字ずつ戻っていく。
}
for(;line[top-1] != ' ';--top);   // 3個目のピリオドの前の位置からさらにスペースを探して
                   // 1文字ずつ戻っていく。
                   //(ということは、さっきの
                   // ピリオド探してたのは
                   // どういう意味があるのだろう)
                   // ともかく、この時点でやっと
                   // IPアドレスの先頭位置をみつけた。
                   // ここから文字列をコピー
             
for(i=top,k=0;i<back;buff[k++] = line[i++]);
                   // さっき見つけたコロンの
                   // 位置までbuffに文字をコピーする…
                   // あれ?終端文字をセットしてないよ!
return buff;
                   // おわりかよ!
}

このソースのキモは、
forの構文の使い方です。
for(A;B;C);はA;while(B){C;]と同じですが、読みづらくなります。はっきり言って、わざとやってるとしか思えません。そうでなければforがよっぽど好きなんでしょうね。
すべての一行forをwhileを使って書き直して、適切にインデントをつけるだけで、ずっと見通しがよくなります。やってみてください。

あと、元のソースではbuff2[32]={'\0'}としてます。
これもわざとやってるんでしょうね。
char buff[32];
memset(buff, '\0', 32);
と同じ効果が得られると思いますが、わかりにくいです。
でも、あらかじめ初期化しておかなくてもいいように、最後にちゃんと終端文字をつけてやるほうが安全ですね。

あらまあ、わざとややこしく書いてるプログラムみたいですねえ。

じゃあもうちょっとわかりやすく書き直してみますか?

char *getFromIP(const char *line, char *buff)
{
 char *src, *dst;       // 作業用ポインタ
 src = strstr(line, "from"); // fromを見つける
 src += 4;          // fromの文字の分進める
 dst = buff;         // 作業用ポインタ
while(1)
 {
  if(isspace(*src))
  {
   src++;
   continue;        // スペース...続きを読む

Qブログ検索の検索アルゴリズムについて

ブログ検索の検索アルゴリズムについて、ネットで検索してみたり、自分なりに調べてみたのですが、答えが見つかりませんでしたので、質問させていただきます。

グーグルの検索アルゴリズムはページランク、ヤフーの検索アルゴリズムはHITSアルゴリズム、MSNの検索アルゴリズムはRankNetアルゴリズムだという事までは調べられたのですが、これらのアルゴリズムの適用方法が良くわかりません。

(1)あるワードAを検索した際は、あるワードAを含む記事を持つブログ全体の中で、ブログに対してアルゴリズムが適用され、アルゴリズムが高いランキングをつけたブログ順に、そのブログの記事が上から並ぶ。

(2)あるワードAを検索した際は、あるワードAを含む記事に対してアルゴリズムが適用され、アルゴリズムが高いランキングをつけた記事順に、その記事が上から並ぶ。

上記の(1)と(2)のどちらでしょうか?
また、他にも検索結果に影響がある要素がありましたら、教えていただけないでしょうか?
一方的に質問を請う形で申し訳ないのですが、よろしくお願い致します。

言葉足らずでしたら、補足致します。
どなたか、御教授お願い致します。

ブログ検索の検索アルゴリズムについて、ネットで検索してみたり、自分なりに調べてみたのですが、答えが見つかりませんでしたので、質問させていただきます。

グーグルの検索アルゴリズムはページランク、ヤフーの検索アルゴリズムはHITSアルゴリズム、MSNの検索アルゴリズムはRankNetアルゴリズムだという事までは調べられたのですが、これらのアルゴリズムの適用方法が良くわかりません。

(1)あるワードAを検索した際は、あるワードAを含む記事を持つブログ全体の中で、ブログに対してアルゴリズムが適用...続きを読む

Aベストアンサー

1つ目:
口の軽そうな製作者をとっつかまえるくらいしか、詳細なアルゴリズムを知る方法はないと思います。
1と2で何かしたいことが分かれるのであれば、どちらも試して実験する他ない…というか、それが1番手っ取り早くて簡単です。

2つ目:
>他にも検索結果に影響がある要素
何に対して「他にも」なのかが汲み取れませんでしたが、SEO対策系のことだと推測して回答します。
その1ファイルに絡む要因全てではないかなと思います。
外的要素から内的要素、HTMLファイルの内容全て検索結果判定の考察範囲内のように感じます。
(断言しないのは私がアルゴリズム製作者ではないからです。)
因みに○○アルゴリズムという名前を出されていますが、必ずしもそれらが最優先されるというわけではなさそうです。

的外れでしたらごめんなさい。

QCのプログラムがコンパイル出来なくて困っています。

初めまして、こんにちは。初心者ですがよろしくお願いします。
Cのプログラムがコンパイル出来なくて困っています。

プログラムの内容は

#include<stdio.h>
main(void)
{
printf("test\n");
return 0;
}

という簡単な内容で問題点はないのですが、以下のようなエラーが出てきます。

ビルド開始
C:\FF90\bin\fcc /c @C:\DOCUME~1\root\LOCALS~1\Temp\lyliomph.src
Bad file descriptor
cpp: 重大なエラー: 致命的なエラーを検出しました。翻訳を終了します。
ビルド処理を中断しました。
ビルド中断

他のパソコンでは実行する事が出来るのですが私がいつも使用しているパソコンのみ実行する事が出来なくて困っています。
使用しているコンパイラは「Fortran 90/C Workbench 開発マネージャ V1.0L21」です。

エラー2行目の「C:\FF90\bin\fcc /c @C:\DOCUME~1\root\LOCALS~1\Temp\lyliomph.src」に何かあるのかと思い、見たのですがそれらしき物も見当たりません。
環境変数もちゃんと設定していますし、他のコンパイラ(CPad for Borland C++Compiler や cygwin)でも実行する事が出来なく、また、上記のプログラム以外のプログラムでも同じエラーが出てきます。
もう私程度の知識ではどのような原因があるのか分からず、八方塞で困っています。

言葉足らずな部分が多々あるかと思いますがどうかよろしくお願いします。

初めまして、こんにちは。初心者ですがよろしくお願いします。
Cのプログラムがコンパイル出来なくて困っています。

プログラムの内容は

#include<stdio.h>
main(void)
{
printf("test\n");
return 0;
}

という簡単な内容で問題点はないのですが、以下のようなエラーが出てきます。

ビルド開始
C:\FF90\bin\fcc /c @C:\DOCUME~1\root\LOCALS~1\Temp\lyliomph.src
Bad file descriptor
cpp: 重大なエラー: 致命的なエラーを検出しました。翻訳を終了します。
ビルド処理を中断しました。...続きを読む

Aベストアンサー

★ファイルの文字コードはどうですか?
・『Fortran 90/C Workbench 開発マネージャ V1.0L21』は全く詳しくありませんが、
 ソースファイルの文字コードがシフト JIS コードか、Unicode かの読み込みオプションが
 あって、そこの指定が異なっているからエラーが出るなんて事ありますか?
・通常、ソースファイルの文字コードはシフト JIS コードですよね。でも、もしかしたら?
・参考までに確認などをそうぞ。
・以上。

Q数学のアルゴリズム

コンピュータが数値を数学的に処理する際のアルゴリズムは人間が数学を解く時のアルゴリズムと同じ、端的にいえば「プログラムのアルゴリズム=数学の解法のアルゴリズム」なのでしょうか?

Aベストアンサー

「どういう解法で、アルゴリズムを組むか」です。

数学の公式を知っている人なら、その公式を使ったアルゴリズムにする場合があります。
一方、公式を知らなければ、自分なりの解法で、アルゴリズムを作ることになる場合もあります。

机上の数式そのものを、プログラミング言語で表現できる訳ではないので、プログラミング言語で計算できる形に変えていきます。
また、コンピュータで計算する場合、何も考えないでプログラミングすると、表現できるデータに限度があり、浮動小数点だけでなく、大きな値と小さな値を早い段階で演算することで、小さい値の方が欠落してしまう場合があります。そのため、机上での算出順とは別の順序で演算していくといった工夫をします。

また、膨大な計算を行う場合、計算速度を上げるため、コンパイラの特性に合わせて、演算の種類や演算順序を変えるといった工夫もします。

Qドロネー三角形分割のプログラムを作成中なのですが、参考プログラムが読めなく困っています。

ドロネー三角形分割のプログラムを作成中なのですが、参考プログラムが読めなく困っています。
ソースコードは以下の様になります。
--------------------------------------------------
bool incircle(point a, point b, point c, point p) {
a -= p; b -= p; c -= p;
return norm(a) * cross(b, c)
+ norm(b) * cross(c, a)
+ norm(c) * cross(a, b) >= 0; // < : inside, = cocircular, > outside
}
#define SET_TRIANGLE(i, j, r) \
E[i].insert(j); em[i][j] = r; \
E[j].insert(r); em[j][r] = i; \
E[r].insert(i); em[r][i] = j; \
S.push(pair<int,int>(i, j));
#define REMOVE_EDGE(i, j) \
E[i].erase(j); em[i][j] = -1; \
E[j].erase(i); em[j][i] = -1;
#define DECOMPOSE_ON(i,j,k,r) { \
int m = em[j][i]; REMOVE_EDGE(j,i); \
SET_TRIANGLE(i,m,r); SET_TRIANGLE(m,j,r); \
SET_TRIANGLE(j,k,r); SET_TRIANGLE(k,i,r); }
#define DECOMPOSE_IN(i,j,k,r) { \
SET_TRIANGLE(i,j,r); SET_TRIANGLE(j,k,r); \
SET_TRIANGLE(k,i,r); }
#define FLIP_EDGE(i,j) { \
int k = em[j][i]; REMOVE_EDGE(i,j); \
SET_TRIANGLE(i,k,r); SET_TRIANGLE(k,j,r); }
#define IS_LEGAL(i, j) \
(em[i][j] < 0 || em[j][i] < 0 || \
!incircle(P[i],P[j],P[em[i][j]],P[em[j][i]]))
double Delaunay(vector<point> P) {
const int n = P.size();
P.push_back( point(-inf,-inf) );
P.push_back( point(+inf,-inf) );
P.push_back( point( 0 ,+inf) );
int em[n+3][n+3]; memset(em, -1, sizeof(em));
set<int> E[n+3];
stack< pair<int,int> > S;
SET_TRIANGLE(n+0, n+1, n+2);
for (int r = 0; r < n; ++r) {
int i = n, j = n+1, k;
while (1) {
k = em[i][j];
if (ccw(P[i], P[em[i][j]], P[r]) == +1) j = k;
else if (ccw(P[j], P[em[i][j]], P[r]) == -1) i = k;
else break;
}
if (ccw(P[i], P[j], P[r]) != +1) { DECOMPOSE_ON(i,j,k,r); }
else if (ccw(P[j], P[k], P[r]) != +1) { DECOMPOSE_ON(j,k,i,r); }
else if (ccw(P[k], P[i], P[r]) != +1) { DECOMPOSE_ON(k,i,j,r); }
else { DECOMPOSE_IN(i,j,k,r); }
while (!S.empty()) {
int u = S.top().first, v = S.top().second; S.pop();
if (!IS_LEGAL(u, v)) FLIP_EDGE(u, v);
}
}
double minarg = 1e5;
for (int a = 0; a < n; ++a) {
for (set<int>::iterator itr = E[a].begin(); itr != E[a].end(); ++itr) {
int b = *itr, c = em[a][b];
if (b < n && c < n) {
point p = P[a] - P[b], q = P[c] - P[b];
minarg = min(minarg, acos(dot(p,q)/abs(p)/abs(q)));
}
}
}
return minarg;
}

--------------------------------------------------
http://www.prefield.com/algorithm/geometry/delaunay.htmlのサイト様のものなんですが、私自身c++プログラム初心者なので、わからず困っています。。概要でも結構ですのでどなたか回答してくださる方いらっしゃれば回答よろしくお願いします。

ドロネー三角形分割のプログラムを作成中なのですが、参考プログラムが読めなく困っています。
ソースコードは以下の様になります。
--------------------------------------------------
bool incircle(point a, point b, point c, point p) {
a -= p; b -= p; c -= p;
return norm(a) * cross(b, c)
+ norm(b) * cross(c, a)
+ norm(c) * cross(a, b) >= 0; // < : inside, = cocircular, > outside
}
#define SET_TRIANGLE(i, j, r) \
E[i].insert(j); em[i][j] = r; \
E[j]....続きを読む

Aベストアンサー

 具体的にどの部分が解らないのかを明示していただかないと、これだけでは、何がわからないのかが解らないと思いますよ。

 あくまで想像ですが、
  set<int> E[n+3]; や stack< pair<int,int> > S;
の部分が解らないのであれば、STLを調べてみてください。
C++ STL でぐぐれば沢山ヒットします。

QドラッグストアのOTC

こんにちは、私は去年薬剤免許を取りました。そのとき勉強した内容の1つに医薬品のれい売(漢字忘れました・・・)についてがありました。OTCの販売において、お店で1錠だけ買える。という内容です。当時その事実を知ったときにとても驚いた記憶があるので、OTCのれい売ができるのは間違った勘違いな知識ではないと思います。しかし、先日某ドラッグストアにてOTCのビオフェルミンを3錠のみ買おうとしたら断られました。かなりきわどいラインの法律なので、どなたか詳しく知っている方教えてください。

Aベストアンサー

こんにちは。

厚生労働省のHPにこういうのがありました。

http://wwwhourei.mhlw.go.jp/hourei/cgi-bin/t_docframe2.cgi?MODE=tsuchi&DMODE=SEARCH&SMODE=NORMAL&KEYWORD=%95%aa%8a%84%94%cc%94%84&EFSNO=2719&FILE=FIRST&POS=0&HITSU=8

http://wwwhourei.mhlw.go.jp/hourei/cgi-bin/t_docframe2.cgi?MODE=tsuchi&DMODE=SEARCH&SMODE=NORMAL&KEYWORD=%95%aa%8a%84%94%cc%94%84&EFSNO=2726&FILE=FIRST&POS=0&HITSU=7

 ビオフェルミンの添付文書のコピーを付けて、さらに、そのドラッグストアの住所、薬剤師の氏名となるとかなり面倒ですよね。#2さんがおっしゃっているように、あらかじめ、10錠単位に分けて作っている場合以外は、なかなか難しいのではないでしょうか。

薬剤師さんのお仕事、がんばってくださいね。

参考URL:http://wwwhourei.mhlw.go.jp/hourei/cgi-bin/t_docframe2.cgi?MODE=tsuchi&DMODE=SEARCH&SMODE=NORMAL&KEYWORD=%95%aa%8a%84%94

こんにちは。

厚生労働省のHPにこういうのがありました。

http://wwwhourei.mhlw.go.jp/hourei/cgi-bin/t_docframe2.cgi?MODE=tsuchi&DMODE=SEARCH&SMODE=NORMAL&KEYWORD=%95%aa%8a%84%94%cc%94%84&EFSNO=2719&FILE=FIRST&POS=0&HITSU=8

http://wwwhourei.mhlw.go.jp/hourei/cgi-bin/t_docframe2.cgi?MODE=tsuchi&DMODE=SEARCH&SMODE=NORMAL&KEYWORD=%95%aa%8a%84%94%cc%94%84&EFSNO=2726&FILE=FIRST&POS=0&HITSU=7

 ビオフェルミンの添付文書のコピーを付けて、さらに、そのドラッグストアの住所...続きを読む

Qプログラムの勉強

今来年の基本情報処理技術者試験の勉強をしています

午後の課題に「プログラム」が必須になってくるのですが4言語から一つ選択で「C言語」を選択予定です

そこでプログラムを実際に組むためのソフトが必要になってくるのですが、どのようなソフトがお勧めでしょうか?

プログラムに関してまったくの初心者です
今パソコンは Windows Xp を使用しています

Aベストアンサー

書籍なのども多いので、MicrosoftのVisual Studio C++ Expressをインターネットよりダウンロードされてはいかがでしょうか?
個人使用であれば無料です。
また、企業向けのProfessional等は多くの会社で使われていますので、今後役立つと思います。
ただ、C++は、C言語の拡張言語ですので、その拡張機能の部分は試験には不要ですので、その点では、C言語専用のものを見つけた方がよいかもしれませんが。。。調べてみないとわかりません。(^^;;


人気Q&Aランキング

おすすめ情報