前提・実現したいこと
ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました
発生している問題・エラーメッセージ
double before = 0.0f, after = 800.1f;
double time1 = 0.0f, time2 = 0.0f;
int flag1 = 0, flag2 = 0, cnt = 0;
if (700 < frames[0].GetAnalogValue(3)) { before = frames[0].GetAnalogValue(3); //UnityEngine.Debug.Log(frames[0].GetAnalogValue(3)); cnt = 1; //UnityEngine.Debug.Log(before); //UnityEngine.Debug.Log(timer); if (before < after && cnt == 1 && flag1 == 0) { time1 = timer; cnt += 1; flag1 = 1; //一度だけ取るため //UnityEngine.Debug.Log("time1=" + time1); //flag2 = 0; //2セット目の時間をとるため // UnityEngine.Debug.Log("1回目の最大値時間を代入"); } else if (before < after && cnt == 2 && flag2 == 0) { time2 = timer; cnt += 2; flag2 = 1; //一度だけ取るため //UnityEngine.Debug.Log("time2=" + time2); //flag1 = 0; //1セット終了 //UnityEngine.Debug.Log("2回目の最大値時間を代入"); GetHeartrate = 60 / time2 - time1; UnityEngine.Debug.Log(GetHeartrate); } if (cnt==3) { before = 0.0f; after = 800.1f; flag10 = 0; flag20 = 0; cnt = 0; } after = before; //UnityEngine.Debug.Log(after); } //UnityEngine.Debug.Log(frames[0].GetAnalogValue(3)); //rawdata出力 //GetHeartrate = ecg.Heartrate(frames[0].GetAnalogValue(3)); //心拍数の計算 //UnityEngine.Debug.Log(GetHeartrate); //心拍数出力
frames[0].GetAnalogValue(3)
これは機材からとってきた値です。
if (before < after && cnt == 1 && flag1 == 0)
の中に入ると
cnt += 1;
flag1 = 1; //一度だけ取るため
この2行を入れているのに
else if (before < after && cnt == 2 && flag2 == 0)
に入らず
if (before < after && cnt == 1 && flag1 == 0)
の中から出てくれません。
どうしてこうなってしまうのでしょうか
エラーメッセージ
該当のソースコード
ソースコード
試したこと
違うプログラムのflag1などが悪さをしているのかと思い消しました。
flag10などの違うプログラムでは使っていない変数にしてもダメでした。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/24 09:20