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

Ada 95 Problem Solving and Program Design Index: M-R

M

Machine languages, Section 1.5
Mainframes, Section 1.1
Main memory (random-access memory), Section 1.2
MakeEmpty, Section 14.5
Mathematical formulas, writing, Section 7.1
Math libraries
   specifications, Appendix F
   using, Section 4.6
Max_Int_Flt, Section 5.8
Max_Two, Section 4.7
Maximum_Array_Generic (body), Section 11.3
Maximum_Array_Generic (spec), Section 11.3
Maximum_Generic (body), Section 11.3
Maximum_Generic (spec), Section 11.3
Measurement, converting units of (case study), Section 2.6
Megabytes defined, Section 1.2
Memory
   area for the payroll program, Section 2.9
   main, Section 1.2
   nonvolatile, Section 1.2
   programs in, Section 2.9
   secondary, Section 1.2
   volatile, Section 1.2
Memory cells
   contents, Section 1.2
   defined, Section 1.2
Menu_Handler, Section 6.5
Messages
   prompting, Section 2.8
   using prompting, Section 2.8
Metric_Conversion, Section 2.6
Mice; see Mouse
Microcomputers, Section 1.1
Min_Max_Average_File, Section 5.3
Min_Max_Average, Section 5.3
Min_Max_Three, Section 4.8
Min_Max (package body), Section 4.8
Min_Max (package specification), Section 4.8
Minicomputers, Section 1.1
Mode, parameter, Section 8.7
Modified_Payroll, Section 4.2
Monadic operator, Section 7.1
Money in the bank (case study), Section 6.3
Mouse, Section 1.2
Multi_Payroll, Section 5.3
Multidimensional arrays, Section 12.1
   defined, Chapter 12
   storage of, Section 12.1
   two-dimensional arrays, Section 12.1
   using, Section 12.2
   and variant records, Chapter 12
Multiple-alternative IF statement, writing a, Section 4.5
Multiple concurrent spiders, Section 16.4
Multiple-employee payroll (case study), Section 5.3
Multiple-operator expressions, Section 7.1
Multiply_Integers, Section 6.2
Multiply (recursive multiplication), Section 13.1
Multitasking, cooperative, Section 16.2
Murphy's law, Section 2.11
Music_Makers (program), Section 11.5
Music makers, Section 11.5

N

Named association defined, Section 6.6
Natural languages, Section 1.5
Nested_Loops, Section 5.4
Nested control structures, Section 4.5
Nested IF statements, Section 4.5
Nested loops, Section 5.4
Networks, computer, Section 1.2
NEW operator, access types and the, Section 14.1
Nodes
   connecting, Section 14.1
   defined, Chapter 14
Nonnegative integers, Section 2.3
Non-primitive operations, Section 15.2
Nonprintable characters, Section 7.5
Non-System package, preparing to use a, Section 3.7
Nonvolatile memory, Section 1.2
Notebooks, Section 1.1
Null pointer, dereferencing a, Section 14.7
Null statements, Section 3.1
Numbers
   list of (case study), Section 5.2
   testing for prime (case study), Section 7.4
Numerical inaccuracies, Section 7.2
Numeric literals, Section 7.1
Numeric operators, Section 7.1
Numerics
   Ada exceptions, Section 7.1
   pseudorandom numbers, Section 7.3
Numerics, USE clause, Section 7.2
Numeric types
   conversions among, Section 7.1
   differences between, Section 7.1

O

Object program, Section 1.6
Objects
   and Ada programs, Section 2.2
   arrays of task, Section 16.4
   programming, Chapter 10
   protected, Section 16.3
   task, Section 16.2
Odd_Numbers, Section 6.1
Off-by-one errors, Section 14.7
One_Task, Section 16.2
O notation, big, Section 8.10
OOP (object-oriented programming), Section 15.1
Operating systems
   creating a program or data file, Section 1.7
   a first Ada program, Section 1.7
   logging on or booting up, Section 1.7
   redirection of standard files, Section 9.4
   using, Section 1.7
Operations
   behaviors of Get, Section 9.3
   enumeration type attributes and, Section 3.4
   in the generic linked list package, Section 14.5
   input, Section 2.8
   input/output - for enumeration types, Section 3.4
   linked list, Section 14.2
   on arrays, Section 8.5
   on records, Section 8.1
   on Sets, Section 11.5
   on unconstrained array types, Section 11.1
   on variant records, Section 12.4
   output, Section 2.8
   performing input, Section 2.8
   performing output, Section 2.8
   primitive and nonprimitive, Section 15.2
   spider move, Section 16.4
Operators
   Boolean, Section 7.4
   Boolean, short-circuit, Section 7.4
   dyadic, Section 7.1
   expressions with several, Section 2.10
   monadic, Section 7.1
   numeric, Section 7.1
   overloading, Section 10.4
   precedence, Section 7.4
Options, command line, Section 9.6
Ordered insertions in linked lists, Section 14.4
Order of condition, Section 4.5
Order of Magnitude, Section 8.10
Output operations, Section 2.8, Section 2.8
Output values, formatting, Section 2.8
Overloading principle, Section 5.8

P

Packages
   Ada.Calendar specification, Appendix E
   Ada.Strings.Bounded, Section 9.2
   Ada.Strings.Unbounded, Section 9.2
   Ada.Text_IO specification, Appendix D
   bodies of the tagged type, Section 15.2
   body, Section 12.5
   body of the dates, Section 8.3
   for calendar dates, Section 8.3
   character and string, Section 9.2
   concepts, Section 3.5
   containing minimum and maximum functions, Section 4.8
   functions, Section 5.8
   generic sets, Section 11.5
   importance of, Section 3.5
   inside the spider, Section 7.6
   kinds of, Section 3.5
   preparing to use non-system, Section 3.7
   and programs, Section 2.2
   specification for the dates, Section 8.3
   specifications, Section 3.6, Section 9.3
   specifications and package bodies, Section 4.8
   using, Chapter 3
   using Ada's calendar, Section 3.6
   using a screen-control, Section 3.7
   writing a simple, Section 4.8
Packages and functions, writing simple, Chapter 4
Package Standard
   Ada's predefined environment, Appendix C
   specification for predefined types, Section 10.1
Palindrome, Section 13.4
Palindromes
   defined, Section 13.4
   and strings, Section 13.4
Parameter lists
   named association in actual, Section 6.7
   syntax rules for, Section 6.6
Parameter passing, rules of, Section 8.7
Parameters
   actual, Section 6.6
   arrays as, Section 8.7
   command line, Section 9.6
   defined, Section 2.8
   executing a procedure with, Section 6.6
   formal, Section 6.6
   generic array, Section 11.3
   generic subprogram, Section 11.3
   generic type, Section 11.3
   and local variable stacks, Section 13.2
   modes, Section 8.7
   stacks in Ada, Section 13.2
Parentheses
   checking for balanced (case study), Section 14.6
   using, Section 2.10
Pascal user hints, Section 2.10
   control structures, Section 2.10
   declarations and declaration order, Section 2.10
   packages and their relation to units, Section 2.10
   subprogram parameters, Section 2.10
   type and subtype compatibility, Section 2.10
   types and data structures, Section 2.10
   use of IS and the semicolon, Section 2.10
Pay, computing overtime (case study), Section 4.4
Payroll_Array, Section 15.4
Payroll_List, Section 15.6
Payroll, Section 15.2, Section 15.2
Payroll, multiple-employee (case study), Section 5.3
Payroll problem, modified (case study), Section 4.2
Payroll program, memory area for, Section 2.9
Personal computers, Section 1.1, Section 1.1
Personnel, Section 15.2, Section 15.2
Persons, Section 15.2, Section 15.2
Phone_Service, Section 11.2
Pizza, unit price of a (case study), Section 3.2
Pizzeria_Frame, Section 3.2
Pizzeria, Section 3.2
Pointers, Section 14.1
   dangling, Section 14.1
   dereferencing null, Section 14.7
   head and tail, Section 14.3
   types, Chapter 14
   variables, Section 14.1
Pools
   defined, Section 14.1
   returning dynamic storage to the, Section 14.1
Postconditions, Section 3.7
Power (in mathematical expressions), Section 2.10
Precedence rules, Section 2.10, Section 7.1
Preconditions, Section 3.7
Predefined data type, Section 2.10
Predefined identifiers, Section 2.2
Predefined types and Package Standard, Section 10.1
Predictable performance principle, Section 1.4
Price of a pizza, unit (case study), Section 3.2
Prime number, testing for a (case study), Section 7.4
Primitive and nonprimitive operations, Section 15.2
Printing an array backwards (case study), Section 13.4
Private types, advantages of, Section 10.4
Problem inputs, Section 1.4
Problem outputs, Section 1.4
Problem solution, extending a, Section 4.4
Problem solving, Section 1.4
   assertions and loop invariants, Section 6.3
   building programs from existing information, Section 3.1
   case studies in recursion, Section 13.5
   decisions steps in algorithms, Section 4.2
   extending a problem solution, Section 3.2
   generalizing a solution, Section 5.2
   a general sorting program, Section 11.2
   a generic sorting program, Section 11.4
   getting input values from a string, Section 9.5
   loop design, Section 6.1
   more recursive programs, Section 13.4
   the nature of recursion, Section 13.1
   operating system redirection of standard file, Section 9.4
   ordered insertions in linked lists, Section 14.4
   and programming, Section 1.3
   reading command parameters, Section 9.6
   reading part of an array, Section 8.8
   recursive mathematical functions, Section 13.3
   recursive searching, Section 13.6
   repeating a program body, Section 5.3
   searching and sorting an array, Section 8.10
   selecting array elements for processing, Section 8.6
   software development illustrated, Section 2.6
   stacks and queues, Section 14.6
   strategies, Section 4.4
   structured programming, Section 3.3
   using arrays, Section 8.7
   using multidimensional arrays, Section 12.2
   what is concurrent programming?, Section 16.1
Problem solving and using packages, Chapter 3
Procedures, Section 2.8, Chapter 6
   in a body package, Section 10.3
   calls, Section 2.8, Section 3.5
   data area, Section 6.6
   defined, Section 3.5
   with parameters, Section 6.6
   writing, Section 6.6
Programmers (program writers), Section 1.5
Programming
   concurrent, Chapter 16
   introduction to, Chapter 1
   and problem solving, Section 1.3
   structured, Section 3.3
Programming errors, common; see also Errors
   counter variables, Section 5.10
   decision statements, Section 4.9
   enumeration types, Section 3.9
   IF and $BWHILE$b statements, Section 6.10
   packages, Section 3.9
   scalar data types, Section 7.7
   strings and files, Section 9.7
   three basic categories, Section 2.11
Programming errors, common (abstract data types), Section 10.7
Programming errors, common (multidimensional arrays, variants), Section 12.6
Programming errors, common (records and arrays), Section 8.11
Programming errors, common (unconstrained array types), Section 11.6
Programming languages, Section 1.5
   assembly languages, Section 1.5
   high-level languages, Section 1.5
   machine languages, Section 1.5
   portability and compiler standards, Section 1.5
Programming with objects, Chapter 10, Chapter 15
Program or algorithm, tracing a, Section 4.3
Programs
   binder, Section 1.6
   client, Section 10.1
   concurrent, Section 2.1
   debugging, Section 2.11
   defined, Section 1.1
   executing a, Section 1.6
   first Ada, Section 1.7
   flags, Section 7.4
   generic sorting, Section 11.4
   heading, Section 2.4
   histogram-plotting (case study), Section 9.4
   in memory, Section 2.9
   object, Section 1.5
   output, Section 1.6
   and packages, Section 2.2
   predictable behavior of, Section 2.10
   recursive, Section 13.4
   regression-testing, Section 5.8
   repetition in, Chapter 5
   source, Section 1.5
   steps in preparing a, Section 1.5
   that never halt, Section 7.3
Prompting messages, Section 2.8, Section 2.8
Propagation errors, Section 2.11
Protect_Screen, Section 16.3
Pseudorandom numbers, in Ada.Numerics, Section 7.3

Q

Qualification defined, Section 7.2
Quantum defined, Section 16.2
Queues as linked lists, implementing, Section 14.6

R

Race condition, Section 16.3
RAM (random-access memory), Section 1.2
Random_Numbers, Section 7.3
Random numbers, and the drunken spider, Section 7.3
ReadEmployee, Section 8.4
ReadEmployeeBasic, Section 8.4
Reading records, Section 8.2, Section 8.10
ReadScores, Section 8.8
Records
   aggregate assignments, Section 8.2
   and arrays, Chapter 8
   defined, Chapter 8
   hierarchical, Section 8.4
   manipulating fields of, Section 8.1
   operations on, Section 8.1
   reading, Section 8.2
   reading from files, Section 8.10
   sorting the file of, Section 8.10
   as subprogram parameters, Section 8.2
   variant, Section 12.4
Record types, Section 8.1, Section 8.1
Recursion, Chapter 13
   infinite, Section 14.7
   nature of, Section 13.1
   picture processing with (case study), Section 13.5
Recursive binary search (case study), Section 13.6
Recursive data structures, Section 14.2
Recursive function, tracing a, Section 13.2
Recursive mathematical functions, Section 13.3
Recursive procedures and iteration compared, Section 13.5
Recursive programs, Section 13.4
Recursive searching, Section 13.6
Recursive subprogram, Chapter 13
Recursive subprograms, Section 13.7
Regression testing, debugging and, Section 5.7
Regression-testing, a program, Section 5.7
Relational Operators, using, Section 7.5
Repetition in programs, Chapter 5
Report, exception, Section 2.3
Representation
   errors, Section 7.2
   specifications, Section 2.1
Reserved words, Section 2.2, Appendix A
Resources, kinds of, Section 3.6
Reusable software competent, Section 10.1
Reverse_Display_Days, Section 5.6
Reverse_Letters, Section 2.10
Reverse_Squares, Section 5.1
Robust_Input (body of package), Section 6.7
Robust_Input (specification for), Section 6.7
Robust_Sum_Fact, Section 5.9
Robust exception handling, Section 6.5
Robust input loop
   initial version template, Section 6.5
   refined version template, Section 6.5
Robust menu-driven command handler, Section 6.5
Room_Type, Section 16.4
Row-major order, Section 12.1
Rules
   associative, Section 7.1
   for expression evaluation, Section 7.1
   for parameter list correspondence, Section 6.6
   for parameter lists, Section 6.6
   for parameter passing, Section 8.7
   precedence, Section 7.1
   precedence and association, Section 2.10
   syntax (Ada 95), Appendix B
   systematic, Section 2.10
   for types and subtypes, Section 5.6
Run-time errors, Section 2.11, Section 2.11


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

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