profiler2010.txt This is the file of text items for the profiler program. ======================================== Program Description This program is an "algorithm profiler". It maintains a "current sequence" of values. At any given time the sequence may be empty; or, it may contain any number of integer values, any number of real values, or any number of string values. All actions are performed on this current sequence. Generating a new sequence at any time will replace all values in the current sequence with new values. Those new values may be of the same type, or a different type. In addition to quitting (option 1), displaying the information you are now reading (option 2), and displaying an arbitrary textfile (option 3), the program also provides these additional menu options (options 4 to 9): 4. Generate all current sequence values randomly This option allows the user to generate any number of either integer values within a user-determined range, real values within a user-determined range, or string values with a user-determined length and character content. In the case of string values the user supplies two entries, the first of which must precede the second alphabetically, and the length of the first must be <= the length of the second. Generated strings then have a length that lies between the lengths of the input strings, characters that come from the two strings, and each generated string also lies alphabetically between the two. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5. Read all current sequence values from keyboard or file If the source is to be a file, the name of the file must be entered by the user from the keyboard. 6. Write all current sequence values to screen or file If the output destination is a file, the user must enter the name of the file. The user chooses how many values appear per line and the field width for each value. In the case of real values, the number of places after the decimal is also user-chosen. Numerical values are output right-justified, but string values are output left justified. 7. Apply an algorithms to all current sequence values In this case, the algorithm may be performed with or without a) "profiling" (that is, timing how long an algorithm takes to complete its task, and/or counting the total number of operations of various types executed as the algorithm performs its task) b) taking "snapshots" (that is, displaying the sequence in its current state after each "pass" of an algorithm, which will mean different things for different algorithms) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! If profiling of any kind is done (either timing or operation counting), the results are automatically displayed when the chosen algorithm ends. If snapshots are activated, the sequence is automatically displayed after each pass of the algorithm (whatever that means for the current algorithm). 8. Restore original order to all current sequence values 9. Reverse order of all current sequence values !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:OptionNotYetImplemented This menu option is not yet implemented. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:IntegerValuesGenerated Random integer values have been generated and placed into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:RealValuesGenerated Random real values have been generated and placed into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:StringValuesGenerated Random string values have been generated and placed into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:IntegerValuesRead All integer values have been read and placed into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:RealValuesRead All real values have been read and placed into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:StringValuesRead All string values have been read and placed into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:ValuesReadFromFile All values have been read from the file into the current sequence. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:ValuesWrittenToFile All values from the current sequence have been written to the file. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Warning:StringReminder ************************************************************************** ******** !Be careful when entering your two string entries below! ******** ************************************************************************** 1. The length of the first entry must be <= the length of the second. 2. Each generated string will have a length that is >= the length of the first entry and <= the length of the second entry. 3. The first entry must also be alphabetically <= the second. 4. The generated string will also be alphabetically >= the first entry and alphabetically <= the second entry. 5. All characters in the generated string will come from the two entries. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Warning:NoInputFile Error: Input file does not exist. You will now be returned to the Main Menu. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Warning:SequenceEmptyNoWrite Warning: The current sequence is empty and will not be written. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Warning:SequenceEmptyNoAlgorithm Warning: The current sequence is empty and no algorithm will be applied. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Warning:TimingSnapshotInteraction ***** Do not turn on both the timing and snapshot features together. ***** ************************************************************************** You have just chosen the algorithm you would like to use on this occasion. You must now decide whether to turn on timing, counting and/or snapshots. However, you should *not* turn on *both* the timing and snapshot features. The reason for this is that you will probably want to take a moment or two to stare at each snapshot as the algorithm progresses, and this time will show up as part of the time taken by the algorithm to perform its task! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Error:BadChoiceFromAlgorithmMenu You have failed to enter a valid menu choice at the Algorithm Menu. You will now be returned to the Main Menu. Better luck there! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:NowSortedAscendingStatsNext The current sequence is now sorted in ascending order. If the counter or timer was on, those results will be displayed next. Otherwise, you will simply be returned to the Main Menu. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:SequenceRestored The current sequence has been restored to its original order. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- Info:SequenceReversed The order of items in the current sequence has been reversed. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ---------------------------------------- ======================================== This file may or may not be complete, for purposes of the various versions of the profiler programs that will use it. As time goes on, it may be convenient to place more messages in it. If this happens, an update notice will appear here at the end of the file, and probably elsewhere (on the What's New page, for example).