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

Ada 95 Problem Solving and Program Design Index: S-Z

S

Scalar
   data types, Chapter 7
   variables, Chapter 8
Scalar types
   defined, Section 5.6
   subtypes of, Section 5.6
Scale factor, Section 2.10, Section 7.1
Scientific method, Section 1.4
Scientific notation, Section 2.8
Screen, Section 3.7
Screen, information about, Section 3.7
Screen-control package, using a, Section 3.7
Search, Section 8.10
Search
   algorithm for, Section 8.10
   sequential, Section 13.6
   and sort, Section 8.10
Secondary memory, Section 1.2
Second generation of electronic computers, Section 1.1
Selection sort algorithm, Section 8.10
SelectSort, Section 8.10
Semantic errors, Section 2.11
Sentinel-controlled loops, Section 6.2, Section 6.2
Sequence of executable statements, Section 2.5
Sequential search, Section 13.6
Sets_Generic (body), Section 11.5
Sets_Generic (spec), Section 11.5
Sets
   ADT
      implementing the generic, Section 11.5
      specifying the generic, Section 11.5
   discrete, Section 11.5
   generic packages, Section 11.5
   operations on, Section 11.5
Show_DeMorgan, Section 7.4
Show_Differences, Section 8.6
Simple_Dates, Section 8.3
Sine_Curve, Section 7.2
Single character literal, Section 2.11
Singly_Linked_Lists, Section 14.2, Section 14.2
Slicing and unconstrained arrays, Section 11.1
Smiley, Section 3.7
Software, defined, Section 1.2
Software component, reusable, Section 10.1
Software developer defined, Section 1.4
Software development method, Section 1.4
Software engineering, Section 1.4
Software support "hot line" (case study), Section 11.2
Software tools defined, Section 1.6
Sort_3_ Numbers, Section 6.6
Sort_Generic (body), Section 11.4
Sort_Generic (spec), Section 11.4
Sort_Score_File, Section 8.10
Sorting
   algorithm selection, Section 8.10
   an array, Section 8.10, Section 8.10
   array of records (case study), Section 8.10
   file of records, Section 8.10
   to order an array of records, Section 11.4
   programs, Section 11.2, Section 11.4
   and search, Section 8.10
Source programs, Section 1.5
Specifications
   for Ada.Calendar package, Appendix E
   for Ada math libraries, Appendix F
   for Ada string libraries, Appendix G
   for Ada.Text_IO, Appendix D
   files, Section 3.7
   functions, Section 4.7
   representation, Section 2.1
Spider, Section 7.7
Spider (and its commands), Section 3.8
Spider.My_Stuff (body), Section 6.8
Spider.My_Stuff (spec), Section 6.8
Spiders
   algorithm for moving, Section 16.4
   child package for the, Section 6.8
   commands of the, Section 7.7
   developing a task type for drunken, Section 16.4
   drunken, Section 7.3
   introducing the, Section 3.8
   keeping track of multiple, Section 12.3
   multiple concurrent, Section 16.4
   packages
      inside the, Section 7.6
      writing applications of the, Section 6.8
   patterns, Section 5.5
   protecting the move operation, Section 16.4
   writing an ADT for multiple, Section 10.6
Spiders (package specification), Section 10.6
Spiral, Section 5.5
Square_Roots, Section 4.6
Squares, Section 5.1
Stack applications, Section 14.6
Stacks_Generic, Section 14.6
Stacks
   parameter and local variable, Section 13.2
   and queues, Section 14.6
   using linked lists, Section 14.6
Standard defined, Section 2.1
Start_Buttons, Section 16.2
Startup (simplest spider program), Section 3.8
Statements
   assignment, Section 2.7, Section 2.10
   CASE, Section 7.6
   FOR, Section 5.1
   IF and the CASE comparison, Section 7.6
   input/output statements, Section 2.8
   null, Section 3.1
   procedure call, Section 2.8
   sequence of executable, Section 2.5
State variables, Section 7.7
Stepwise refinement, Chapter 3
Storage allocator defined, Section 14.1
Stored program
   computer, Section 1.1
   concept, Section 1.2
StringReverse, Section 14.6
Strings
   assigning, comparing, and displaying, Section 9.1
   concatenation, Section 9.1
   data type, Section 9.1
   and files, Section 9.1
   getting input values from, Section 9.5
   literals, Section 2.11
   one-character, Section 9.1
   palindrome (case study), Section 13.4
   reading, Section 9.1
   referencing individual characters in, Section 9.1
   slicing, Section 9.1
   variables, Section 9.1
Structure chart, Section 3.6
Structured programming, Section 3.3
Structures
   control, Section 2.1, Section 3.3
   Data, Section 2.1
   dynamic data, Section 14.1
   linked data, Section 14.1
   nested control, Section 4.5
   system, Section 2.1
Subproblems defined, Section 1.4
Subprogram parameters
   generic, Section 11.3
   records as, Section 8.2
Subprograms
   debugging recursive, Section 13.7
   recursive, Chapter 13
Subscripted variable, Section 8.5
Subscripts
   arrays, Section 8.5
   arrays with noninteger, Section 8.9
   index to arrays, Section 8.6
Subset defined, Section 2.1
Subtypes; see also Types
   declaration defined, Section 2.9
   definitions, Section 2.10
   of enumeration types, Section 5.6
   of Integer, Section 2.10
   motivation for using, Section 5.6
   of predefined scalar types, Section 5.6
Successive approximations method, Section 7.2
Sum_and_Factorial, Section 5.8
Sum_Integers, Section 5.1
Sum_Items, Section 5.2
Sum, accumulating a, Section 5.1
Summation notation, Section 7.2
Sum of integers (case study), Section 5.1
Sum problem, general (case study), Section 5.2
Supercomputers, Section 1.1
Swap_Generic, Section 11.3
Syntactic and semantic errors, Section 2.11
Syntax display
   array reference, Section 8.6
   array type declaration, Section 8.5
   array type declaration (multidimensional), Section 12.1
   assignment statement (arithmetic), Section 2.7
   attribute query, Section 3.4
   block with exception handler, Section 6.5
   call statement, simple function, Section 3.6
   character Get procedure, Section 9.1
   character get procedure, Section 2.8
   child package, Section 6.8
   comment, Section 2.4
   constant declaration, Section 2.4
   context clause, Section 2.4
   counting loops(simplest form), Section 5.1
   counting loops (type-name form), Section 5.6
   End_of_File function (for text files), Section 9.3
   End_of_Line function (for text files), Section 9.3
   enumeration Get procedure, Section 3.4
   enumeration Put procedure, Section 3.4
   enumeration type declaration, Section 3.4
   exception handler, Section 6.5
   EXIT statement, Section 6.4
   floating-point get procedure, Section 2.8
   function body, Section 4.7
   function specification, Section 4.7
   general LOOP statement, Section 6.4
   generic specification, Section 11.4
   Get procedure, enumeration, Section 3.4
   IF statement (one alternative), Section 4.1
   IF statement (two alternatives), Section 4.1
   integer get procedure, Section 2.8
   multiple alternative IF statement, Section 4.5
   New_Line Procedure, Section 2.8
   null statement, Section 3.1
   operator overloading, Section 10.4
   package body, Section 4.8
   package specification, Section 4.8
   private type definition, Section 10.3
   procedure body (procedure with parameters), Section 6.6
   procedure Call statement (procedure with parameters), Section 6.6
   procedure specification (procedure with parameters), Section 6.6
   program heading, Section 2.4
   protected body, Section 16.4
   protected type specification, Section 16.4
   Put procedure, character, Section 2.8
   Put procedure, enumeration, Section 3.4
   Put procedure, floating-point, Section 2.8
   Put procedure, integer, Section 2.8
   Put procedure, string, Section 2.8
   record type declaration, Section 8.1
   record type with variant part, Section 12.4
   simple procedure call statements, Section 2.8
   string Get_Line procedure, Section 9.1
   string Get procedure, Section 9.1
   string get procedure, Section 2.8
   subtype declaration, Section 5.6
   subunit stub, Section 14.2
   task body, Section 16.2
   task type specification, Section 16.2
   unconstrained array type, Section 11.1
   user-defined exception, Section 10.3
   variable declaration, Section 2.4
   WHILE statement, Section 6.1
Syntax rules
   Ada 95, Appendix B
   for parameter lists, Section 6.6
Systematic rules, Section 2.10
Systems approach, Section 1.4
System structures, Section 2.1
   abstract data types (ADTs), Section 10.1
   character and string packages in ADA 95, Section 9.2
   class-wide types, Section 15.4
   dynamic dispatching, Section 15.5
   exception handling, Section 5.9
   a function package, Section 5.8
   general form of an Ada program, Section 2.5
   a generic sets package, Section 11.5
   generic units, Section 11.3
   a generic version of the linked list package, Section 14.5
   geometric figures, Section 12.5
   the importance of packages, Section 3.5
   numerical input and output, Section 2.3
   object-oriented programming (OOP), Section 15.1
   a package for calendar dates, Section 8.3
   a package for robust input, Section 6.7
   protected types and protected objects, Section 16.3
   robust exception handling, Section 6.5
   tagged types, Section 15.2
   task types and task objects, Section 16.2
   text files, Section 9.3
   the USE clause, Section 7.2
   using ADA's calendar package, Section 3.6
   using Ada's math library, Section 4.6
   using a screen-control package, Section 3.7
   using package CALENDAR as an ADT, Section 10.2
   writing an ADT for calendar dates, Section 10.3
   writing an ADT for employee records, Section 10.5
   writing an ADT for money quantities, Section 10.4
   writing a simple package, Section 4.8
   writing simple functions, Section 4.7
   writing simple procedures, Section 6.6

T

Tables
   decision, Section 4.5
   displaying, Section 5.8
Taft, Tucker, Section 2.1
Tagged record types, Chapter 15
Tagged types, Section 15.2
   bodies of packages, Section 15.2
   converting among derived, Section 15.2
   deriving new, Section 15.2
   and primitive and non-primitive operations, Section 15.2
   variables of, Section 15.2
Task objects
   multiple, Section 16.2
   and task types, Section 16.2
Tasks
   controlling the starting order of, Section 16.2
   cooperating, Section 16.2
Tasks objects, arrays of, Section 16.4
Task types
   for drunken spiders, Section 16.4
   and task objects, Section 16.2
Temp_Table, Section 6.1
Temporary variables, Section 7.7
Test_Binary_Search, Section 13.6
Test_Blob_Size, Section 13.5
Test_Dates (test of improved dates package), Section 10.3
Test_Employee, Section 10.5
Test_Geometry, Section 12.5
Test_Lists, Section 14.2
Test_Max_Value, Section 11.1
Test_Maximum_Generic, Section 11.3
Test_Multiply (test of recursive multiplication), Section 13.1
Test_Print_Backward, Section 13.4
Test_Robust_Input, Section 6.7
Test_Simple_Dates, Section 8.3
Test_Sort_Generic, Section 11.4
Test_Swap_Generic, Section 11.3
Testing with exception handling, Section 6.9
Tests, validation, Section 1.5
Text_IO
   Ada exceptions, Section 1.6
   Ada specification package, Appendix D
   behaviors of Get operations in, Section 9.3
   reading and writing files with Ada, Section 9.3
Text files
   declaring a, Section 9.3
   defined, Section 9.3
   the keyboard and the screen as, Section 9.3
   lengths of lines in a (case study), Section 9.6
   package specification for, Section 9.3
   reading and writing a, Section 9.3
   systematic view of, Section 9.3
Third generation of electronic computers, Section 1.1
Three_Days, Section 4.4
Three numbers, finding largest and smallest (case study), Section 4.8
Time_of_Day, Section 7.1
Time-slicing, Section 16.2
Today, find yesterday and tomorrow, given (case study), Section 4.4
Todays_Date_2, Section 3.6
Todays_Date, Section 3.6
Tokens
   defined, Section 2.8, Section 2.10
   and literals, Section 2.10
Tomorrow, given today find yesterday and (case study), Section 4.4
Tour_Room (Spider), Section 6.8
Towers of Hanoi (case study), Section 13.5
Tracing
   hand, Section 4.3
   a program or algorithm, Section 4.3
Transformations, coordinate, Section 7.6
Translation - English to French color names (case study), Section 3.4
Triangle, Section 5.4
Two_Cooperating_Tasks, Section 16.2
Two_Tasks, Section 16.2
Two-Dimensional arrays, manipulation of, Section 12.1
Type membership, the operator IN, Section 5.6
Types; see also Subtypes
   access, Chapter 14
   and Ada programs, Section 2.2
   array, Section 8.5
   avoiding anonymous array, Section 8.7
   CHARACTER, Section 7.5
   character, Section 9.2
   class-wide, Section 15.4
   constructors, Chapter 8
   enumeration, Chapter 3
   of expressions, Section 7.1
   extensions, Chapter 15
   general access, Chapter 15
   pointer, Chapter 14
   protected, Section 16.3
   and subtypes compatibility rules, Section 5.6
   task, Section 16.2

U

Unconstrained arrays
   attribute functions for, Section 11.1
   slicing and, Section 11.1
Unconstrained array types
   and generics, Chapter 11
   operations on, Section 11.1
Undefined variables, Section 2.9
Units of measurement, converting (case study), Section 2.6
Uppercase and lowercase, use of, Section 2.2
Usage errors, Section 2.11
Use_Payroll, Section 15.2
USE and USE TYPE clauses, Section 10.4
Useful_Functions, Section 5.8, Section 5.8
User, requesting data from the program, Section 2.8
User-defined identifiers, Section 2.4

V

Validating the value of variables, Section 4.5
Validation tests, Section 1.5
Valid identifiers, Section 2.4
Value of a coin collection, finding (case study), Section 2.10
Values
   access, Section 14.1
   default, Section 2.8
   entering an unspecified number of, Section 6.2
   floating-point, Section 2.3
   integer
   storing into variant records, Section 12.4
   of variable, Section 2.8
Variable declarations, Section 2.4, Section 2.4
Variables
   access, Section 14.1
   class-wide, Section 15.4
   defined, Section 2.4
   local, Section 4.7
   pointer, Section 14.1
   scalar, Chapter 8
   state, Section 7.6
   subscripted, Section 8.5
   of tagged types, Section 15.2
   temporary, Section 7.7
   undefined, Section 2.9
   validating the value of, Section 4.5
   value of, Section 2.8
Variable stacks, parameter and local, Section 13.2
Variant records, Section 12.4
   constrained and unconstrained, Section 12.4
   declaring, Section 12.4
   defined, Chapter 12, Section 12.4
   displaying a, Section 12.4
   operations on, Section 12.4
   storing values into, Section 12.4
Volatile memory, Section 1.2
Von Neumann, John, Section 1.1, Section 1.2

W

Weekly_Pay, Section 2.9
WHILE loops with zero iterations, Section 6.2
WHILE statement, Section 6.1
WHILE statement, Section 6.1
WHILE statements, Section 6.10
WITH clause, Section 2.2
Words, reserved, Section 2.2, Appendix A
Work_Days, Section 5.6
Workstations, Section 1.1
World_Time, Section 10.2
World times (case study), Section 10.2
Worm_and_Apple, Section 6.1
Writers, program, Section 1.5
Writing
   expressions, Section 2.10
   a multiple-alternative IF statement, Section 4.5
   simple functions, Section 4.7
   a simple package, Section 4.8

Y

Yesterday and tomorrow, given today find (case study), Section 4.4


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

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