// g05tk Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; using System.IO; namespace NagDotNetExamples { public class G05TKE { static void Main(String[] args) { StartExample(); } public static void StartExample() { try { const int mseed=1; const int m=5; const int n=10; int genid, i, j, subid; double[] lambda = new double[m]; int[] seed = new int[mseed]; int[] x = new int[n]; int ifail; Console.WriteLine("g05tk Example Program Results"); Console.WriteLine(""); // Set the distribution parameter lambda lambda[0] = 0.50e0; lambda[1] = 5.00e0; lambda[2] = 1.00e1; lambda[3] = 5.00e2; lambda[4] = 1.00e3; // Initialise the seed seed[0] = 1762543; // genid and subid identify the base generator genid = 1; subid = 1; // Initialise the generator to a repeatable sequence G05.G05State g05State = new G05.G05State(genid, subid, seed, out ifail); if (ifail != 0) { Console.WriteLine("** Generator initialisation failed with ifail = {0,5}", ifail); goto L40; } // Generate N sets of the M variates for (i = 1 ; i <= n ; i++) { G05.g05tk(m, lambda, g05State, x, out ifail); if (ifail != 0) { Console.WriteLine("** g05tk failed with ifail = {0,5}", ifail); goto L40; } // Display the variates Console.Write(" {0,3}", i); for (j = 1 ; j <= m ; j++) { Console.Write(" {0,10}", x[j - 1]); } Console.WriteLine(""); } // L40: ; // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine( "Exception Raised"); } } } }