// g01aa Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; using System.IO; namespace NagDotNetExamples { public class G01AAE { static string datafile = "ExampleData/g01aae.d"; static void Main(String[] args) { if (args.Length == 1) { datafile = args[0]; } StartExample(); } public static void StartExample() { try { DataReader sr = new DataReader(datafile); double s2, s3, s4, wtsum, xmax, xmean, xmin; int i, iwt, j, n, nprob; int ifail; Console.WriteLine("g01aa Example Program Results"); // Skip heading in data file sr.Reset(); sr.Reset(); nprob = int.Parse(sr.Next()); for (j = 1; j <= nprob; j++) { sr.Reset(); n = int.Parse(sr.Next()); iwt = int.Parse(sr.Next()); if (n > 0 ) { double[] wt = new double[n]; double[] wtin = new double[n]; double[] x = new double[n]; sr.Reset(); for (i = 1; i <= n; i++) { x[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } if (iwt == 1) { sr.Reset(); for (i = 1; i <= n; i++) { wtin[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } F06.f06ef(n, wtin, 1, wt, 1, out ifail); } // G01.g01aa(n, x, ref iwt, wt, out xmean, out s2, out s3, out s4, out xmin, out xmax, out wtsum, out ifail); // if (ifail >= 0) { Console.WriteLine(""); Console.WriteLine(" {0}{1,5}", "Problem ", j); Console.WriteLine(" {0}{1,5}", "Number of cases ", n); Console.WriteLine(" {0}", "Data as input -"); for (i = 1; i <= n; i++) { Console.Write(" {0, 12:f1}{1}", x[i - 1], i%5==0?"\n":""); } Console.WriteLine(""); if (iwt == 1) { Console.WriteLine(" {0}", "Weights as input -"); for (i = 1; i <= n; i++) { Console.Write(" {0, 12:f1}{1}", wtin[i - 1], i%5==0?"\n":""); } Console.WriteLine(""); } Console.WriteLine(""); } if (ifail == 0) { Console.WriteLine(" {0}", "Successful call of g01aa"); Console.WriteLine(" {0}{1,5}", "No. of valid cases ", iwt); Console.WriteLine(" {0}{1,13:f1}", "Mean ", xmean); Console.WriteLine(" {0}{1,13:f1}", "Std devn ", s2); Console.WriteLine(" {0}{1,13:f1}", "Skewness ", s3); Console.WriteLine(" {0}{1,13:f1}", "Kurtosis ", s4); Console.WriteLine(" {0}{1,13:f1}", "Minimum ", xmin); Console.WriteLine(" {0}{1,13:f1}", "Maximum ", xmax); Console.WriteLine(" {0}{1,13:f1}", "Sum of weights", wtsum); } else if (ifail > 0) { Console.WriteLine(" {0}", "Unsuccessful call of g01aa"); Console.WriteLine(" {0}{1,5}", "ifail =", ifail); if (ifail == 2) { Console.WriteLine(" {0}{1,5}", "No. of valid cases", iwt); Console.WriteLine(" {0}{1,13:f1}", "Mean ", xmean); Console.WriteLine(" {0}{1,13:f1}", "Minimum ", xmin); Console.WriteLine(" {0}{1,13:f1}", "Maximum ", xmax); Console.WriteLine(" {0}{1,13:f1}", "Sum of weights", wtsum); Console.WriteLine(" {0}", "Std devn and coeffts of skewness"); Console.WriteLine(" {0}", "and kurtosis not defined"); } } else { Console.WriteLine("** g01aa failed with ifail = {0,5}", ifail); goto L40; } } else { goto L40; } } L40: ; // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine( "Exception Raised"); } } } }