From: Adrian Hoe <AdrianHoe@nowhere.com>
Subject: Re: Question from newbie
Date: Wed, 18 Feb 2004 18:24:49 +0800
Date: 2004-02-18T18:24:49+08:00 [thread overview]
Message-ID: <40333d38_1@news.tm.net.my> (raw)
In-Reply-To: <ply8r0g05q.fsf@sparre.crs4.it>
Jacob Sparre Andersen wrote:
> Cecilia Chew wrote:
>
>
>>with Ada.Text_Io, Ada.Integer_Text_Io;
>>use Ada.Text_Io, Ada.Integer_Text_io;
>>
>>procedure Sort is
>> subtype Index is Integer range 1 .. 10;
>> subtype Char is Character range 'a' .. 'z';
>> type Str is array (Index) of Char;
>> procedure Ascending (Left : in out Character; Right : in out
>>Character);
>>
>> procedure Ascending (Left : in out Character; Right : in out
>>Character) is
>>
>> Temp : Character;
>> begin
>> if Left > Right then
>> Temp := Left;
>> Left := Right;
>> Right := Temp;
>> end if;
>> end Ascending;
>>
>> Num : Index;
>> Input : Str;
>>
>>begin
>> Put ("Please enter the number of character : ");
>> Get (Num);
>> Ada.Text_Io.Skip_Line;
>> New_Line;
>> if Num not in Index then
>
>
> This check should not be necessary. Since "Num" is of the subtype
> "Index", it _can_ only have values that are in "Index". You should on
> the other hand get a "Constraint_Error", if you try to enter a number
> that is not in the range of "Index".
>
>
>> Put ("Please enter 1 to 10 characters only!");
>> else
>> Put ("Please enter" & Integer'Image(Num) & " characters : ");
>> for Character_number in Index'First .. Num loop
>> Get (Input(Character_number));
>
>
> [ here's line 36 - I think ]
>
> Did you actually enter "Num" characters in the range 'a' .. 'z'?
>
> A "Constraint_Error" indicates that something is out of range. It
> can't be "Character_Number", since both "Index'First" and "Num" are
> valid values of the subtype "Index" (and "Character_Number" thus
> always will be a valid index for the array "Input").
>
> The alternative is that the character you entered wasn't in the valid
> range for "Input (Character_Number)", i.e. in the range 'a' .. 'z'.
No. That is fine. Look into line 36 carefully and you shall find the
mistake. :)
--
Adrian Hoe
m a i l b o x AT a d r i a n h o e . c o m
next prev parent reply other threads:[~2004-02-18 10:24 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-16 2:43 Question from newbie Cecilia Chew
2004-02-16 10:49 ` Luke Guest
2004-02-16 10:53 ` Preben Randhol
2004-02-16 15:46 ` Jacob Sparre Andersen
2004-02-16 16:14 ` Preben Randhol
2004-02-18 9:52 ` Cecilia Chew
2004-02-18 10:19 ` Jacob Sparre Andersen
2004-02-18 10:24 ` Adrian Hoe [this message]
2004-02-18 10:24 ` Adrian Hoe
2004-02-18 10:21 ` Adrian Hoe
2004-02-16 11:20 ` Jacob Sparre Andersen
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox