Re: Writing a .txt file



On 1 Apr., 14:14, Ulrich Eckhardt <eckha...@xxxxxxxxxxxxxx> wrote:
Lucress Carol wrote:
Does someone has an idea how I can write
the js and the number S in a .txt file?

Looking at your code, you already know how to output the values to stdout.
What you can do is redirect stdout so that your program's output is written
to a file. For that, invoke your program like this:

  yourprogram.exe > output.txt

Alternatively, you can write to a file just as you write to std::cout:

  #include <fstream>

  std::ofstream out("output.txt");
  if(!out)
    throw std::runtime_error("failed to open file");
  out << "S=" << S << std::endl;

Note that both 'out' and 'std::cout' have a common baseclass 'std::ostream',
so you can write a function

  void write_array( std::ostream& out, double const* array, size_t size);

which you could invoke with both an std::fstream and std::cout.

void RandomNum(double small,double big ,int p, double *array)
{
     double range=(big-small)+1;
    for (int i=0; i<p; i++){
   array[i]=small+int(range*rand()/(RAND_MAX + 1.0));
}
}

First thing here is that the formatting is messed up, probably due to a mix
of tabs and spaces. Use only spaces for indention when posting on the
Usenet, and in general that's a good advise, too.

Second thing here is the fact that you are using C++ but passing arrays as
pointer/size combo. You should have used a std::vector instead. Further, it
isn't even done correctly, the size should use a size_t instead. You should
also make a mental note that you can use std::generate to create sequences,
but that's for later when you know C++ much better.

Further, the way that you calculate the random number smells, I wouldn't
make any guarantees that this actually behaves mathematically correct.

srand((unsigned)time(0));

One thing here: please forget about the fact that this style of casts
exists. They are simply dangerous and not even needed in 99.9% of all C++
code. In this case, you should have used static_cast.

Uli

--
C++ FAQ:http://parashift.com/c++-faq-lite

Sator Laser GmbH
Geschäftsführer: Michael Wöhrmann, Amtsgericht Hamburg HR B62 932


Thank you for the fast reply and the advices.

What you can do is redirect stdout so that your program's output is written
to a file. For that, invoke your program like this:
yourprogram.exe > output.txt

Do you mean I have to invoke my program in the console?

my goal ist not to write the array in the file only
the j and S value for every count of the loop.

Second thing here is the fact that you are using C++ but passing arrays as
pointer/size combo. You should have used a std::vector instead. Further, it
isn't even done correctly, the size should use a size_t instead.

size_t??no idea what you are talking about.how would have my
array looked like with size_t? could you please give an example?

Thank you

Lucress

.



Relevant Pages

  • Re: Writing a .txt file
    ... you already know how to output the values to stdout. ... invoke your program like this: ... pointer/size combo. ... please forget about the fact that this style of casts ...
    (microsoft.public.vc.language)
  • Re: Create an Object from an Array Class
    ... I want to invoke a method that takes String[] object as parameter ... this is an array of java.lang.String's). ... create a class of the field type ...
    (comp.lang.java.programmer)
  • Redirecting STDOUT under ActivePerl on Windows XP
    ... I want to redirect STDOUT to a file, and have the redirection apply to ... any programs that I invoke. ... print "outer calling middle\n"; ...
    (comp.lang.perl.misc)
  • Re: Create an Object from an Array Class
    ... invoke(object, objparameters) methods from some Objects. ... I want to invoke a method that takes String[] object as parameter ... this is the internal representation of the class (it means that this is an array of java.lang.String's). ...
    (comp.lang.java.programmer)
  • RE: help with array of functions
    ... If you are attempting to use different functions withint he same array then: ... Declare delegate types ... that dynamic invoke is quite slow ...
    (microsoft.public.dotnet.languages.csharp)