The invention relates to functions for an advanced programmable calculator and equation solver.
Methods of calculating and solving equations with programmable calculators and devices that do such are known but they could be improved by making them easier to use and more efficient. For example, improved methods are needed to simplify the entry of instructions, comments, formulas, functions, computer coding and data to make related methods and calculators more useful and efficient. In addition, simplifying the conversion of data (e.g., converting numeric values into degrees, minutes, and seconds) would also make such methods and calculators that use such converted data more useful and efficient. Furthermore, the automatic creation of space between math operators and the option to save, view, load, and delete all or parts of formulas and/or variables in a string used to fill in text boxes within an input text box would be advantageous to the user. Also, the ability to view and save the history of processes and more efficient file creation and storage would be helpful. Such useful and needed capabilities (e.g., features) are provided by embodiments of this invention.
The embodiments of this invention provide a programmable calculator and equation solver and methods of calculating and solving equations with a programmable calculator and equation solver that has advantageous capabilities. Certain of these embodiments are used to create a text file, which can contain instructions/comments, formulas, and computer coding (e.g., computer programming language instructions), which then is capable of being read from top to bottom, with the result that one or more formulas (i.e., equations) and/or computer coding are applied and/or solutions are generated and output.
The preferred embodiments of this invention are provided on USB drive devices. Other embodiments can be provided on other memory devices. Still other embodiments can be provided in a stand-alone device that can be handheld.
The most preferred embodiments of this invention comprise (i.e., “comprise” meaning include but are not limited to) a programmable calculator and equation solver that comprises a USB device. The USB device comprises a software application that can be executed by a computer operating system. The software application comprises a multiple document interface application, a solver application, an optional encryption/decryption function, and an optional licensing function.
In these most preferred embodiments, the multiple document interface application is capable of displaying multiple documents at the same time, with each document displayed in its own window. The multiple document interface application comprises a text entry module, a CALCULATE module, and a RUN module. The text entry module is capable of being used to create, save, and access one or more documents comprising one or more lines of text, each line of text comprising (a) instructions or comments, (b) one mathematical and/or trigonometric formula, or (c) computer coding. The CALCULATE module is capable of being used to execute instructions comprising a mathematical and/or trigonometric formula. The CALCULATE module reads the lines of text from top to bottom. The CALCULATE module outputs the results of the executed formulas, and the CALCULATE module is capable of converting the outputted results in different forms comprising numerals, radians, degrees, and/or gradients. The RUN module is capable of being used to execute computer programming language instructions. The RUN module reads the lines of text from top to bottom. The RUN module also outputs the results of the executed coding, and the RUN module is capable of converting the outputted results in different forms comprising numerals, radians, degrees, and/or gradients.
In these most preferred embodiments, the solver application comprises a formula input module and a solver module. The formula input module is capable of being used to enter at least one mathematical and/or trigonometric formula that has at least one unknown variable. The solver module is capable of being used to solve the at least one unknown variable in the at least one mathematical and/or trigonometric formula, and the solver module is capable of being used to output the solution of the at least one unknown variable.
In these most preferred embodiments, the optional encryption function is capable of encrypting or decrypting each of the documents, and the optional licensing function is capable of being used to control the use of the software application and limit such use to licensed users.
In certain embodiments of this invention, the CALCULATE module and the RUN module each have the capability of processing text containing numerals, degrees, radians, and/or gradients. In these and other embodiments of this invention, the CALCULATE module and the RUN module have the capability of processing formulas or coding, respectively, by clicking only one control key.
In certain embodiments of this invention, the software application has the capability of converting the outputted results of the CALCULATE module, the RUN module, and the solver module into degrees, minutes, and seconds. In these and other embodiments of this invention, the software application has the capability of saving, viewing, loading, and deleting mathematical and/or trigonometric formulas and/or variables in whole or in part in strings that are capable of being used to fill-in text boxes within an input text box. In these embodiments, the saving, viewing, loading, and deleting of formulas and data is very efficient and simple.
In certain embodiments of this invention, the software application uses Rich Text Format, which permits the text to be efficiently and easily processed in beneficial manner (e.g., by changing fonts, highlighting, etc.).
Advantages of certain embodiments of this invention are that they can include software that is capable of allowing a user to enter trigonometry (“trig”) functions in one formula containing degrees, radians, gradients, and hyperbolic functions (e.g., Sin, Cos, Tan, etc., and are asked to enter “Numeric Value, Variable, or Formula”).
Another advantage of certain embodiments of this invention are that they are capable of computing the output of several formulas after clicking only one control key.
Another advantage of certain embodiments of this invention are that they are capable of converting a numeric value into degrees, minutes, and seconds by simply selecting the text of interest. The conversion capabilities in some of these embodiments are shown as a tool tip.
Another advantage of certain embodiments of this invention are that they provide an option to save, view, load and delete variables and formulas stored in a string used to fill-in text boxes within an input text box.
Another advantage of certain embodiments of this invention are that they automatically create space between math operators.
Another advantage of certain embodiments of this invention (e.g., embodiments using Rich Text Format, such as shown
Another advantage of certain embodiments of this invention (e.g., embodiments using Rich Text Format, such as shown
Additional features and advantages of various embodiments will be set forth in part in the description that follows, and in part will be apparent from the description, or may be learned by practice of various embodiments. The objectives and other advantages of various embodiments will be realized and attained by means of the elements and combinations particularly pointed out in the description and appended claims. Further objectives and other advantages will be apparent to a person of skill in the art applying the embodiments of the invention.
The preferred embodiments of this invention provide methods of calculating and solving equations with advanced programmable calculators and devices that can perform such methods.
These components comprise a USB device containing a software application 10. The USB device containing a software application 10 comprises a multiple document interface application 30, a solver application 40, an optional encryption/decryption function 20, and an optional licensing control function 50. The multiple document interface application comprises a RUN module 38, a text entry module 32, and a CALCULATE module 34, wherein text is entered by the text entry module 32 and then acted on by the CALCULATE module 34. The solver application 40 comprises a formula input module 42 and a solver module 44, the latter of which acts on the formulas input by the formula input module 42.
Certain of the preferred embodiments of this invention provide capabilities to users through the creation and use of text files stored in documents on devices. The most preferred embodiments of this invention are provided on USB drive devices. The USB drive itself may run the software application of this invention directly (e.g., using USB Auto Run, Plug & Play, or a similar function and a computer's RAM) or it may provide the program for a computer or other device to load and run. Other embodiments can be provided on other memory devices, including stand-alone handheld devices.
The most preferred embodiments of this invention further comprise a software application with several capabilities (e.g., features/functions). In some of these embodiments, the user can save all text that the user creates in text documents within a text file having the extension .txt. Such a text file preferably may be used to reduce the footprint, for example, on a USB drive, or other memory/storage device.
In some of these embodiments, the software application is resident on a USB drive or other memory/storage device and will, for example, run on any Windows Desktop Operating System, such as Windows 95 and Windows 10. A person of skill in the art can apply the disclosure provided herein and run the software application on other operating systems also. Different programming language can be used for the embodiments of this invention, such as, for example, C, Pascal, Java, Python, JavaScript or PHP, and others.
In certain of the most preferred embodiments, these methods are provided with an MDI Main Form for multiple document application and a solver for single document application. Optionally, certain embodiments of this invention provide an encryption/decryption application also. A screen shot from such an encryption/decryption embodiment is provided in
The most preferred embodiments of this invention comprise a programmable calculator and equation solver that comprises a USB or other similar device. The USB device comprises a software application that can be executed by a computer operating system. The software application comprises a multiple document interface application, a solver application, an optional encryption/decryption function, and an optional licensing function.
MDI Main Form—Multiple Document Interface Application
Multiple document interface applications enable a user to display multiple documents at the same time, with each document displayed in its own window. Such applications have a menu item with submenus for switching between windows or documents. Embodiments of this invention have a multiple document interface application and a toolbar comprising a
CALCULATE and RUN control, among other features. In these most preferred embodiments, the multiple document interface application is capable of displaying multiple documents at the same time, with each document displayed in its own window. The multiple document interface application comprises a text entry module, a CALCULATE module, and a RUN module. E.g.,
Text Entry Module. The text entry module is capable of being used to create, save, and access one or more documents comprising one or more lines of text, each line of text comprising (a) instructions and/or information (e.g., or other non-executable formulas), or (b) one mathematical and/or trigonometric formula, or (c) computer code. Thus, the user accesses the software application and enters (a) instructions for the user, as an example, or (b) a mathematical and/or trigonometric formula on each line of text, or (c) computer code, all in the same document. For example,
Indications that a line of text is a formula include the use of the equals (“=”) sign somewhere in the line. Indications that a line of text should be processed also can include characters, such as the “'” character on keyboards. In addition, certain embodiments of this invention allow the user to select which lines to process (e.g., by selecting text with a computer mouse).
Preferred embodiments permit the user to save, view, load, and delete mathematical and/or trigonometric formulas and/or variables in whole or in part in strings that are capable of being used to fill-in text boxes within an input text box. In these embodiments, the saving, viewing, loading, and deleting of formulas and data is very efficient and simple. Thus, for example, a user can save a variable and view, load, save, and clear those variables for use later (e.g., for plugging into an input text box).
Another useful embodiment is the “Undo Redo (On)” choice from the “Options” menu.
CALCULATE Module and tool bar control. The CALCULATE module is capable of being used to execute instructions in each line of text, including executing instructions comprising a mathematical and/or trigonometric formula. In preferred embodiments, the CALCULATE module reads the lines of text from top to bottom. The CALCULATE module also outputs the results of the executed instructions, and the CALCULATE module is capable of converting the outputted results in different forms comprising numerals, radians, degrees, and/or gradients.
Certain embodiments of this invention provide a “CALCULATE Tool Bar Control.” With this feature, the user is capable of creating, viewing, and working with multiple documents to enter keyboard text representing mathematical formulas in each document and then click a tool bar control labeled CALCULATE to analyze the document (e.g., and the formulas it may contain) and potentially provide an answer.
With certain of these embodiments, the user first creates and/or selects such a document containing text.
In the embodiment shown in
As shown in the example of
Optionally, prior to the user selecting the tool bar control labeled CALCULATE, the user can use a special keyboard symbol (e.g., ') and apply it at the beginning of one or more formulas to instruct the application to display only the formulas that contain the special keyboard symbol.
Certain embodiments of the software application of this invention have the capability of computing formulas containing trig functions in degrees, radians, gradients, and/or the product of hyperbolic functions all in one formula. An example of some of these embodiments of this invention requires the application of special text to use when entering trig functions in degrees, radians, gradients, and/or the product of hyperbolic functions. One such embodiment of a translator/code to translate special text for trig functions that allows a user to enter trig functions all in one formula in degree, radians, and gradients is:
Output=Sin D[5]+Tan R[9]+Cos G[6]
Output=Output=0.6
The “D” prior to the square bracket “[” instructs the software to compute in degrees. For example, a=Sin D[5] a=8.71557427476582E−02.
The “R” prior to the square bracket “[” instructs the software to compute in radians. For example, b=Tan R[9] b=−0.45231565944181.
The “G” prior to the square bracket “[” instructs the software to compute in gradients. For example, c=Cos G[6] c=0.99556196460308.
For hyperbolic trig functions, in certain of these embodiments, the user enters text in a format such as standard Visual Basic 6 computer code:
W=3
x=((Exp((W))−Exp(−(W)))/2)−Hyperbolic Sine
x=10.0178749274099
Certain embodiments of the software application of this invention provide that when clicking the tool bar control labeled CALCULATE, the software analyzes the document or selected text from top to bottom.
Certain embodiments of the software application of this invention provide that should the user select a portion of text in a given document (e.g., by marking it with a symbol or highlighting and thus selecting it with a mouse), only that portion of text within the document that is selected is analyzed.
RUN Module and tool bar control. The RUN module is capable of being used to execute computer programming language instructions comprising mathematical and/or trigonometric formulas. The RUN module reads the lines of text from top to bottom. The RUN module also outputs the results of the executed instructions, and the RUN module is capable of converting the outputted results in different forms comprising numerals, radians, degrees, and/or gradients. Certain embodiments of this invention provide a “RUN Tool Bar Control.” With this feature, a computer programming language such as Visual Basic 6 is used to develop text/source code to be then translated and executed.
In certain of these embodiments, when clicking the tool bar control labeled ‘RUN’, the software analyzes the document or selected text from top to bottom.
In some of these embodiments, the user can select a portion of text (e.g., by marking it with a “'” symbol or selecting it by highlighting it with a mouse), and only that portion of text within the document selected is analyzed.
In certain of these embodiments with the RUN Tool Bar Control, all of the trig functions/text features mentioned above for the CALCULATE Tool Bar Control can be used when attempting to execute the source code after the user clicks the RUN control.
SOLVER—Single Document Application
In certain embodiments of this invention, a solver application is provided that is used as an option for the user to solve for an unknown numeric value in formulas understood to be incapable of being transposed but which can be used to compute for an unknown numeric value (e.g., should the user decide to not bother with transposing a formula to compute for an unknown numeric value).
In some of these embodiments, the user inputs formulas using a keyboard or other input device. When the user presses a certain keyboard key, such as the keyboard ENTER key, the software is instructed to analyze a document or selected text in order to perform a calculation. If variables are inside the formula, an input box will appear requesting an input for each variable.
In certain embodiments, formulas are entered using a keyboard or similar device. In some embodiments, when the user clicks a “Solve” control, the software is instructed to analyze the document or selected text and it will attempt to compute for an unknown variable if such is possible. An unknown can be directly entered in the formula using a “?” mark, for a simple example of addition to show how the invention works conceptually:
8+?
The “?” mark is understood to be the unknown variable. Alternatively, once “Solve” control is clicked and there is an unknown variable, an input box appears requesting an input and the user can enter either a numeric value or the “?” mark.
In certain embodiments, the user can save a formula to a list box on the Solver form and edit the list box to remove one or more formulas.
In certain embodiments, the user can save formulas contained in the list box or outputted text inside a text box (e.g., a “History” text box) to a text file.
In certain embodiments, special text associated with trig functions (see description above) used in the MDI Main Form can also be used in the Solver application.
In certain embodiments, the user can use a function (e.g., “Auto” feature) to solve for an unknown or, alternatively, the user has the choice to select one Process Option at a time by un-checking the Auto check box control until the unknown is computed, provided it is possible.
In certain embodiments, the history of the use of the Solver function can be saved and referenced later.
In the most preferred embodiments, the solver application comprises a formula input module and a solver module. E.g.,
Encryption Function
Certain embodiments of this invention can be used to encrypt and/or decrypt the text file. In preferred embodiments, the text can be encrypted and/or decrypted by either the CALCULATE or RUN control on the tool bar in some of these embodiments. For example, encrypted text can be analyzed by either the CALCULATE or RUN control that are each capable of running/analyzing Visual Basic 6 computer code.
An example of such an application is where a sender and a recipient each have a USB drive that contains applicable copies of an embodiment of the software application of this invention. The sender would first choose a particular document with text and then click an ENCRYPT toolbar button provided in the software application. A dropdown menu in this embodiment asks the user to select whether the subject matter is text or text to sell.
If the person to whom the encrypted text is sent (the recipient) also has an applicable embodiment of the encryption application of this invention on, for example, a USB drive, the recipient can then access the text file, and then click the CALCULATE Toolbar Button on the recipient's application and if anyone is allowed to use the text, the CALCULATE capability will decrypt the text. As indicated, in some embodiments, the recipient must enter identification information that the sender has set (e.g., a password, a client serial number, contact information). In some of these embodiments, the text is never visible to the recipient regardless of whether such use required identification information, although it may still be usable (e.g., the text may be usable for the CALCULATE function but never viewable by a recipient). Optionally, back door access is provided to the encryption application for the purposes of, for example, security and/or law enforcement.
Licensing
Certain embodiments of this invention have licensing control. As an example of these embodiments, the user chooses Licensing on the toolbar, selects the particular device with the embodiment of this invention resident, enters a serial number for the embodiment of this invention, and then receives an encrypted key from a licensing agent. When the key is entered a file is generated and inserted into the folder containing the embodiment of this invention, the Licensing control on the toolbar disappears and the user can use the embodiment.
The subject matter of this disclosure is now described with reference to the following examples. These examples are provided for the purpose of illustration only, and the subject matter is not limited to these examples, but rather encompasses all variations which are evident as a result of the teaching provided herein.
Additional Preferred Embodiments
In certain embodiments of this invention, the CALCULATE module (and the RUN module in executing computer coding) each have the capability of executing instructions in the mathematical and/or trigonometric formulas and/or in using variables containing numerals, degrees, radians, and/or gradients. In these and other embodiments of this invention, the CALCULATE module and the RUN module have the capability of executing instructions of one or more mathematical and/or trigonometric formulas and/or computer coding, respectively, by clicking only one control key (e.g., “CALCULATE” or “RUN”). In certain embodiments of this invention, the software application has the capability of converting the outputted results of the CALCULATE module, the RUN module, and the solver module into degrees, minutes, and seconds. In these and other embodiments of this invention, the software application has the capability of saving, viewing, loading, and deleting mathematical and/or trigonometric formulas and/or variables in whole or in part in strings that are capable of being used to fill-in text boxes within an input text box. Thus, the saving, viewing, loading, and deleting of formulas and data with these embodiments is efficient and simple.
In an embodiment of this invention that was made and operated, a software application is provided on a USB drive (or alternatively a flash drive).
As an example, the user first develops each formula on a separate line in the text file. Text files can be saved and accessed. Next, the user clicks the CALCULATE control on the toolbar, in which case if no individual formulas are selected by the user (e.g., by highlighting one or more lines of text with a mouse or placing a character in the front of one or more text lines), the entire document (unless, for example, an “END OF CODE” or similar instruction is placed in the file, which will stop the analysis from proceeding further) will be analyzed. The user then enters a numeric input or formula for each variable when requested. Examples of input could be the number 11, or a formula such as 2+Sqr(81).
The amount of space between text in the file shown in
If a certain keyboard symbol (e.g., ') is placed before a line of text, when the CALCULATE function is chosen, only the output of those lines of text with the symbol will be output.
Selecting a numerical output (e.g., 14.4 in
An example of a portion of a text file with computer coding and the RUN feature, as well as a portion of an output shown in the bottom pane, is shown in
This example also includes an embodiment of a SOLVER feature as shown by
Another example of the SOLVER feature is shown by
In this embodiment, the drop down “Options” menu allows the user to Undo Redo, make Recordings, access and view Variables (e.g., Save them and later Load them into other input boxes), change Font and add color, Spell Check, Math Functions, Space, View Image (if in file), Sort the files, WebLink, and Count lines. The “Case” menu changes the case of characters. The “Math” menu has the choices of Degrees, Radians, Gradients, Hyperbolic, Root (square, power), Log, Pi, ÷, {circumflex over ( )}, { }, ( ) and Group.
In this embodiment, when CALCULATE is chosen, the text is read top to bottom and a line is ignored if it does not contain an equals sign. “End Of Code” text also stops the software from reading the text any further.
In this embodiment, two bitmaps (or jpeg files) can be added to the text file for reference. These images can be used to reference the problem being addressed.
In an embodiment of this invention that was made and operated, a software application that uses Rich Text Format is provided on a computer hard drive. This example was working on a Windows 10 operating system. This example in
In this example, a further description is provided of the capability for a user to select text in a document (e.g., by highlighting the text with a computer mouse) and then select the CALCULATE (or RUN if the text is in computer syntax) option, which will be directed to only the selection. Thus, if the user only wants to CALCULATE the output from two of four formulas in the text (as an example), the user highlights the two formulas of interest and clicks the CALCULATE option. Similarly, if the user only wants to RUN the output from three of six lines of code in the text (as an example), the user highlights the three lines of code in the text and clicks the RUN option.
Particular Applications to Computer Devices
The system applied to this invention may include a plurality of different computing device types. In general, a computing device type may be a computer system or computer server. The computing device may be described in the general context of computer system executable instructions, such as program modules, being executed by a computer system (described for example, below). In some embodiments, the computing device may be a cloud computing node (for example, in the role of a computer server) connected to a cloud computing network (not shown). The computing device may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices (e.g., USB drives).
The computing device may typically include a variety of computer system readable media. Such media could be chosen from any available media that is accessible by the computing device, including non-transitory, volatile, and non-volatile media, removable and non-removable media. The system memory could include random access memory (RAM) and/or a cache memory. A storage system can be provided for reading from and writing to a non-removable, non-volatile magnetic media device. The system memory may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention. The program product/utility, having a set (at least one) of program modules, may be stored in the system memory. The program modules generally carry out the functions and/or methodologies of embodiments of the invention as described herein.
As will be appreciated by one skilled in the art, aspects of the disclosed invention may be embodied as a system, method or process, or computer program product. Accordingly, aspects of the disclosed invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects “system.” Furthermore, aspects of the disclosed invention may take the form of a computer program product embodied in one or more computer readable media having computer readable program code embodied thereon.
Aspects of the disclosed invention are described above with reference to screen shots, toolbars on screen shots, block diagrams of methods, modules, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each screen shot and each block of the block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions.
These computer program instructions may be provided to the processor of a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks or modules.
Although the present invention has been described with reference to teaching, examples, and preferred embodiments, one skilled in the art can easily ascertain its essential characteristics, and without departing from the spirit and scope thereof can make various changes and modifications of the invention to adapt it to various usages and conditions. Those skilled in the art will recognize or be able to ascertain using no more than routine experimentation, many equivalents to the specific embodiments of the invention described herein. Such equivalents are encompassed by the scope of the present invention.