comp.lang.ada
 help / color / mirror / Atom feed
From: "Nasser M. Abbasi" <nma@12000.org>
Subject: can Ada give run-time error or warning for integer division with non-zero remainder?
Date: Sat, 11 Aug 2012 20:14:42 -0500
Date: 2012-08-11T20:14:42-05:00	[thread overview]
Message-ID: <k07028$eok$1@speranza.aioe.org> (raw)


In Ada when dividing 2 integers, the result is an integer
with the remainder ignored.  Hence 3/2 gives 1

----------------------------------
with Ada.Integer_Text_IO ; use Ada.Integer_Text_IO ;

procedure foo4 is
   N : constant integer := 3;
   M : integer;
   
   begin
     M := N/2;
     put(M);
        
end foo4;
--------------------------

>gnatmake foo4.adb
>./foo4
           1

Now, suppose I want to know that a division between 2 integers
has resulted in nonzero remainder that was thrown away. May be
because my algorithm is meant to work only for even values and
an odd value means there was a bug somewhere and I want to
know about it.

Is there any kind of run-time switch to tell it to
check for this? I know I can always add logic myself to
check for this in the code, using rem() for example (which
might be the better solution actually) but I was just
wondering if there is a run-time switch for this.

thanks,
-Nasser



             reply	other threads:[~2012-08-15  2:48 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-12  1:14 Nasser M. Abbasi [this message]
2012-08-12  5:45 ` can Ada give run-time error or warning for integer division with non-zero remainder? J-P. Rosen
2012-08-12  6:45 ` Dmitry A. Kazakov
2012-08-12  7:16 ` Per Sandberg
2012-08-12 14:03   ` Brad Moore
2012-08-12 14:19 ` Robin Vowels
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox