Previous | Next | Table of Contents | Index | Program List | Copyright

Ada 95 Problem Solving and Program Design Index: A-F

A

Access types, Section 14.1
   class-wide general, Section 15.4
   and dynamic data structures, Section 14.1
   general, Chapter 15, Section 15.3
   and the NEW operator, Section 14.1
Access values, Section 14.1, Section 14.1
Access variables, Section 14.1
Accumulating a sum, Section 5.1
Activation frame, Section 13.2
Actual parameters, Section 6.6
ACVC (Ada compiler validation capability), Section 2.1
Ada 95 syntax rules, Appendix B
Ada
   from 9x to 95, Section 2.1
   Calendar, Section 10.2
   Calendar exceptions, Section 10.2
   Calendar specification package, Appendix E
   character set, Appendix A
   Characters.Handling, Section 7.5
   execution-time exceptions, Appendix H
   first program, Section 1.7
   general form of a program, Section 2.5
   history, Section 2.1
   implementation of parameter stacks in, Section 13.2
   introduction to, Section 3.2, Chapter 2
   look of programs, Section 2.2
      body (executable statements section), Section 2.2
      cursor (a blinking place marker), Section 2.2
      declarations, Section 2.2
      declarative section, Section 2.2
      objects, Section 2.2
      package defined, Section 2.2
      PROCEDURE defined, Section 2.2
      types, Section 2.2
   math libraries specifications, Appendix F
   Numerics, Section 7.3
   Numerics exceptions, Section 7.3
   predefined environment, the package Standard, Appendix C
   standard, Section 2.1
   string libraries specifications, Appendix G
   Text_IO
      exceptions, Appendix G
      reading and writing files with, Section 9.3
      specification package, Appendix D
   usage around the world, Section 2.1
   using the calendar, Section 3.6
AddArray, Section 8.7
Addition_Table, Section 5.6
Address defined, Section 1.2
AddToEnd (iterative implementation of), Section 14.2
AddToEnd (recursive implementation of), Section 14.2
AddToEnd (with head and tail pointers), Section 14.3
AddToFront, Section 14.2
ADOs (abstract data objects), Section 10.5
ADTs (abstract data types), Chapter 10
   and ADOs (abstract data objects), Section 10.5
   features, Section 10.1
   implementing the generic Set, Section 11.5
   nature of, Section 10.1
   programming, Chapter 10
   specifying the generic set, Section 11.5
   structure, Section 10.1
   writing for calendar dates, Section 10.3
   writing for money quantities, Section 10.4
   writing for multiple spiders, Section 10.6
Aggregate array assignment, Section 8.5
Aggregate assignment, record, Section 8.2
Algorithms
   decisions in, Chapter 4
   defined, Section 1.4
   errors, Section 2.11
   in everyday life, Section 3.3
   for search, Section 8.10
   selection sort, Section 8.10
   skeletons for processing a text file, Section 9.3
   solution to pizza problem, Section 3.3
   for spider moves, Section 16.4
   tracing a program or, Section 4.3
Alphabetically first letter, finding the (case study), Section 4.2
Analogy, solution by, Section 4.4
ANSI (American National Standard Institute), Section 2.1
Area_And_Circum_Frame, Section 3.1
Area_And_Circum, Section 3.1
Arithmetic overflow, Section 7.2
Arithmetic underflow, Section 7.2
Array, expansions, Section 8.7
Array assignment, aggregate, Section 8.5
Array elements for processing, selecting, Section 8.6
Array indexes, Section 8.5
Array of records
   declaring an, Section 8.10
   sorting an (case study), Section 8.10
   using generic sort, Section 11.4
Arrays
   copying and comparing, Section 8.7
   defined, Chapter 8
   displaying in normal order (case study), Section 13.4
   elements, Chapter 8
   generic parameters, Section 11.3
   heterogeneous, Section 15.4
   indexes (subscripts), Chapter 8
   index to, Section 8.6
   manipulation of two-dimensional, Section 12.1
   with noninteger subscripts, Section 8.9
   operations on, Section 8.5
   as parameters, Section 8.7
   printing backwards (case study), Section 13.4
   reading part of, Section 8.8
   and records, Chapter 8
   referencing elements of, Section 8.5
   searching, Section 8.10
   searching and sorting, Section 8.10
   sequential versus random access to, Section 8.7
   sorting, Section 8.10
   subscripts (indexes), Chapter 8
   of task objects, Section 16.4
   using FOR loops with, Section 8.6
Array subscripts, Section 8.5
Array types, Section 8.5
   avoiding anonymous, Section 8.7
   declarations, Section 8.5
   unconstrained, Chapter 11
Assembler defined, Section 1.5
Assembly languages, Section 1.5
Assignment compatibility, Section 7.1
Assignment statements, Section 2.7, Section 2.10
   arithmetic, Section 2.7
   Boolean, Section 7.4
Associative rules, Section 7.1
Atanasoff, John, Section 1.1
Attributes
   and operations, enumeration type, Section 3.4
   queries, Section 3.4

B

Babbage, Charles, Section 2.1
Bank, money in the (case study), Section 6.3
Banner comments, Section 2.4
Bargraph, Section 9.4
Batch mode defined, Section 9.3
Big-O Notation, Section 8.10
Binary sequence, Section 1.5
Binder program, Section 1.6
Bit defined, Section 1.2
Blank_Count, Section 7.5
Blank space, use of, Section 2.5
Body file, Section 3.7
Body package, procedures in a, Section 10.3
Boolean assignment statements, Section 7.4
Boolean expressions
   and conditions, Section 4.1
   and the IF statement, Section 4.1
Boolean global constant, Section 7.4
Boolean operators, Section 7.4
Boolean values, Section 7.4
Boolean variables, Section 7.4
Booting up (a computer), Section 1.7
Boundary values, checking, Section 7.2
Budget problem, home (case study), Section 8.7
Byron, Augusta Ada (Countess of Lovelace), Section 2.1
Byron, Lord (English poet), Section 2.1
Bytes defined, Section 1.2

C

Calendar, Ada, Section 3.6, Section 10.2
   exceptions, Section 10.2
   specification package, Appendix E
Calendar dates, Section 10.3
Calendar package, using Ada's, Section 3.6
Calendar resources, Section 10.2
Calling a function, Section 4.7
Calls, procedure, Section 3.5
Call statement, simple function, Section 3.6
CASE and the IF statements, comparison of, Section 7.6
CASE statement, Chapter 7, Section 7.6
Case study
   A histogram-plotting program, Section 9.4
   Approximating the value of e, Section 7.2
   Changing a flat tire, Section 3.3
   Checking for balanced parentheses, Section 14.6
   Computing insurance dividends, Section 4.4
   Computing overtime pay, Section 4.4
   Converting units of measurement, Section 2.6
   Date in "MM/DD/YY" form, Section 3.6
   Date in "MONTH DD, YYYY" form, Section 3.6
   Displaying an array in normal order, Section 13.4
   Employee inquiry system, Section 10.5
   Finding, largest, smallest of three numbers, Section 4.8
   Finding circle area and circumference, Section 3.1
   Finding the alphabetically first letter, Section 4.2
   Finding the value of a coin collection, Section 2.10
   General sum problem, Section 5.2
   Generating cryptograms, Section 9.1
   Given today, find yesterday and tomorrow, Section 4.4
   Home budget problem, Section 8.7
   Lengths of lines in a text file, Section 9.6
   Modified payroll problem, Section 4.2
   Money in the bank, Section 6.3
   Multiple-employee payroll problem, Section 5.3
   Numbers' List - minimum, maximum, and average, Section 5.2
   palindrome string, Section 13.4
   Picture processing with recursion, Section 13.5
   Printing an array backwards, Section 13.4
   Recursive binary search, Section 13.6
   Software support "Hot Line", Section 11.2
   Sorting an array of records, Section 8.10
   Sum of integers, Section 5.1
   Testing whether a number is prime, Section 7.4
   Towers of Hanoi, Section 13.5
   Translating from English to French color names, Section 3.4
   Unit price of a pizza, Section 3.2
   World times, Section 10.2
CD-ROM (Compact Disk Read-Only Memory), Section 1.2
Cells, memory, Section 1.2
Character data type, Section 2.10
Characters
   in a string, Section 9.1
   compatibility with a one-character string, Section 9.1
   control, Section 3.7
   end of file, Section 9.3
   end of line, Section 9.3
   nonprintable, Section 7.5
   representing control, Section 7.5
   set, (Ada), Appendix A
   type, Section 9.2
   using relational operators, Section 7.5
Characters.Handling, Section 7.5
CHARACTER type, Section 7.5
Chart, structure, Section 3.6
Child package
   Dates.IO, Section 10.3
   Geometry.IO, Section 12.5
   putting new commands in a, Section 6.8
   for the spider, Section 6.8
Circle, finding area and circumference of a (case study), Section 3.1
Class-wide general access types, Section 15.4
Class-wide types, Section 15.4
Class-wide variable, Section 15.4
Clauses
   context, Section 2.2, Section 2.4
   USE, Section 7.2, Section 10.4
   USE and USE TYPE, Section 10.4
   WITH, Section 2.2
Client program, Section 10.1
Coin_Collection, Section 2.10
Coin collection, finding value of a (case study), Section 2.10
Colors, Section 3.4
Columns, Section 16.3
Command_Arguments, Section 9.6
Command handler, robust menu-driven, Section 6.5
Command line
   flags, Section 9.6
   options, Section 9.6
   parameters, Section 9.6
Command parameters, reading, Section 9.6
Commands
   putting in a child package a, Section 6.8
   of the spider, Section 7.6
Comments, Section 2.4
   banner, Section 2.4
   using, Section 3.2
Common programming errors; see Programming errors, common
Compatibility
   assignment, Section 7.1
   rules for types and subtypes, Section 5.6
Compilation errors, Section 2.11
Compiler defined, Section 1.5
Composite data types, Chapter 7
Composite types, records and arrays, Chapter 8
Computers
   brief history, Section 1.1
   categories, Section 1.1
   components, Section 1.2
      central processor unit (CPU), Section 1.2
      computer networks, Section 1.2
      I/O (input and output devices), Section 1.2
      main and secondary memory compared, Section 1.2
      main memory, Section 1.2
      secondary memory, Section 1.2
   defined, Section 1.1
   digital, Section 1.1
   embedded, Section 1.1
   generations of, Section 1.1
   networks, Section 1.2
   personal, Section 1.1, Section 1.1
   programming introduction, Chapter 1
   then and now, Section 1.1
Computing insurance dividends (case study), Section 4.4
Computing overtime pay (case study), Section 4.4
Concatenation, string, Section 9.1
Concordance, Section 8.9
Concurrent programming, Chapter 16
   Ada structures for, Section 16.1
   introduction, Chapter 16
   modeling and simulation, Section 16.1
   operating systems, Section 16.1
   real-time systems, Section 16.1
Concurrent programs, Section 2.1
Conditions
   Boolean expressions and, Section 4.1
   order of, Section 4.5
Connecting nodes, Section 14.1
Constant declarations, Section 2.4, Section 2.4
Constants
   use of, Section 4.2
   and variables, Section 2.4
Constructors, type, Chapter 8
Context clause, Section 2.2, Section 2.4
Context clauses, Section 2.4
Control characters, Section 3.7, Section 7.5
Control structures, Section 2.1, Section 3.3
   assignment statements, Section 2.7
   Boolean expressions and the IF statement, Section 4.1
   the CASE statement, Section 7.6
   counting loops and the FOR statement, Section 5.1
   LOOP and EXIT statement, Section 6.4
   motivation for selection and repetition, Section 3.3
   the multiple-alternative IF statement, Section 4.5
   nested loops, Section 5.4
   records as subprogram parameters, Section 8.2
   the WHILE statement, Section 6.1
Conversions
   among numeric types, Section 7.1
   explicit, Section 7.1
Cooperative multitasking, Section 16.2
Coordinate transformations, Section 7.6
Copy_File, Section 9.3
Copy (recursive implementation of), Section 14.2
Correspondence, rules for parameter list, Section 6.6
Counter-controlled loops, Section 6.1
Counting loops, Section 5.1
CPU (central processor unit), Section 1.2, Section 1.2
Cryptogram_2, Section 9.2
Cryptogram, Section 9.1
Cryptograms, generating (case study), Section 9.1
Currency (body), Section 10.4
Currency.IO (body), Section 10.4
Currency.IO (spec), Section 10.4
Currency (spec), Section 10.4
Cursor (a blinking place marker), Section 1.2, Section 2.2

D

Dangling pointer, Section 14.1
Data
   abstraction, Section 10.1
   input, Section 1.6
   requesting, Section 2.8
Data area, procedure, Section 6.6
Database (body), Section 10.5
Database (spec), Section 10.5
Data structures, Section 2.1
   access types and the NEW operator, Section 14.1
   arrays with noninteger subscripts, Section 8.9
   array types, Section 8.5
   the BOOLEAN type, Section 7.4
   the CHARACTER type, Section 7.5
   declaring constants and variables, Section 2.4
   dynamic, Chapter 14
   general access types, Section 15.3
   hierarchical records, Section 8.4
   introducing, Section 3.4
   introductions to data types and expressions, Section 2.10
   linked, Section 14.1
   linked lists and their operations, Section 14.2
   linked lists with head and tail pointers, Section 14.3
   multidimensional arrays, Section 12.1
   numeric data types, Section 7.1
   record types, Section 8.1
   the string data type, Section 9.1
   subtypes of scalar types, Section 5.6
   unconstrained array types, Section 11.1
   variant records, Section 12.4
Data types, Section 2.4
   Character, Section 2.10
   composite, Chapter 7
   defined, Section 2.10
   and expressions, Section 2.10
   Float, Section 2.10
   Integer, Section 2.10
   predefined, Section 2.10
   scalar, Chapter 7
Data value in a loop, Section 6.2
Dates
   calendar, Section 10.3
   displaying in "month dd, yyyy" form (case study), Section 3.6
   form of today's (case study), Section 3.6
Dates (body of the improved package), Section 10.3
Dates.IO (body of child package), Section 10.3
Dates.IO (spec. for child package), Section 10.3
Dates packages
   body of the, Section 8.3
   for calendar, Section 8.3
   specification for the, Section 8.3
Dates (spec), Section 10.3
Debugger programs, using, Section 5.7
Debugging
   global Boolean constant, Section 7.4
   a program, Section 2.11
   programs with linked lists, Section 14.7
   recursive subprograms, Section 13.7
   and regression testing, Section 5.7
Decision making, Section 1.2
Decision statements, writing simple functions and packages, Chapter 4
Decision table, Section 4.5
Declarations
   and Ada programs, Section 2.2
   constant, Section 2.4, Section 2.4
   enumeration types, Section 3.4
   form of, Section 2.4
   functions, Section 4.7
   record types, Section 8.1
   subtypes, Section 2.9
   variable, Section 2.4, Section 2.4
Declarative section, and Ada programs, Section 2.2
Decodes defined, Section 1.2
Default value, Section 2.8
Delimiters, Appendix A
Desk check, Section 4.3
Devices, I/O (input/output), Section 1.2
Directory names for files, Section 9.3
Discrete sets, Section 11.5
Disk drive, Section 1.2
Diskettes, Section 1.2
Disks
   floppy, Section 1.2
   hard, Section 1.2
Display_Board, Section 12.1
Display_Days, Section 5.6
Display_Digits, Section 7.1
Display, Section 14.2
Distance_between_Points, Section 8.2
Distance_to_Origin, Section 8.1
Distance_with_Errors, Section 2.11
Distance, Section 2.3
Dividend, Section 4.4
Dividends, computing insurance (case study), Section 4.4
DoD (Department of Defense), Section 2.1
Draw_Box_with_1_Loop, Section 5.5
Draw_Box_with_Loops_Left (spider), Section 6.8
Draw_Box_with_Loops, Section 5.5
Draw_Box (spider), Section 3.8
Draw_Many_Boxes (many spiders), Section 10.6
Drunken_Spider, Section 7.3
Drunken_Spiders_Family, Section 16.4
Drunken_Spiders, Section 16.4
Drunken spider, and random numbers, Section 7.3
Duration, values, Section 7.1
Dyadic operator, Section 7.1
Dynamic data structures, Chapter 14
Dynamic dispatching, Section 15.6
Dynamic storage
   exhausting the supply of, Section 14.1
   pool defined, Section 14.1
   returning to the pool, Section 14.1

E

e, approximating the value of (case study), Section 7.2
Editor defined, Section 1.7
Embedded computer, Section 1.1
Employee_UI, Section 10.5
Employee inquiry system (case study), Section 10.5
Employees (body), Section 10.5
Employees.IO (body), Section 10.5
Employees.IO (spec), Section 10.5
Employees (spec), Section 10.5
End-of-file character (eof), Section 9.3
End-of-line character (eol), Section 9.3
Engineering and scientific method, Section 1.4
English to French color names, translating from (case study), Section 3.4
ENIAC (Electronic Numerical Integrator and Calculator), Section 1.1, Section 1.1
Enter_Move, Section 12.1
Enumeration literals, Section 3.4
Enumeration types, Chapter 3, Section 3.4
   attributes and operations, Section 3.4
   declarations, Section 3.4
   defining, Section 3.4
   input/output operations, Section 3.4
   subtypes of, Section 5.6
Errors; see also Programming errors
   compilation, Section 2.11
   grammar, Section 2.11
   logic or algorithm, Section 2.11
   off-by-one, Section 14.7
   propagation, Section 2.11
   representational, Section 7.2
   run-time, Section 2.11, Section 2.11
   semantic, Section 2.11
   syntactic and semantic, Section 2.11
   usage, Section 2.11
Estimate_e, Section 7.2
Event-controlled loop, Section 6.1
Exception_Loop, Section 6.5
Exception handling, Section 5.9, Section 6.1
   robust, Section 6.5
   testing with, Section 6.9
Exceptions
   defined in Ada.Calendar, Section 6.9
   defined in Ada.Numerics, Section 6.9
   defined in Ada.Text_IO, Section 6.9
   defined in the Ada language, Appendix H
   execution-time, Appendix H
   reports, Section 2.3
   (run-time errors), Section 2.11, Section 2.11
Exchange, Section 8.7
Executable statements, sequence of, Section 2.5
Explicit conversions, Section 7.1
Exponentiation, Section 2.10
Expressions
   assignment compatibility, Section 7.1
   evaluation rules, Section 7.1
   multiple-operator, Section 7.1
   with several operators, Section 2.10
   types of, Section 7.1
   using parentheses to write, Section 2.10
Extension aggregate defined, Section 15.2
External file for input data, using an, Section 5.3

F

Factorial_Iterative, Section 13.3
Factorial (recursive function), Section 13.3
Fetches defined, Section 1.2
Fibonacci, Section 13.3
Fields
   defined, Chapter 8
   of a record, Section 8.1
FIFO (first-in, first out) structure, Section 14.6
Files
   body, Section 3.7
   defined, Section 1.2
   directory names for, Section 9.3
   preparing for input or output, Section 9.3
   reading records from a, Section 8.10
   sorting records, Section 8.10
   specification, Section 3.7
   and strings, Chapter 9
   terminators, Section 9.3
First_Last, Section 7.1
First_Letter, Section 4.2
First generation of electronic computers, Section 1.1
Fixed-point types, type Duration, Section 7.1
Flag-controlled loop, Section 6.2
Flags
   command line, Section 9.6
   program, Section 7.4
Flat tire, changing a (case study), Section 3.3
Float data type, Section 2.10
Floating-point format, Section 7.1
Floating-point number defined, Section 2.8
Floating-point values, Section 2.3
Floppy disks (diskettes), Section 1.2
Flow chart defined, Section 4.1
FOR loops with arrays, using, Section 8.6
Formal parameters, Section 6.6
FOR statement, Section 5.1, Section 5.6
Four_Pieces, Section 5.6
Fourth generation of electronic computers, Section 1.1
Free_Fall, Section 6.1
Functions
   bodies, Section 4.7
   calling, Section 4.7
   call statements, Section 3.6
   declarations, Section 4.7
   defined, Section 3.6
   the End_of_Line and End_of_File, Section 9.3
   keys, Section 1.2
   package containing minimum and maximum, Section 4.8
   recursive, Section 13.2
   recursive mathematical, Section 13.3
   specifications, Section 4.7
   writing simple, Section 4.7
Functions and packages, writing simple decision statements, Chapter 4


Previous | Next | Table of Contents | Index | Program List | Copyright

Copyright © 1996 by Addison-Wesley Publishing Company, Inc.