Bigint

Write here if you have problems with your C++ source code

Moderator: Board moderators

Fresh
New poster
Posts: 46
Joined: Mon Apr 15, 2002 10:42 am
Contact:

...

Post by Fresh » Wed Nov 27, 2002 10:07 am

They do, look at .\contrib\mpi_cpp\mpicpp.h

-novice :wink:

zorbathut
New poster
Posts: 16
Joined: Tue Nov 05, 2002 6:31 am

Post by zorbathut » Wed Nov 27, 2002 10:33 am

*laughs* neat. Thanks :)

Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann » Thu Nov 28, 2002 2:35 am

Yeah, since the author even admits that "high performance was not one of the main design goals", what's the point to use C++ if not operator overloading ;-)

If I just want portable, small and free big number support then I'd use Java's standard library, which has the additional advantage of being... well... standard, so I don't have to search/download/install something extra.

Of course I think that Valladolid still doesn't support Java very well (did this change?) so the above reasoning may be a bit wrong here...

suman
New poster
Posts: 45
Joined: Fri Oct 19, 2001 2:00 am
Contact:

They should provide the support for it

Post by suman » Thu Nov 28, 2002 4:02 pm

Hi,
I agree with stefan. I think they should provide support for math package for java, and gmp (GNU Multi precision) for C++. This thing became so frequent in use that these libraries should be suplied by default.

- Suman

Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann » Thu Nov 28, 2002 4:14 pm

Hmm, we don't agree totally, though. While I do advocate the support of the java.math package here at UVA, I do *not* advocate support for gmp.

Why? Because java.math is part of the Java standard library and it was ripped out of it. gmp on the other hand is a totally different story. Here we're talking about adding an extension that is not part of the standard language. If you request this extension, everybody will start asking for support of his/her favourite extension...

suman
New poster
Posts: 45
Joined: Fri Oct 19, 2001 2:00 am
Contact:

Good point

Post by suman » Fri Nov 29, 2002 6:24 pm

Good Point, I agree again. But then java should have the similar inability like C++, other may argue. :wink:



- Suman

Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann » Fri Nov 29, 2002 6:44 pm

It's not Java's fault that C++'s library is not as rich, so why should it be punished? If a language is not as good for some task as another one, then don't use it.

zorbathut
New poster
Posts: 16
Joined: Tue Nov 05, 2002 6:31 am

Post by zorbathut » Fri Nov 29, 2002 11:02 pm

I think the question you should be asking is, is this a language competition or a problem-solving competition?

Because unless part of the goal of this is to face different languages off against each other, it does seem to make sense to give each language the same basic abilities (if possible).

Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann » Sat Nov 30, 2002 12:08 pm

Yes, in a perfect world all languages would be equally well-suited for problem solving.

Really?

That would mean that the old languages would've to be constantly updated and extended, because the new ones are. You know, there was a reason people created C++. They thought C was not as good as they wanted it to be, so they added all kinds of new stuff to make it superior and I think they succeeded.

Would you want to make C and C++ equally strong? How? Make C stronger? Or make C++ weaker? What about Pascal and Java? I don't think it makes sense to artificially fight against programming language evolution.

After all, what would you say to the best assembler or fortran or cobol programmer on the planet if he asks you why his language isn't supported here? I know what I'd say: Go home, old man. Those languages are dying, and that's for good reasons.

zorbathut
New poster
Posts: 16
Joined: Tue Nov 05, 2002 6:31 am

Post by zorbathut » Sat Nov 30, 2002 1:17 pm

I don't think it makes sense to artificially fight against it ("Oh, and this problem has different constraints if you're using X language") and it seems pretty dumb to restrict the "more powerful" languages, but it also seems that if this is an algorithm contest and not a who-has-the-best-canned-library contest, there's no reason not to include things like publicly accessible BigInt libraries.

I mean, I've got a fraction class I designed myself that works quite nicely, and I'm going to write a BigInt class once I get around to it. Should I have to? *Why* should I have to? At least I don't have to write it multiple times, but as long as I'm using prerolled code, why hold other people back?

I suppose there's an argument to be made that people should know how to do it themselves, but then, that *would* be an argument for restricting something like Java ;)

I guess I honestly don't see the point in leaving out "inferior" languages. If a COBOL or Fortran or assembler programmer wanted into the contest, I'd say sure, as long as they wrote the framework for it, since I wouldn't want to take the time. And I suppose COBOL/Fortran/assembler programmer-of-doom might indeed end up with rational or bigint libraries . . . I don't see a problem with that either. I just don't see why make it harder on them than necessary, harder than other people's, and it seems idiotic to restrict languages.

Of course, the day when the Java stdlib includes Floyd's and max-flow and some bizarre dynamic programming standard interface, I might start to not be quite as happy with their library :P but I doubt that'll happen.

Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann » Sat Nov 30, 2002 2:38 pm

1) Who's gonna do the work to add the BigInt library? Who's gonna add the regular expression library? Who's gonna add the polygon library? Who's...

2) I agree, you shouldn't be forced to write your own BigInt class. You should be able to get a BigInt class for free by using Java.

4) You're right, if somebody wants to use Cobol, then there's no good reason against it. Uh, other than the admin work you already mentioned.

5) Hey, now you're already the third person who tells me about these planned additonal features for Java 1.6... Do you know where I can find more precise info about that?

zorbathut
New poster
Posts: 16
Joined: Tue Nov 05, 2002 6:31 am

Post by zorbathut » Sat Nov 30, 2002 11:57 pm

1) People who use the language and want to add them :P I don't know how this site's system is set up in detail, but it really shouldn't be all that hard to add the headers and link the library in by default. I'd do it, but I doubt they'd let me, I'm not exactly a world-famous trusted competitor ;) Anyway, I don't particularly want a regexp or polygon library right now, I'd be quite happy with just bigint. It doesn't have to happen all at once, and some parts don't even have to happen (like we need a windowing library :P)

2) What if I don't want to use Java? You seem to assume that Java's better in every way, and I think you're wrong.

4) Yeah. That's what I said. And if Joe Cobol User is willing to do the admin work, then there's no good reason against it at all.

Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann » Sun Dec 01, 2002 12:17 am

1+4) I agree, volunteers might be easy to find. But then the admins have to trust them, not only because someone could intentionally do bad stuff, but maybe even more importantly because of unintended accidental stuff. Plus, if you add a C++ thing that's only slightly better than the Java equivalent you use as an excuse, then I will have to catch up and add something even more powerful to Java. Then it's your turn again, then mine, ... :-)

2) You goddamn stubborn moron ;-) Why *don't* you want to use Java? Come out of your cave and enter the 21st century. For some jobs it *is* better. But hey, if I thought Java were better in every way then I wouldn't use C++ in 90% of my programming contest solutions ;-) And it's not like I don't know how to use Java...


Hmm, maybe I'm just too happy with what's already supported and too afraid to ask for more. I've always said I won't use Java unless it's a BigInt problem, and I just added regexs as another reason recently. So in these cases I was just willing to accept I had to change the language...

zorbathut
New poster
Posts: 16
Joined: Tue Nov 05, 2002 6:31 am

Post by zorbathut » Sun Dec 01, 2002 3:52 pm

*nod* the trust's a problem. Anyway, why would you want to catch up with my C++ thing? After all, if your language doesn't include it, clearly you don't really need it . . . ;)

But in any case, I'd just be wanting basic arithmetic and display functions, nothing special. Not like a SolveLinearSystem function or anything :P And Java already has all of that, except for operator overloading which it can't do anyway.

And I don't want to use Java 'cause I don't like it as much ;) Yeah, it helps for some jobs, and the jobs I'm doing aren't any of those :P I'm doing CLI tool development and PS2 development, and, well, Java doesn't factor into those. *shrug* And I don't really want to switch to Java for other stuff, just 'cause I don't know it as well :P though I should probably learn it better. But hey.

Rajib Mazumder
New poster
Posts: 14
Joined: Fri Jul 05, 2002 7:04 pm
Location: Bangladesh
Contact:

Post by Rajib Mazumder » Fri Dec 06, 2002 5:48 pm

Moni wrote::-? Isn't class variables and functions share more memory than simple string processing with pointers? :roll: I think for contests (real time + online) if string processing used with pointers that will be more fast and take less memory. But dangling pointers can crash the program or make RTE ! :wink:
:roll: :roll:

Post Reply

Return to “C++”