diff options
Diffstat (limited to 'Tests/Tutorial/Step6/directions.txt')
-rw-r--r-- | Tests/Tutorial/Step6/directions.txt | 37 |
1 files changed, 15 insertions, 22 deletions
diff --git a/Tests/Tutorial/Step6/directions.txt b/Tests/Tutorial/Step6/directions.txt index d3e7b05..42b9f06 100644 --- a/Tests/Tutorial/Step6/directions.txt +++ b/Tests/Tutorial/Step6/directions.txt @@ -16,24 +16,21 @@ MathFunctions subdirectory a new source file named MakeTable.cxx will do just th int main (int argc, char *argv[]) { // make sure we have enough arguments - if (argc < 2) - { + if (argc < 2) { return 1; - } + } std::ofstream fout(argv[1],std::ios_base::out); const bool fileOpen = fout.is_open(); - if(fileOpen) - { + if(fileOpen) { fout << "double sqrtTable[] = {" << std::endl; - for (int i = 0; i < 10; ++i) - { + for (int i = 0; i < 10; ++i) { fout << sqrt(static_cast<double>(i)) << "," << std::endl; - } + } // close the table with a zero fout << "0};" << std::endl; fout.close(); - } + } return fileOpen ? 0 : 1; // return 0 if wrote the file } @@ -81,29 +78,25 @@ found and included by mysqrt.cxx. Now let's use the generated table. First, modify mysqrt.cxx to include Table.h. Next, we can rewrite the mysqrt function to use the table: - if (x <= 0) - { - return 0; - } + if (x <= 0) { + return 0; + } // use the table to help find an initial value double result = x; - if (x >= 1 && x < 10) - { + if (x >= 1 && x < 10) { result = sqrtTable[static_cast<int>(x)]; - } + } // do ten iterations - for (int i = 0; i < 10; ++i) - { - if (result <= 0) - { + for (int i = 0; i < 10; ++i) { + if (result <= 0) { result = 0.1; - } + } double delta = x - (result*result); result = result + 0.5*delta/result; std::cout << "Computing sqrt of " << x << " to be " << result << std::endl; - } + } Run cmake or cmake-gui to configure the project and then build it with your chosen build tool. When this project is built it will first build the MakeTable |