Re: small program that generates terms in OEIS sequence A016278

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



--- Michael Schwendt
<mschwendt.tmp0701.nospam@xxxxxxxx> wrote:

> On Tue, 22 Apr 2008 05:00:20 -0700 (PDT), Antonio
> Olivares wrote:
> 
> > Dear all,
> > 
> > I wrote a small program prog1.cpp that cranks out
> the numbers in the sequence A016278 in OEIS
> > 
> >
> http://www.research.att.com/~njas/sequences/A016278
> > 
> > The program runs on slax, but fails to do so on
> rawhide.
> > 
> > [olivares@localhost Documents]$ cat prog1.cpp 
> > #include <iostream.h>
> > #include <stdlib.h>
> > #include <math.h>
> > 
> > int main(int argc, char *argv[])
> > {
> >   int i; 
> >   double j;
> >   for (i=1; i < 16; i++)
> >   {
> >     j =
> >
>
(4.0/7.0)*pow(2.0,i-1)+(-3.0/2.0)*pow(3.0,i-1)+(27.0/14.0)*pow(9.0,i-1);
> >             cout << i << ' ' << j << "\n";
> >   }
> >   return EXIT_SUCCESS;
> > }
> > 
> > [olivares@localhost Documents]$ cat
> /etc/fedora-release 
> > Fedora release 8.93 (Rawhide)
> > [olivares@localhost Documents]$ c++ -o prog1
> prog1.cpp 
> > prog1.cpp:1:22: error: iostream.h: No such file or
> directory
> > prog1.cpp: In function â??int main(int,
> char**)â??:
> > prog1.cpp:13: error: â??coutâ?? was not declared
> in this scope
> > [olivares@localhost Documents]$ 
> 
> > Is there something that needs to be done so that
> the program can compile fine in rawhide?
> > 
> 
> Make it C++. Include <iostream>, <cstdlib>, <cmath>.
> Consider the
> namespaces, e.g. cout is std::cout in global scope.
> Use ios::endl not
> '\n'. Declare i inside the for-statement. Declare j
> inside the for-loop
> body. Then it comes closer to C++.
> 
> -- 
> fedora-test-list mailing list
> fedora-test-list@xxxxxxxxxx
> To unsubscribe: 
>
https://www.redhat.com/mailman/listinfo/fedora-test-list
> 

If I use ios::endl, the program fails, 

[rio@localhost Documents]$ cat prog2.cpp
#include <iostream>
#include <cstdlib>
#include <cmath>
using namespace std;

int main(int argc, char *argv[])
{
 for (int i=1; i < 7; i++)
 {
  double j;
  	j =
(4.0/7.0)*pow(2.0,i-1)+(-3.0/2.0)*pow(3.0,i-1)+(27.0/14.0)*pow(9.0,i-1);
  std::cout << i << ' ' << j << ios::endl;
 }
 return EXIT_SUCCESS;
}

[rio@localhost Documents]$ c++ -o prog2 prog2.cpp
prog2.cpp: In function &#8216;int main(int,
char**)&#8217;:
prog2.cpp:12: error: &#8216;endl&#8217; is not a
member of &#8216;std::ios&#8217;

but if I remove the ios:: part and leave endl; it
works :)

[rio@localhost Documents]$ c++ -o prog2 prog2.cpp
[rio@localhost Documents]$ ./prog2 
1 1
2 14
3 145
4 1370
5 12541
6 113534
[rio@localhost Documents]$ 


Thank you very much Michael, that was what was needed.
 I appreciate yours and Jason's help. Now the program
compiles on Fedora as well.

Regards,

Antonio 




      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ

-- 
fedora-test-list mailing list
fedora-test-list@xxxxxxxxxx
To unsubscribe: 
https://www.redhat.com/mailman/listinfo/fedora-test-list

[Index of Archives]     [Fedora Desktop]     [Fedora SELinux]     [Photo Sharing]     [Yosemite Forum]     [KDE Users]

  Powered by Linux