online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
#include <iostream> #include <math.h> using namespace std; double numerador[8] = { 0 }; double denominador[8] = { 0 }; double Binomial_E (double a, int n) { if (n == 0.0) return 1.0; else return (1.0 - (1.0 + a) / n) * Binomial_E (a, n - 1.0); } double Binomial (double a, int n) { if (n == 0.0) return 1.0; else return ((a + 1.0) / n - 1.0) * Binomial (a, n - 1.0); } void IIR_Pade (double alpha, double T, int orderPade, double operador, double A[], double B[]) { int L = (2 * orderPade) + 1; double h[15] = { 0 }; double Gain = pow ((1 / T), alpha); for (int n = 0; n <= L; n++) { for (int k = 0; k <= n; k++) { h[n] +=pow (operador, -alpha - n + k) * pow (1.0 - operador,n - k) * Binomial_E (alpha,k) *Binomial (-alpha, n - k); } h[n]=h[n]*Gain; } int LM = 2 * orderPade; double H2[orderPade][LM]; double temp; for (int i = 0; i < orderPade; i++) { for (int j = 0; j < LM; j++) { if (j == (i + orderPade)) { H2[i][j] = 1; } else { H2[i][j] = 0; } if (j < orderPade) { H2[i][j] = h[i - j + orderPade]; } } } for (int i = orderPade - 1; i > 0; i--) { if (H2[i - 1][0] < H2[i][0]) for (int j = 0; j < LM; j++) { temp = H2[i][j]; H2[i][j] = H2[i - 1][j]; H2[i - 1][j] = temp; } } for (int i = 0; i < orderPade; i++) { for (int j = 0; j < orderPade; j++) { if (j != i) { temp = H2[j][i] / H2[i][i]; for (int k = 0; k < LM; k++) { H2[j][k] -= H2[i][k] * temp; } } } } for (int i = 0; i < orderPade; i++) { temp = H2[i][i]; for (int j = 0; j < LM; j++) { H2[i][j] = H2[i][j] / temp; } } B[0] = 1; for (int i = 0; i < orderPade; i++) { for (int j = 0; j < orderPade; j++) { B[i + 1] -= H2[i][j + orderPade] * h[j + orderPade + 1]; } } double H1[orderPade + 1][orderPade + 1]; for (int i = 0; i <= orderPade; i++) { for (int j = 0; j <= orderPade; j++) { if (j <= i) { H1[i][j] = h[i - j]; } else { H1[i][j] = 0; } } } for (int i = 0; i <= orderPade; i++) { for (int j = 0; j <= orderPade; j++) { A[i] += H1[i][j] * B[j]; } cout << A[i] << " "; } cout << endl; for (int i = 0; i <= orderPade; i++) { cout << B[i] << " "; } } int main () { IIR_Pade (1, 0.001, 1, 1, numerador, denominador); return 0; }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue