with ada.text_io; use ada.text_io; procedure group3orig is Maxwordsize: constant Natural := 100; Maxwordlistsize: constant Natural := 100; -- Let's define a type for arrays -- This does not create any instances of the array type WordList is array (1 .. Maxwordlistsize) of string(1 .. Maxwordsize); type WordLengthList is array (1 .. Maxwordlistsize) of Natural; procedure addWord(w: in String; wl:in out WordList; wll:in out WordLengthList; n: in out Natural) is begin n := n + 1; wl(n) := w; end addWord; -- Now declare an instance of the array -- Remember that the type declaration does not create an instance of the type theWordList: wordList; theWordLengthList: wordLengthList; theWord: String(1 .. Maxwordsize); NumEntered: Natural := 0; -- Let's do some bottom up testing of addWord begin theWord(1..9) := ("Firstword"); addWord(theWord, theWordList, theWordLengthList, NumEntered); theWord(1..10) := ("secondword"); addWord(theWord, theWordList, theWordLengthList, NumEntered); for i in 1 .. NumEntered loop put_line( theWordList(i) ); end loop; end group3orig;