From 277d1edfa17bf3719d90ddbac8e31f6181e952c3 Mon Sep 17 00:00:00 2001
From: Sandeep Gupta
Date: Sun, 18 Jun 2017 23:55:40 +0530
Subject: First commit

---
 src/c/auxiliaryFunctions/find/sfinda.c | 41 ++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 src/c/auxiliaryFunctions/find/sfinda.c

(limited to 'src/c/auxiliaryFunctions/find/sfinda.c')

diff --git a/src/c/auxiliaryFunctions/find/sfinda.c b/src/c/auxiliaryFunctions/find/sfinda.c
new file mode 100644
index 00000000..ac445fac
--- /dev/null
+++ b/src/c/auxiliaryFunctions/find/sfinda.c
@@ -0,0 +1,41 @@
+/*
+ *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ *  Copyright (C) 2007-2008 - INRIA - Bruno JOFRET
+ *
+ *  This file must be used under the terms of the CeCILL.
+ *  This source file is licensed as described in the file COPYING, which
+ *  you should have received as part of this distribution.  The terms
+ *  are also available at
+ *  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ *
+ */
+
+#include "find.h"
+
+void sfinda(float* x, int size, float* out, int max)
+{
+    int i = 0;
+    int j = 0;
+
+
+    /* if out is empty */
+    out[0]=-1;
+
+
+    for (i = 0; i < size ; ++i)
+    {
+        /*to avoid useless search if we only want to find the  max first founded value   */
+        if (j == max  )
+        {
+            return ;
+        }
+
+        if (x[i] != 0)
+        {
+            out[j] = (float)(i+1);
+            ++j;
+        }
+    }
+}
+
+
-- 
cgit