diff options
author | imushir | 2016-02-09 16:38:27 +0530 |
---|---|---|
committer | imushir | 2016-02-09 16:38:27 +0530 |
commit | ee5bf4d90f78673d1e4d5a9dd304ee53c503c085 (patch) | |
tree | 696221a8f8a3dffeb50d12ea287dfbdfab919fc6 /src/c/matrixOperations/diag/i8diagexa.c | |
parent | 8ee41aca4183a0239b9cb220de3f159b1f0910fb (diff) | |
download | Scilab2C_fossee_old-ee5bf4d90f78673d1e4d5a9dd304ee53c503c085.tar.gz Scilab2C_fossee_old-ee5bf4d90f78673d1e4d5a9dd304ee53c503c085.tar.bz2 Scilab2C_fossee_old-ee5bf4d90f78673d1e4d5a9dd304ee53c503c085.zip |
Support for Servo motor for Arduino. Support for'diag' in c
Diffstat (limited to 'src/c/matrixOperations/diag/i8diagexa.c')
-rw-r--r-- | src/c/matrixOperations/diag/i8diagexa.c | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/src/c/matrixOperations/diag/i8diagexa.c b/src/c/matrixOperations/diag/i8diagexa.c new file mode 100644 index 0000000..56fab85 --- /dev/null +++ b/src/c/matrixOperations/diag/i8diagexa.c @@ -0,0 +1,130 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * 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 "diag.h" +void i8diagexa(int8 *in, int _row,int _column,int extract_post,int8 *out) +{ + + + int j; + if(_row == _column) + { + if(extract_post <= 0) + { + for ( j = 0 ; j < _column ; j++ ) + { + + + out[j] = in[((_column+1)*j)-extract_post] ; + + } + } + else + { + for ( j = extract_post ; j < _column ; j++ ) + { + + + out[j-extract_post] = in[((_column+1)*j)-extract_post] ; + + } + } + + } + else if(_row > _column) + { + + if(extract_post >=0) + { + + for(j = extract_post; j < _column;j++) + { + + out[j-extract_post] = in[((_row+1)*j)-extract_post]; + } + + + } + else + { + + if((abs(extract_post) <= (_row - _column))) + { + for(j = 0; j < _column ; j++) + { + out[j] = in[((_row+1)*j)-extract_post]; + + } + } + else + { + + for(j=0; j < (_row + extract_post);j++) + { + + out[j] = in[((_row+1)*j)-extract_post]; + + } + + + + } + + } + + } + else if (_row < _column) + { + + if(extract_post > 0) + { + if((extract_post <= (_column - _row))) + { + for(j=extract_post;j < _column;j++) + { + out[j-extract_post] = in[((_row+1)*j)-extract_post]; + } + + } + else + { + for(j=extract_post;j < _column;j++) + { + out[j-extract_post] = in[((_row+1)*j)-extract_post]; + } + + } + + } + else + { + + + for(j=0;j < (_row+extract_post);j++) + { + + out[j] = in[((_row+1)*j)-extract_post]; + + + + } + + + + } + + + } + + +} + |