View previous topic :: View next topic |
Author |
Message |
SaintMichael57
Joined: 28 Nov 2016 Posts: 14
|
Posted: Wed Feb 21, 2018 6:37 pm Post subject: A Fortran 90/95 Equivalent of Pascal |
|
|
Dear Silverfrost Community:
Do any of you know of a function (intrinsic or otherwise) that returns the
same argument as that of the DIV intrinsic function of Pascal? Thank you.  |
|
Back to top |
|
 |
mecej4
Joined: 31 Oct 2006 Posts: 1899
|
Posted: Wed Feb 21, 2018 8:12 pm Post subject: |
|
|
Did you mean 'result' rather than 'argument'?
No function is needed. If a and b are of type INTEGER, a/b gives you the integer quotient. If either is of some other type, and if appropriate, use INT(a)/INT(b) . |
|
Back to top |
|
 |
SaintMichael57
Joined: 28 Nov 2016 Posts: 14
|
Posted: Wed Feb 21, 2018 10:27 pm Post subject: A reply |
|
|
Dear mecej4:
I meant "result" rather than "argument." Thank you.  |
|
Back to top |
|
 |
mecej4
Joined: 31 Oct 2006 Posts: 1899
|
Posted: Fri Mar 02, 2018 12:50 pm Post subject: Re: |
|
|
John-Silver wrote: | ... or INT(AINT(A/B)) maybe , for any A,B integer or real ? | In Pascal, the two operands of the div operator must be one of the integer types. The result (the quotient) is also of integer type. The Fortran intrinsic AINT must be given a real argument, and I see no reason to use it for the purpose stated in the first post. For many combinations of values, such as A = 65537 and B = 4097, INT(AINT(A/B)) gives the wrong result. In this case, it gives 16, whereas the actual quotient is 15. |
|
Back to top |
|
 |
mecej4
Joined: 31 Oct 2006 Posts: 1899
|
Posted: Mon Mar 05, 2018 11:54 pm Post subject: |
|
|
That looks reasonable and appropriate -- for a CDC 6xxx machine. The 6XXX CPUs did not have instructions for general integer arithmetic! |
|
Back to top |
|
 |
|