—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-1 Day 1 Section 1 - The General Purpose Language –Introduction.

Slides:



Advertisements
Similar presentations
Chapter 7 Introduction to Procedures. So far, all programs written in such way that all subtasks are integrated in one single large program. There is.
Advertisements

—————————— CACI Products Company ————————————————————————————— SimScript II.5 —————————————— 3-1 Day 2 Section 3 - Introduction to Process Simulation –Modeling.
Tutorial 12: Enhancing Excel with Visual Basic for Applications
The Web Warrior Guide to Web Design Technologies
Introduction to C Programming
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 14 Web Database Programming Using PHP.
George Blank University Lecturer. CS 602 Java and the Web Object Oriented Software Development Using Java Chapter 4.
 2008 Pearson Education, Inc. All rights reserved JavaScript: Introduction to Scripting.
—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 2-1 Day 1 Section 1 - The General Purpose Language –Overview.
 2007 Pearson Education, Inc. All rights reserved Introduction to C Programming.
XP 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial 10.
Introduction to C Programming Overview of C Hello World program Unix environment C programming basics.
—————————— CACI Products Company ————————————————————————————— SimScript II.5 —————————————— 4-1 Day 2 Section 3 - Introduction to Process Simulation –Modeling.
Introduction to PL/SQL
Programming Logic and Design, Introductory, Fourth Edition1 Understanding Computer Components and Operations (continued) A program must be free of syntax.
Chapter 7. 2 Objectives You should be able to describe: The string Class Character Manipulation Methods Exception Handling Input Data Validation Namespaces.
SIMSCRIPT1 Modeling and Simulation in SIMSCRIPT II.5 A complete, modern, general purpose programming language –English like syntax is self documenting.
Introduction to C Programming
Testing a program Remove syntax and link errors: Look at compiler comments where errors occurred and check program around these lines Run time errors:
 Pearson Education, Inc. All rights reserved Arrays.
Basic Elements of C++ Chapter 2.
Introduction To PHP 20 * Introducing the basics of programming * Discovering variables, loops, arrays and conditions * Integrating HTML and PHP Stations.
Fortran 1- Basics Chapters 1-2 in your Fortran book.
CNG 140 C Programming (Lecture set 9) Spring Chapter 9 Character Strings.
1 © 2000 John Urrutia. All rights reserved. Qbasic Constructing Qbasic Programs.
Introduction to Java Applications Part II. In this chapter you will learn:  Different data types( Primitive data types).  How to declare variables?
CMPS 211 JavaScript Topic 1 JavaScript Syntax. 2Outline Goals and Objectives Goals and Objectives Chapter Headlines Chapter Headlines Introduction Introduction.
Input, Output, and Processing
CPS120: Introduction to Computer Science
Chapter 8 High-Level Programming Languages. 8-2 Chapter Goals Describe the translation process and distinguish between assembly, compilation, interpretation,
20-753: Fundamentals of Web Programming 1 Lecture 12: Javascript I Fundamentals of Web Programming Lecture 12: Introduction to Javascript.
Hello.java Program Output 1 public class Hello { 2 public static void main( String [] args ) 3 { 4 System.out.println( “Hello!" ); 5 } // end method main.
CMSC 104, Version 9/011 Introduction to C Topics Compilation Using the gcc Compiler The Anatomy of a C Program 104 C Programming Standards and Indentation.
Copyright © 2010 Certification Partners, LLC -- All Rights Reserved Perl Specialist.
LECTURE 1 INTRODUCTION TO PL/SQL Tasneem Ghnaimat.
Introduction to Programming with RAPTOR
Guide to Oracle 10g ITBIS373 Database Development Lecture 4a - Chapter 4: Using SQL Queries to Insert, Update, Delete, and View Data.
Chapter 1 – Matlab Overview EGR1302. Desktop Command window Current Directory window Command History window Tabs to toggle between Current Directory &
Introduction to SAS Macros Center for Statistical Consulting Short Course April 15, 2004.
INPUT / OUTPUT STATEMENTS
CMP 131 Introduction to Computer Programming Violetta Cavalli-Sforza Week 3, Lecture 1.
Overview of Form and Javascript fundamentals. Brief matching exercise 1. This is the software that allows a user to access and view HTML documents 2.
Introduction to Matlab Module #4 Page 1 Introduction to Matlab Module #4 – Programming Topics 1.Programming Basics (fprintf, standard input) 2.Relational.
Internet & World Wide Web How to Program, 5/e © by Pearson Education, Inc. All Rights Reserved.
8-1 Compilers Compiler A program that translates a high-level language program into machine code High-level languages provide a richer set of instructions.
Copyright © 2003 ProsoftTraining. All rights reserved. Perl Fundamentals.
Chapter 5 Introduction to VHDL. 2 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
 2008 Pearson Education, Inc. All rights reserved JavaScript: Introduction to Scripting.
Introduction to Java Applications Part II. In this chapter you will learn:  Different data types( Primitive data types).  How to declare variables?
11- 1 Chapter 11.  Avoiding Logic Errors by Validating Input  What to Do If Input Errors Occur  Global Considerations in COBOL  When Data Should Be.
2: Basics Basics Programming C# © 2003 DevelopMentor, Inc. 12/1/2003.
Announcements Assignment 1 due Wednesday at 11:59PM Quiz 1 on Thursday 1.
CS Class 04 Topics  Selection statement – IF  Expressions  More practice writing simple C++ programs Announcements  Read pages for next.
An Introduction to Programming with C++ Sixth Edition Chapter 5 The Selection Structure.
Online Programming| Online Training| Real Time Projects | Certifications |Online Classes| Corporate Training |Jobs| CONTACT US: STANSYS SOFTWARE SOLUTIONS.
Web Database Programming Using PHP
A variable is a name for a value stored in memory.
Chapter 2 Introduction to C++ Programming
© 2016 Pearson Education, Ltd. All rights reserved.
Web Database Programming Using PHP
The Selection Structure
Introduction to Scripting
JavaScript: Functions.
Variables In programming, we often need to have places to store data. These receptacles are called variables. They are called that because they can change.
Introduction to C++ Programming
Web DB Programming: PHP
Modeling and Simulation in SIMSCRIPT II.5
JavaScript: Introduction to Scripting
SIMSCRIPT SIMSCRIPT is a general-purpose simulation language
Presentation transcript:

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-1 Day 1 Section 1 - The General Purpose Language –Introduction to SIMSCRIPT II.5 –Variables & Syntax –Assignment & Control –Input/Output –Arrays –Program Structure, Routines & Functions –Exercise 1 Section 2 - Simulation Constructs –Entities & Attributes –Sets –SIMLAB Programming Environment –Exercise 2 

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-2 Section 1 - The General Purpose Language Part 1 - Introduction to SIMSCRIPT II.5

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-3 Modeling & Simulation Modeling –State goals and define the system –List system services and expected outcomes –Select "Measures of Effectiveness" and "Measures of Performance" –List parameters that affect MOEs and MOPs –Select factors and appropriate levels to study Select evaluation technique –Analytical Modeling –Simulation –Measurement Simulation –Implement Model –Verification & Validation –Design experiments –Perform experiments, analyze and interpret data –Present results

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-4 Overview of SIMSCRIPT II.5 A complete general-purpose programming language –English like syntax –Data structures make programming easier and faster –Highly portable language A powerful discrete-event simulation language –Models a system as it evolves over time –Timing routine and event set handled automatically –Provides random number generation & statistics collection Animated graphics language SIMGRAPHICS –User-Interface forms –Presentation graphics –Animation

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-5 Overview of SIMSCRIPT II.5 (continued) Data Structures –Arrays –Entities & Attributes –Sets Commands and Syntax –Assignment –Control structures "Behind the Scenes" –Timing –Event Handling –List Processing –Measurement

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-6 SIMSCRIPT Demonstration PC environment Editor Compiler Linker Debugger

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-7 Existing Project

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-8 Open "Calship" Directory

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-9 Open "Calship.sp"

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-10 Graphics File

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-11 Preamble, Main, & Routines

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-12 Rebuild All

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-13 Compile, Link => Project Built!

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-14 Execute

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-15 Standard Input

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-16 Pacific Port Problem

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-17 Standard Output

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-18 Section 1 - The General Purpose Language Part 2 - Variables & Syntax

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-19 Variable Names Any combination of letters, digits, periods and underscores that is not a number X NATIONAL.STOCK.NUMBER Leading periods make a difference; trailing periods don't..YES is not the same as YES but YES.. = YES

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-20 Variable Names (continued) SIMSCRIPT II.5 variables begin or end with a single letter pi.c (constant)Q.RESOURCE (RESOURCE queue) hours.v (variable)F.Q.RESOURCE (first in queue) sqrt.f (function)N.Q.RESOURCE (number in queue) time.r (routine)L.Q.RESOURCE (last in queue) User variables and functions should not begin or end in a single letter Function LOADING.TIME.FN

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-21 Variables Variables have a mode IntegerLet NUMBER = 1 Real, doubleLet MONEY = 5.50 AlphaLet GRADE = "A" TextLet TITLE = "Gone with the Wind" PointerCreate an ENTITY SubprogramLet ROUTINE.NAME = 'TITLE’ All variables must be typed by SIMSCRIPT II.5

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-22 Variables (continued) Specific definitions Define GROSS.TAKE.OFF.WEIGHT as a real variable Define I, J, and K as integer variables Default definitions Normally mode is integer Define GROSS.TAKE.OFF.WEIGHT as a real variable For I = 1 to 10 do Normally mode is undefined

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-23 Some Style Conventions All SIMSCRIPT II.5 words are capitals and lower case All user-defined words are upper case All global variables begin with a word or acronym (defined in the Preamble) AIRCRAFT AC.TAIL.NUMBER All local variables begin with a single period (Defined in routines and functions).AIRCRAFT

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-24 Syntax Each statement begins with key word Let NUMBER.OF.GATES = 20 Subtract 1 from NUMBER.OF.GATES Key words are not reserved words No statement delimiters Comments begin with 2 apostrophes ('') and end either: 1. At the end of the record or 2. At the next pair of apostrophes (on the same line) Let PAYLOAD = ''pounds

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-25 Syntax (continued) SIMSCRIPT II.5 is field oriented (not record oriented) Words are fields--anything between: 1. two blanks or 2. a blank and carriage return Can't break word at end of line Statements can begin anywhere, end anywhere Words must be in proper order

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-26 Section 1 - The General Purpose Language Part 3 - Assignment & Control

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-27 Assignments Let X = X + 1 Add 1 to X Subtract 2 from NUMBER.OF.AVAILABLE.PILOTS Let.ANSWER = (5/3 + 2 * (A*C)**2) - 6 Let AIRLINE = "DELTA"

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-28 If..Else..Endif If Else Endif If A > B Add 1 to B Else Add 1 to A Endif ''A > B

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-29 Logical Expressions Logical expressions may be simple or compound A simple logical expression is a single comparison such as: A > B B**2 - 4*A*C 0 Compound logical expressions are just simple logical expressions connected by and, or and parentheses If AIRLINE = "DELTA" andFLIGHT = "DL145" If X < = B and (C = D or E = F)

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-30 Case Statements Select case TODAY Case 1 Let DAY = "Sunday" Case 7 Let DAY = "Saturday" Case 2 to 6 Let DAY = "Weekday" Default Let DAY = "TODAY can only range from 1 to 7" Endselect ''TODAY Select case.LETTER Case "A","E","I","O","U" Let.RESULT =..VOWEL Default Let.RESULT =..CONSONANT Endselect

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-31 Case Statements (continued) Select case.PROBABILITY Case 0.0 to.25 Let.UNLOADING.TIME = 18 Case.25 to.80 Let.UNLOADING.TIME = 24 Case.80 to 1.00 Let.UNLOADING.TIME = 36 Default Endselect ''.PROBABILITY

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-32 FOR Loop For I = 1 to 10 by 2 Do Loop ''I = 1 to 10 by 2 For J back from 20 to 1 by 5 Do Loop ''J back from 20 to 1 by 5

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-33 While & Until Loops While M < Do Let M = M * X Add 1 to X Loop ''M < Until M >= Do Let M = M * X Add 1 to X Loop ''M >= 10000

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-34 Termination Phrases For I = 1 to N while SUM <= MAX Do Loop ''I = 1 to N (This loop will continue until either I exceeds N or SUM exceeds MAX, whichever occurs first.)

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-35 Selection Phrases For I = 1 to 13 with VALUE(I) > 9 Do Add VALUE(I) - 9 to.POINT.COUNT Loop ''I = 1 to 13 (This loop will iterate 13 times, executing the Add statement only when Value(I) > 9

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-36 Section 1 - The General Purpose Language Part 4 - Input & Output

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-37 Free Form Input Read SQUADRON.NUMBER, AUTHORIZED.STRENGTH and SQUADRON.NAME Possible data: TFS or TFS

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-38 Formatted Input Read SQUADRON.NUMBER, AUTHORIZED.STRENGTH and SQUADRON.NAME as /,i 5,s 1,d(10,0),s 1,t 20 Read SQUADRON.NAME as t * '522nd Tactical Fighter Squadron'

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-39 Input Control Statements System Variables can test characteristics of input data before the data are read –sfield.f, efield.f Starting/ending column of next data field –mode Mode of next data field –data Presence/absence of data While data is not ended Do Read SQUADRON.NUMBER, AUTHORIZED.STRENGTH and SQUADRON.NAME Loop ''data is not ended

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-40 Free Form Output List SQUADRON.NUMBER, AUTHORIZED.STRENGTH and SQUADRON.NAME Output Looks Like This: SQUADRON.NUMBER = 1002 AUTHORIZED.STRENGTH = 174 SQUADRON.NAME = 522.TFS

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-41 Formatted Output Print 4 lines with SQUADRON.NUMBER, AUTHORIZED.STRENGTH and SQUADRON.NAME thus SQUADRON NUMBER:**** AUTHORIZED STRENGTH:**** SQUADRON NAME: *************************

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-42 Formatted Output (continued) Open unit 10 for output, name = "RESULTS" Use unit 10 for output Write SQUADRON.NUMBER, AUTHORIZED.STRENGTH, SQUADRON.NAME as /,s 4,"SQUADRON.NUMBER:",s 1,i 4,/, "AUTHORIZED.STRENGTH:",s 1,i 4,/, s 6,"SQUADRON.NAME:",s 1,t 25 using unit 10

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-43 Formatted Output (continued) To start a new line: Start new line To introduce blank lines: Skip n lines To go to a new output page: Start new page

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-44 Titles on Every Page Let heading.v = 'TITLE' Call date.r Yielding DATE, TIME Routine TITLE Print 2 lines with DATE, TIME thus ************ Final Report End ''TITLE

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-45 Titles on Every Page (continued) Lines.v Number of lines per page (default = 55, 0 implies no page breaks) Line.v Current line number Pagecol.v means number pages with PAGE beginning in column n Use unit 20 for output Let pagecol.v = 0 Let lines.v = 30 Use unit 21 for output Let pagecol.v = 60 Let lines.v = 50

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-46 Section 1 - The General Purpose Language Part 5 - Arrays

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-47 Defining Arrays Arrays have mode and dimensionality All elements have same mode Mode and dimensionality determined at compile time The size of the array may be determined at run time Define AIRPORT as a 1-dimensional, text array Define TABLE as a 3-dim, real array

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-48 Initializing Arrays The space for an array is allocated during execution as follows: Reserve AIRPORT as 5 Reserve TABLE as 10 by 32 by 8 The space for an array is released during execution as follows: Release AIRPORT, TABLE

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-49 Manipulating Arrays Array elements are referenced by subscribing the array name Let AIRPORT(5) = "Dallas-Ft.Worth" Let TABLE(5,3,7) = 16.5 Subscript values range from 1 to the specified maximum

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-50 Storing Arrays Define AIRPORT as a 1-dimensional, text array Reserve AIRPORT as 5 AIRPORT(1) AIRPORT(2) AIRPORT(3) AIRPORT(4) AIRPORT(5) address AIRPORT(*) base pointer Behind the Scenes

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-51 This page is intentionally blank

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-52 Section 1 - The General Purpose Language Part 6 - Program Structure, Routines & Functions

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-53 Program Structure Preamble Definitions only--no executable statements All global variables must be defined explicitly in the preamble End Main Execution starts here End Routines Local variables are local to routine where defined Simscript II.5 routines are recursive Separate local memory for each call Must have an End

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-54 Functions Preamble Define FIND.NAME as a text function End ''Preamble Main Define.SOCIAL.SECURITY.NUMBER as an integer variable Define.NAME as a text variable Let.SOCIAL.SECURITY.NUMBER = Let.NAME = FIND.NAME(.SOCIAL.SECURITY.NUMBER) End ''Main

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-55 Functions (continued) Function FIND.NAME Given.NUMBER ''Social security number Define.NUMBER as an integer variable Define.LAST.NAME as a text variable Return with.LAST.NAME End ''FIND.NAME

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-56 System Functions There are a large number of system functions. For example: abs.fAbsolute value arcsin.fTrig functions atot.fALPHA to TEXT conversion beta.fstatistical distributions date.fconverts a calendar date to simulation time frac.fmathematical functions shr.fbit shift right substr.freturns a substring of a text variable upper.fconverts letters to upper case (See Reference Manual, Section 1.8, Table 6, p. 21ff. - "Go to page 39" in Acrobat Reader - In the online help, pick SIMSCRIPT II.5 - System functions.)

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-57 Routines Main Define.SOCIAL.SECURITY.NUMBER as an integer variable Define.NAME as a text variable Let.SOCIAL.SECURITY.NUMBER = Call FIND.NAME Given.SOCIAL.SECURITY.NUMBER Yielding.NAME End ''Main

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-58 Routines (continued) Routine FIND.NAME Given.NUMBER ''Social security number Yielding.LAST.NAME ''Name of the person with that SSN Define.NUMBER as an integer variable Define.LAST.NAME as a text variable Return End ''FIND.NAME

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-59 This page is intentionally blank

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-60 Exercise 1 A Data File with Comments C:\SIMSCRIPT\MODELS\ReadFile

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-61 Example Using Routines & I/O: A Data File with Comments A program uses a separate routine to read each file. –The file begins with a record listing the name of the routine and the date of the file. –This is followed by one or more comments. The comment section ends when a numerical field is found at the beginning of a record. –The read routine compares the name in the first record with the name of the routine. If they are not the same, the routine prints an error message and stops. –Otherwise it reads the data and prints it. Try writing to an output file instead of a window

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-62 Data File INP.220.READ.AIRCRAFT.DATA '' Aircraft location file '' Given authorized number and location of each aircraft type '' a. Type of aircraft (text) '' b. Authorized number of aircraft (integer) '' c. Location of aircraft (text) - location must be '' enclosed by apostrophes 9 End of comments; data starts F 'Langley AFB VA' F 'Hill AFB UT'

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— Preamble 2 3 '' Program to Read and Print a Commented Data File 4 '' files: READFILE.SIM, ACFT.DAT 5 6 Normally mode is undefined 7 8 End ''Preamble 1 Main 2 3 Call INP.220.READ.AIRCRAFT.DATA 4 5 Print 2 lines thus Press to end program… 8 Read as / using unit End ''Main

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— Routine INP.220.READ.AIRCRAFT.DATA 2 3 Define.AUTHORIZED.NUMBER as an integer variable 4 5 Define.ROUTINE.NAME, 6.SHORT.NAME, 7.DATE, 8.AIRCRAFT.NAME and 9.LOCATION 10 as text variables '' Open the input unit Open unit 10 for input, name = "ACFT.DAT" 15 Use unit 10 for input '' Read the file name and date; if not correct, print error message 18 '' and stop Read.ROUTINE.NAME, 21.DATE Let.SHORT.NAME = substr.f(.ROUTINE.NAME, 1, 7) If.SHORT.NAME is not equal to "INP.220" Print 2 lines with.SHORT.NAME thus File name does not agree with routine name ******* INP Trace 32 Stop 33

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— Endif ''.SHORT.NAME is not equal to "INP.220" '' Print the name and date to the standard output; skip 2 lines Print 1 line with.ROUTINE.NAME, 39.DATE thus ****************************** ********** Skip 2 output lines '' Jump over the comments in the data file While mode is alpha 47 Do 48 Start new record 49 Loop ''mode is alpha do Start new input record '' As long as there is data in the file, read 3 fields and print them While data is not ended 56 Do Read.AIRCRAFT.NAME, 59.AUTHORIZED.NUMBER 60 Read.LOCATION as t * Print 1 line with.AIRCRAFT.NAME, 63.AUTHORIZED.NUMBER and 64.LOCATION thus ***** ** ********************************* Loop ''data is not ended

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— '' Close the input unit and return Close unit End ''INP.220

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-67 Output INP.220.READ.AIRCRAFT.DATA F Langley AFB VA F Hill AFB UT

—————————— CACI Products Company —————————————————————————————— SimScript II.5 —————————————— 1-68 This page is intentionally blank