comp.lang.ada
 help / color / mirror / Atom feed
From: "Steve" <nospam_steved94@comcast.net>
Subject: Re: questions from a newbie
Date: Thu, 15 Jul 2004 13:45:32 GMT
Date: 2004-07-15T13:45:32+00:00	[thread overview]
Message-ID: <0UvJc.83034$MB3.55228@attbi_s04> (raw)
In-Reply-To: 40f684a8@dnews.tpgi.com.au

"zork" <zork@nospam.com> wrote in message news:40f684a8@dnews.tpgi.com.au...
> Hi, I just started a course in ada. I just have 2 questions at present.
>
> -------------
> q1) can:
>
> c : character;
>
> if c in 'A'..'Z' or c in 'a'..'z' or c in '0'..'9' then
>    ....
> end if;
>
> be written as something like:
>
> c : character;
>
> if c in ('A'..'Z', 'a'..'z', '0'..'9') then
>    ....
> end if;
> -------------

Not directly, but you can make use the of standard Ada libraries:
  Ada.Strings.Maps
  Ada.Strings.Maps.Constants
and do something like:

  if Is_In( c, Alphanumeric_Set ) then
    ...
  end if;

Since you're a newbie, I recommend you peruse annex A of the Ada 95
reference manual; it describes the predefined language enviroment, which is
basically a list of all of the standard libraries.

You can download a copy from:
    http://www.adaic.org/standards/ada95.html

>
> Also, I know you can do the following:
>
> type new_type is array(1..20) of string(1..50);
> words : new_type;
> index : integer := 20;
> words (15) (index ..index) := "K";
>
> however I find that I cannot instead say:
>
> words(15)(index):="K";
>
> why is this so? I get a "Type mismatch in assignment statement,
continuing"
> error. It does however work when I use words(15)(index):='K'. The rational
> behind this is that (index..index) represents a range - hence a string -
> whereas (index) represents a single character?
>

You answered your own question here.

If you're coming from a different programming language, you may find that
Ada is kind of a "hard ass" about the syntax it will accept.  When you get
over the frustration and find that more programs work correctly after you
get past the compiler, you may never want to go back.

Steve
(The Duck)

> Any insight most helpful.
>
> Cheers,
> zork
>
>





  parent reply	other threads:[~2004-07-15 13:45 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-07-15 13:20 questions from a newbie zork
2004-07-15 13:35 ` Marius Amado Alves
2004-07-15 13:45 ` Steve [this message]
2004-07-15 14:44 ` Georg Bauhaus
2004-07-15 15:09 ` Jacob Sparre Andersen
2004-07-15 15:52   ` zork
replies disabled

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