comp.lang.ada
 help / color / mirror / Atom feed
From: Martin Krischik <martin@krischik.com>
Subject: Re: Another problems of newbie
Date: Fri, 31 Dec 2004 08:04:38 +0100
Date: 2004-12-31T08:04:38+01:00	[thread overview]
Message-ID: <1640924.dHkY6WWRQp@linux1.krischik.com> (raw)
In-Reply-To: cr1ah6.1dk.1@cs.chip.komp.fan.pl

maxsio ;D wrote:

Just a few hints. After all, you need to learn something.

> I need to write some program and I have problems with it. This program
> should read text file, write words to array, sort them and than write to
> another text file. In one book I found way how to read only singel char so
> I thought it would be easy to link singel char and rest part of final
> word, but I was wrong. I've written this subprogram (this program is
> reading from keyboard, but with files is similar so...) :
> *
> procedure chars is
>    word : string(1..31);

I take it you are a C/C++ programmer - otherwise you would not create a
string wich is one char larger then actualy needed.

>    char : character;
> 
> begin
>    for i in 1..30 loop

for i in word'range loop

>      Get(char);
>      word:=word&(string(char));

Ada "string" is "char []" and "Ada.Strings.Unbounded" is "std::string". And
you would not use operator + () on a char [], would you? So its:

word (i) := char;

>    end loop;
>    Put(word);
>    delay 10.0;
> end chars;
> *
> but after first letter program generate constraint error. And second
> problem which I have is sorting array with words. To sort array I've
> choosen QuickSort, but I don't know totally how to use it in Ada. I was
> searching in Google, but I found only QuickSort with pointers.
> Unfortunately I don't understand how to use them good ind this algorithm.
> If anybody could explain usage of pointers in this algorithm or write
> QuickSort without pointers I'd be grateful.
> Sorry for my poor English and thanks in advance. Greetings
> 
> maxsio
> --
> maxsio@wp.pl
> GG: 1447475
> IRC: irc.efnet.pl #osiolek

Free yourself from C/C++ thinking! C/C++ are only mid-level languages and
now you work with a true high level language. Things are diffreren here.
i.E. if you need 30 characters you say 30 and 31 - no need for '\0' here.

Martin

-- 
mailto://krischik@users.sourceforge.net
http://www.ada.krischik.com



  parent reply	other threads:[~2004-12-31  7:04 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-30 15:31 Another problems of newbie maxsio ;D
2004-12-30 15:30 ` Andre
2004-12-30 18:30 ` Jeffrey Carter
2004-12-31  7:04 ` Martin Krischik [this message]
2004-12-31 13:50   ` Pascal Obry
2004-12-31 14:59     ` Martin Krischik
replies disabled

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