// g01ff Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; using System.IO; namespace NagDotNetExamples { public class G01FFE { static string datafile = "ExampleData/g01ffe.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 a, b, p, tol, x; int ifail; bool carryon = true; Console.WriteLine("g01ff Example Program Results"); // Skip heading in data file sr.Reset(); Console.WriteLine(""); Console.WriteLine(" {0}"," P A B X"); Console.WriteLine(""); while (carryon) { try { sr.Reset(); p = double.Parse(sr.Next(), CultureInfo.InvariantCulture); a = double.Parse(sr.Next(), CultureInfo.InvariantCulture); b = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } catch { break; } tol = 0.00e0; // x = G01.g01ff(p, a, b, tol, out ifail); // if (ifail >= 0) { if (ifail == 0) { Console.WriteLine(" {0,8:f3}{1,8:f3}{2,8:f3}{3,10:f3}",p,a,b,x); } else if (ifail > 0) { Console.WriteLine(" {0,8:f3}{1,8:f3}{2,8:f3}{3,10:f3}{4}{5,1}",p,a,b,x," NOTE: ifail = ",ifail); } continue; } else { Console.WriteLine("** g01ff failed with ifail = {0,5}", ifail); break; } } // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine( "Exception Raised"); } } } }