WO2017184812A1 - Digit card calculator - Google Patents

Digit card calculator Download PDF

Info

Publication number
WO2017184812A1
WO2017184812A1 PCT/US2017/028520 US2017028520W WO2017184812A1 WO 2017184812 A1 WO2017184812 A1 WO 2017184812A1 US 2017028520 W US2017028520 W US 2017028520W WO 2017184812 A1 WO2017184812 A1 WO 2017184812A1
Authority
WO
WIPO (PCT)
Prior art keywords
digit
card
bead
area
cards
Prior art date
Application number
PCT/US2017/028520
Other languages
French (fr)
Inventor
Chris Steven TERNOEY
Original Assignee
Ternoey Chris Steven
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US29/563,484 external-priority patent/USD805526S1/en
Priority claimed from US29/563,489 external-priority patent/USD805527S1/en
Priority claimed from US29/592,030 external-priority patent/USD837806S1/en
Application filed by Ternoey Chris Steven filed Critical Ternoey Chris Steven
Priority to US16/093,673 priority Critical patent/US10559224B2/en
Priority to US15/713,852 priority patent/US10191886B2/en
Publication of WO2017184812A1 publication Critical patent/WO2017184812A1/en

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/02Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/02Electrically-operated teaching apparatus or devices working with questions and answers of the type wherein the student is expected to construct an answer to the question which is presented or wherein the machine gives an answer to the question presented by a student

Definitions

  • GUI graphical user interface
  • the GUI includes a user input area to receive numeric values and operators in a like manner to how sums and differences are entered into a hand calculator.
  • the GUI also includes a display area to display the received numeric input.
  • the display area includes a presentation of the received numeric input arranged in two or more rows, with one row for each numeric value entered. Numeric values are aligned according to place value, so that digits of like value within numeric values appear in distinct columns.
  • the user input area provides an easy way for children to enter the numbers they intend to add, subtract or perform other arithmetic operation on.
  • the display area provides a natural and familiar way for children to see what they have entered.
  • the alignment of the numbers reminds children about the distinct meaning of each digit and further reminds them of the recommended arrangement of these digits when performing hand calculations on paper.
  • the display presents a new graphic object referred to as the "workspace" or "workspace area".
  • the workspace presents the values of the calculation in a like manner to the paper graphic, except that it provides additional graphic objects that facilitate user interaction with the digits of the values.
  • vertically constrained touch drop gestures facilitate the movement of digits individually or in groups to holding areas at the bottom of each column. When two or more digits are placed in a common holding area, the digit values are combined into a derived numeric value in accordance with the entered arithmetic operators.
  • these gestures allow children to combine digits from distinct rows into a sum at the bottom of the display area in a manner that is similar to how a paper-based addition would proceed.
  • these gestures would work in a similar manner, except that the difference between the values of the digits would appear.
  • the gesture might be disabled or otherwise dysfunctional in cases of subtraction where the resulting derived numeric value would be negative. This corresponds to the hand-calculation rule that students must sometimes "borrow ten from the next column" to proceed further with a subtraction calculation.
  • the horizontal constraints on digit movement provide a clear understanding to children that digits can only be directly added or subtracted to other digits in the same column. Note that the resulting value that appears in the holding area might in some cases exceed 9 and this is why we refer to it as a "derived numeric value" rather than a digit.
  • vertically constrained touch drop gestures facilitate the separation of the tens digits of a derived value and the automatic transfer of the tens digit to a holding area at the top of the next vertical column to the left.
  • This gesture corresponds naturally to a step in paper-based calculation that is traditionally referred to as “regrouping” or "carrying the one”.
  • vertically constrained touch drop gestures facilitate the transformation of digits or derived values into two parts, the first part being a decremented derived value and the second part being a digit of value 1, which moves automatically to the next vertical column to the right where it is transformed into a numeric value of 10 and combined additively with digits or derived values already present in this region of the workspace.
  • This gesture corresponds naturally to a step in paper-based calculation that is traditionally referred to as "regrouping" or "borrowing from the next column.”
  • Additional improvements are also disclosed.
  • the additional improvements relate to support for "flick" gestures, utilizing the paper graphic to illustrate a paper based
  • an environment can be provided that facilitates calculation of sums and differences in a manner that is distinctly easier than hand-calculation, while still being recognizably similar to hand calculation, thus facilitating the education of children in hand calculation skills while enabling them to face higher academic challenges prior to their mastering those skills.
  • Figure 1 is a top rendering of a calculator according to the present invention.
  • Figure 2 is a GUI for a user input screen.
  • Figure 3 is a GUI for the user input screen of figure 2 after an arithmetic problem has been entered.
  • Figures 4a to 4c show the transition of the GUI to a GUI with a workspace area after the user has input an arithmetic problem to be solved.
  • Figures 5a to 5i are successive GUIs for a touch drop addition of digit cards.
  • Figures 6a to 6g are successive GUIs for a carry operation.
  • Figures 7a to 7i are successive GUIs for a touch drop addition of three digit cards.
  • Figures 8a to 8j are successive GUIs for a touch drop subtraction of two digit cards.
  • Figures 9a to 9g are successive GUIs for a borrowing operation.
  • Figure 10 is a GUI showing updating of a display area.
  • Figure 11 is a GUI showing updating of a display area after borrowing in a subtraction problem.
  • Figure 12 is a GUI showing decimal numbers in an arithmetic problem.
  • Figure 13 is a GUI of a dead end in a subtraction problem.
  • Figures 14a to 14c are successive GUIs showing the entering of an arithmetic problem.
  • Figures 15a to 15d are successive GUIs showing an addition problem with bead tokens.
  • Figures 16a to 16f are successive GUIs showing carrying with bead tokens.
  • Figures 17a to 17d are successive GUIs showing subtraction with bead tokens and removal tokens.
  • Figures 18a to 18h are successive GUIs showing borrowing with bead tokens in a subtraction problem.
  • Figures 19a to 19d are successive GUIs showing a dead end in subtraction with bead tokens.
  • Figure 20 is a GUI showing bead tokens for different place value columns.
  • Figures 21 is a GUI showing bead tokens for large place value columns.
  • Figures 22a to 22d are successive GUIs showing an embodiment of carrying with bead tokens.
  • Figures 23a to 23c are successive GUIs showing an embodiment of carrying with bead tokens.
  • Figures 24a to 24f are successive GUIs showing an embodiment of carrying with bead tokens.
  • Figures 25a to 25h are successive GUIs showing an embodiment of carrying with bead tokens.
  • Figures 26a to 26d are representations of different bead tokens for different place value columns. Best Mode for Carrying out the Invention:
  • a "computer”, “computer based system”, “computer implemented” or the like comprises an input device for receiving data, an output device for outputting data in tangible form (e.g. printing or displaying on a computer screen), a permanent digital memory for storing data, computer code and other digital instructions, and a digital processor for executing digital instructions wherein said digital instructions resident in said permanent memory will physically cause said digital processor to read in data via said input device, process said data within said microprocessor and output said processed data via said output device.
  • the digital processor may be a microprocessor.
  • the digital processor and permanent memory may have a distributed form, such as a cloud-based platform.
  • the term "shaped” means that an item has the overall appearance of a given shape even if there are minor variations from the pure form of said given shape.
  • the term "generally” when referring to a shape means that an ordinary observer will perceive that an object has said shape even if there are minor variations from said shape.
  • relative orientation terms such as “up”, “down”, “top”, “bottom”, “left”, “right”, “vertical”, “horizontal”, “distal” and “proximal” are defined with respect to an initial presentation of an object and will continue to refer to the same portion of an object even if the object is subsequently presented with an alternative orientation, unless otherwise noted.
  • Techniques and systems are disclosed for providing a computer implemented GUI that enables a user to calculate sums and differences of integer and decimal numbers.
  • FIG. 1 is an illustration of a general purpose computer 100 with a touch-sensitive screen 102.
  • the touch sensitive screen may serve as an output device for displaying digital images.
  • the touch screen may also serve as an input device adapted to sense an action by a user.
  • "receive from a user" means to receive from an input device an action made by a user.
  • a user's hand 104 is shown in figure 1 after it has touched a first point 106 on the touch screen and moved 108 to a second point 110 on said touch screen.
  • the touch may be interpreted by the computer as a selection or choice of an object 112 displayed on said touch screen.
  • the sliding of the finger may be interpreted as moving said object to said second point.
  • the computer would sense the motion of said finger and display the selected object moving with said motion.
  • the motion of the object may be constrained to be either vertical 114, horizontal 116 or some other constrained motion, such as motion along a path. If the motion was constrained to be vertical, then the selected object would only move vertically to correspond to the vertical component of the user's finger motion.
  • vertical constrained means only vertical motion is allowed.
  • Horizontally constrained means only horizontal motion of a selected object is allowed.
  • An object that can be activated by touching is referred to as a "touch target”.
  • the user may lift said finger from the touch screen at the end of the motion. This may be interpreted as the end of the user's input.
  • the app may then take other actions, such as completing 118 the movement of the object to an intended destination if the user ends the motion before the object reaches said intended destination.
  • the entire action is referred to as a "touch drop”.
  • auto complete The portion executed after the user ceases to touch the screen is referred to as "auto complete”.
  • a software application (sometime called simply an "app") can be installed on a permanent digital memory of such a device.
  • the software application may physically be in the form of digital instructions.
  • the app may be an iOS app for use on iPhones ® and iPads ® .
  • the app may be created by using Apple ® 's Xcode OSX application to compile code files as well as graphics files, audio files, and other code assets into a package for general distribution via Apple ® 's App Store. More specifically, the SpriteKit API provided by Apple for game development was utilized in conjunction with objective-C code files edited in Xcode, image files edited in Adobe ® 's Photoshop application and sound files from third party sound libraries to create apps that functioned as an embodiments of the calculators described herein.
  • the GUI includes a user input area to receive numeric values and operators in a like manner to how sums and differences are entered into a hand calculator.
  • the GUI also includes a display area to display the received numeric input.
  • the display area includes a presentation of the received numeric input arranged in two or more rows, with one row for each numeric value entered. Numeric values are aligned according to place value, so that digits of like place value within numeric values appear in distinct columns.
  • a "place value” is the multiplier for a digit in a given column of a number that provides the actual value of said digit. For example, the number "25" has two columns.
  • the right column is a ones column with the digit of 5 and place value of 1.
  • the left column is a tens column with the digit of 2 and a place value of 10.
  • the "2" in the tens column has an actual value of "20".
  • Figure 2 illustrates the initial presentation of a GUI 200 in an embodiment of the present invention.
  • the GUIs illustrated herein are surrounded by a combination of broken and solid lines.
  • Item numbers are presented inside and outside of GUIs with curved call out lines identifying elements of a GUI .
  • Broken line arrows and other broken line objects may be presented within a GUI indicating the movement or presence of different elements within a GUI .
  • Broken lines presented within a GU I are not displayed by the GUI.
  • An input area 202 in the lower portion of the GU I is presenting a virtual keyboard for entering an arithmetic problem.
  • the keyboard comprises keys illustrating a set of single digit numbers 204, one or more arithmetic operators 206 and an execution icon 208.
  • An equal bar is an execution icon.
  • Other symbols 210 useful for entering other elements, such as a decimal point, may be presented.
  • the keys of the keyboard are surrounded by rectangular perimeters with rounded corners. The design element of a rectangle with rounded corners may be used to indicate areas of a touch screen that are adapted to receive user selection by touching.
  • a display area 212 which may suggest paper, is present in the upper region of the GUI.
  • the display area will show the arithmetic problem entered by the user as the user selects the keys of the keyboard.
  • a "Clear" button 214 appears in the top left corner in case the user would like to reset the app to its initial state.
  • Other utility buttons, such as backspace, information, exit etc. may also be presented.
  • Round icons on a GUI may also indicate areas that are adapted to receive user selection.
  • the user input area provides an easy way for children to enter the numbers they intend to perform an arithmetic operation on.
  • the display area provides a natural and familiar way for children to see what they have entered.
  • the alignment of the numbers in the display area reminds children about the distinct meaning of each digit of a number in light of a digit's place value and further reminds them of the recommended arrangement of these digits when performing hand calculations on paper.
  • Figure 3 shows an example presentation of GUI 200 after the digital processor has received from the input device (e.g. touch screen) actions by the user (e.g. touching) indicating a choice of the single digit numerals "2", the single digit numeral "3", the arithmetic operator "+”, and the single digit numeral "4".
  • the arithmetic problem is presented in the display area 212 in accordance with said choices.
  • a backspace button may be provided to undo entries. The user, however, has not chosen the execution icon and so the problem is not complete and the calculator takes no further action.
  • Figure 4b shows a subsequent moment in the commencing animation whereby a new graphic 412 appears on the screen.
  • This graphic presents the numeric data 414 of the arithmetic problem in an alternative style that is more suggestive of the fact that the digits can be individually moved.
  • the region of the display that is covered by this new graphic is hereafter referred to as the "workspace” or "workspace area”.
  • Broken line arrows 416 indicate how the workspace will grow as the commencing animation progresses.
  • Figure 4c shows how the GUI 200 appears when the animation has concluded.
  • the workspace area 412 has become larger, which draws the user's attention to it and also makes it easy for individual digits 414 to be presented as touch targets for the user to manipulate.
  • Each digit is surrounded by a rectangular graphic with rounded corners.
  • This shape is an example of a generally rectangular shape.
  • the digit cards may each have a width 421, a height 423, a top 425, a bottom 427 and a perimeter or border 429.
  • the widths of all digit cards in a given column are the same.
  • the widths of digit cards in different columns with different place values, however, may be different.
  • digit cards may have aspect ratios that are different from that of playing cards.
  • the digit cards are arranged in original positions in columns and rows corresponding to the arithmetic problem.
  • the digits cards of the first number in the arithmetic problem are displayed in an upper row.
  • the digits cards of the second number in an arithmetic problem are displayed in a lower row immediately below the upper row.
  • the arithmetic problem may comprise more than two numbers. Additional numbers are displayed in additional rows.
  • original positions anticipates that the digit cards may be moved as the solution to the arithmetic problem is calculated. Some digit cards may be moved initially. Other digit cards may remain in their original positions to be moved later. As described below, digit cards may be shifted from their original positions during a carrying operation and returned to their original positions at the conclusion of the carrying operation.
  • the digit cards may be rendered to appear to be in the same plane as if they were playing cards resting on a flat surface.
  • other objects may be presented on the workspace that appear to extend in the normal direction from the plane of the digit cards.
  • These objects may include beads, which are rendered as spheres, and bead tokens, which are stacks of beads rendered in an oblique projection. Any dimensional projection may be used.
  • the operator 426 of the arithmetic problem may be displayed in the workspace area. As described below, the operator will indicate what operation is performed on the digits cards of a given place value column as said digit cards are moved to a holding area.
  • An equals bar area 428 may be presented below the digit cards.
  • the equals bar area may have a height 432.
  • the height may be large enough so that numerals can be displayed in said equals bar area and be readily viewable by a user.
  • a height corresponding to a font size of 6 points or greater is suitable.
  • a boundary or perimeter may be presented as a line of any style (e.g. solid, dashed, double, thick, thin), distinct change in shading (e.g. light for digit card changing to dark shade at perimeter), a diffuse change in shading (e.g. a fuzzy border) or any method of perceiving a perimeter.
  • Any shape digit card can be used. A generally rectangular shape allows for clear arrangement of the digit cards in rows and columns.
  • the provision of rounded corners may be a visual clue for a touch target object as opposed to an object not activated by touch. Any design element may be used, such as color or texture.
  • the display area 212 and other inactive areas may have relatively sharp corners and thus a user might consciously or unconsciously perceive the display area as an area that would not be activated by touch. Experimentation by the user may teach the user this difference.
  • the value inside a digit card may exceed 9 and is, therefore, no longer a proper digit.
  • the graphic object surrounding a pseudodigit is still referred to simply as a "digit card”. Note that pseudodigits are especially prominent in the case of "overflow” and "insufficiency", which are discussed later in this application.
  • the workspace in Figure 4c presents one digit card 420 differently than the rest.
  • "3" digit card has a distinct appearance in order to suggest that it is the unique digit card that presently can be moved when touched.
  • Alternative embodiments of the invention might present additional digit cards or even all digit cards in this same manner, and these embodiments may indeed permit direct manipulation of additional digit cards at the outset.
  • this embodiment especially distinguishes the right-most digit in the top row 422 when an addition problem is initially presented, thus indicating to a user that work must begin here. This choice of highlighting only the digit card that can me moved next is made in order to maximize the correspondence between the calculator function and the
  • Dragable refers to a graphic of the display that can be directly moved to a new location by touch.
  • Touch drag refers to a user interaction whereby the user touches a dragable graphic and moves it to a new location by moving his/her finger to the new location and then terminating the touch.
  • Touch drop may be used as a synonym for "touch drag”. It may also include an auto completion of an action.
  • “Flick” refers to a touch drop that is auto completed. Thus a user might touch drag a digit card half way to the holding area and then lift said user's finger from a touch screen.
  • the calculator may be adapted to auto complete the touch drop by rendering the digit card completing its intended motion to the holding area.
  • the app may be programmed to change only the vertical position of the dragable in response to the user's touch irrespective of the touch's horizontal movement.
  • a vertical constrained because only vertical movement is allowed. This can be helpful when digit cards are small and a user's touch may obscure the selected card. The user can view the card and its vertical motion by moving his/her finger to the side after touching the card.
  • the app may be programmed to change only the horizontal position of the dragable in response to the user's touch.
  • Other more complicated constraints, such as constraints to a predetermined path, may also be provided.
  • vertically constrained touch drop gestures facilitate the movement of digits individually or in groups to holding areas 424 at the bottom of each column below the equals bar area.
  • "Holding areas” are regions of the display at the bottom of the workspace that are depicted in a manner that suggests they are the furthest allowable position of a dragable moving in their direction. Holding areas may be indicated by a grey or faint perimeter thus distinguishing themselves from movable touch cards which may have a dark or distinct perimeter. Holding areas are helpful because they suggest to the user where dragables should be moved to.
  • the digit values are combined into a derived numeric value in accordance with the entered arithmetic operators.
  • a holding area may have a top 431, bottom 433, a width 437 and a height 435.
  • the height of a holding area may be at least as large as the height of the digit cards.
  • the width of the holding area may be about the same as the width of the digit cards in the same place value column.
  • these gestures allow children to combine digits from distinct rows into a sum at the bottom of the display area in a manner that is similar to how a paper-based addition calculation would proceed.
  • these gestures would work in a similar manner, except that the difference between the values of the digits would appear.
  • the gesture might be disabled or otherwise dysfunctional in cases of subtraction where the resulting derived numeric value would be negative. This corresponds to the hand-calculation rule that students must sometimes "borrow ten from the next column" to proceed further with a subtraction calculation.
  • the horizontal constraints on digit movement provide a clear understanding to children that digits can only be directly added or subtracted to other digits in the same column.
  • the resulting value that appears in the holding area might in some cases exceed 9 and this is why we refer to it as a "derived numeric value" rather than a digit.
  • the function of the GUI after user input has concluded depends on what input data has been received.
  • we describe the functionality that is provided after the user has input integer data separated by an addition operator. As an example of this case, we will assume the user has entered “2", “3", “+”, “4", "5", " ".
  • Figures 5a to 5i illustrate a vertically constrained touch drop interaction that constitutes the first step for completing the specified calculation. More specifically, this interaction shows a user moving two digits (items 502 and 504) collectively to a "holding area" 506 at the bottom of the workspace 412, whereby they are transformed into their sum.
  • "holding areas” are regions of the display at the bottom of the workspace that are depicted in a manner that suggests they are the furthest allowable position of a dragable moving in their direction. In the figures, holding areas may be depicted as gray border rounded corner rectangles with gray "?" characters inside.
  • the user is able to move both digit cards with a single interaction. This is possible because appropriate logic is encoded in the app to move both digit cards together as soon as the top digit card (e.g. the "3") is positioned in such a way that it touches the bottom digit card (e.g. the "5").
  • the interaction begins with the calculator receiving from the touch screen (e.g. an input device) a selection 508 by a user of an upper digit card 502 of the first number (e.g. "23") in the arithmetic problem, wherein said upper digit card is in a selected column 510 in said workspace area.
  • the selection of the upper digit card may be by the user touching the digit card on the touch screen. This also selects the selected column.
  • the selected column is indicated by two vertical broken lines which are not shown on the screen.
  • the calculator may make an initiation tone indicating the commencement of the interaction.
  • the selected card may also change shade in response to being selected.
  • the interaction continues with the calculator receiving from the touch screen an indication by said user of a gesture 512 towards the holding area 506.
  • the indication in this instance is the user sliding said user's finger touch point 508 downward. Said downward motion is indicated by a broken line arrow.
  • the calculator moves said upper digit card 502 towards said holding area 506.
  • the calculator then moves the lower digit card 504 that is below said upper digit card when the bottom 514 of said upper digit card touches the top 516 of said lower digit card such that said upper digit card appears to be pushing said lower digit card down.
  • Said touch may not be exact, but may be approximate.
  • Neither digit card is allowed to move past the holding area at the bottom of the workspace. Once the bottom digit card has reached the holding area, it ceases to move, while the top digit card continues to move until it has also reached the holding area. As the digit cards reach the holding area, these distinct graphic objects begin to occupy the same region of the display. This makes it difficult to fully depict all three graphic objects (e.g. the holding area, the bottom digit card and the top digit card) simultaneously. An intuitive choice is to show the bottom digit card covering the holding area as the bottom digit card arrives at the holding area and to further show the top digit card covering the bottom digit card as the top digit card arrives in this same space. Figures 5c to 5e illustrate how this part of the interaction would appear.
  • the downward motion of the upper digit card 502 and lower digit card 504 will continue until the bottom 518 of the lower digit card reaches the bottom 522 of the holding area 506. The downward motion of the lower digit card will then stop.
  • the upper digit card 502 has been displayed with continued downward motion such that said upper digit card covers an overlapping portion of said lower digit card 504 after said lower digit card stops said downward motion.
  • the downward motion of the upper digit card 502 is halted when the bottom 514 of said upper digit card reaches the bottom 522 of the holding area.
  • the calculator has also calculated a derived value (item 524) of the operator 426 operating on said digits in said upper digit card and said lower digit card.
  • An equation 526 illustrating this calculation is displayed in the equals bar area 428.
  • the actions by the calculator may pause.
  • the calculator may be programmed to reverse the process in response to the user moving said user's finger up on the touch screen. Thus the user can experiment before committing to an action.
  • the calculator will interpret said lifting as the user completing the motion.
  • An "end of action" tone may sound.
  • the user can no longer reverse the motion.
  • the calculator may then proceed to auto complete the actions shown in figures 5g to 5i.
  • the calculator may be programmed to auto complete a touch drop if the user merely touches a card and gestures partway down a selected column. This is considered a flick gesture.
  • the upper digit card would continue to push the lower digit card until both were in the holding area.
  • the interaction has replaced the two original digits with a new derived value that is equal to their sum.
  • the replacement is not instantaneous, but rather the final result of a series of intermediate transformations intended to clarify the logic behind the transformation.
  • the calculator displays the derived value (item 524) in said upper digit card at the end of the touch drop.
  • the upper digit card then becomes a "derived value card” 528.
  • the derived value will not exceed 9. In such cases, the user may directly proceed with manipulating digits in the next column to the left in the workspace in a like manner to how the digits in the first column were manipulated. In other cases, the derived value will exceed 9.
  • the holding area now contains a derived value card which is presenting a pseudodigit rather than a proper digit.
  • the derived value card 602 shows the pseudodigit "18". We refer to this circumstance as "overflow.”
  • a horizontally constrained touch drop gesture facilitates the separation of the tens digits of a derived value and the automatic transfer of the tens digit to an upper holding area at the top of the next vertical column to the left.
  • the circumstance of overflow causes a new graphic to appear on the workspace area.
  • This new graphic should appear just below the holding area for the digit card that contains the pseudodigit.
  • This graphic takes the form of an arrow surrounded by a rectangle that has similar features to a digit card in the workspace.
  • This new graphic as a "carry arrow card” 604 .
  • Figure 6a illustrates how the workspace area presents the carry arrow card when an overflow circumstance has arisen.
  • the carry arrow card helps facilitate an interaction that corresponds to a step in the standard algorithm for hand calculation of sums, which is referred to sometimes as "regrouping" or "carrying the one.”
  • Figure 6a - 6g illustrate an interaction that constitutes an appropriate handling of an overflow circumstance.
  • the interaction is initiated by touching the carry arrow card rather than by touching a digit card.
  • this interaction will be horizontally constrained 606. This means that the user will be allowed to move the carry arrow card horizontally but not vertically.
  • the carry arrow card can only be moved to the left.
  • the display will present a new graphic object on the workspace.
  • This new graphic object will resemble a digit card in appearance. In this embodiment it may be presented so that it appears to be sliding out from underneath the existing digit card in the holding area just above the carry arrow card.
  • This new graphic object is hereafter referred to as the "carry card”.
  • the calculator comprises a permanent digital memory which comprises digital instructions to cause the digital processor of the calculator to execute the steps of: a) when said operator is an addition operator (item 426 figure 6a), determine if the derived value (item 601) is a two digit number wherein said two digit number comprises a tens digit (item 603) and a ones digit (item 605); and b) when said derived value is a two digit number, execute the steps of: activate a carry area 610 in said workspace area 412; receive from said user a selection (item 607 figure 6b) of said carry area 610; receive from said user a gesture 609 to the left; display a carry card (item 608 figure 6c) to the left of said derived value card 602 wherein said carry card has a left edge 611, a right edge 613, a top edge 615, a bottom edge 617, a width 619, and a height 621 and wherein said width of said carry card is variable; and in response
  • the GUI will handle the case of subtraction in a like manner to the case of addition. So long as every digit of the subtrahend is equal to or smaller than the corresponding digit of the minuend, the interaction protocol for addition can be used also for supporting subtraction.
  • Figures 8a to 8j illustrate an interaction for this case of subtrahend digits not exceeding minuend digits. These figures correspond with Figures 5a- 5i.
  • insufficiency handles insufficiency by presenting a new graphic object that we shall hereafter refer to as the "borrow arrow card”.
  • This graphic resembles the carry arrow card except for the fact that it is pointing to the right instead of to the left.
  • the borrow arrow card is presented above the next non-zero digit in the minuend, where next is understood to mean "next in the leftward direction”.
  • the borrow arrow card helps facilitate an interaction that corresponds to a step that is known as "regrouping” or “borrowing” in the standard algorithm for paper based subtraction.
  • Figures 9a-9g illustrate an interaction that constitutes an appropriate handling of an insufficiency circumstance.
  • the interaction is initiated by touching the borrow arrow card (item 902, figure 9a).
  • the interaction could be initiated by touching a borrow area 910.
  • the allowed interaction is a horizontally constrained touch drop interaction with movement permitted only in the rightward direction. This gesture will facilitate the transformation of digits or pseudodigits into two parts, the first part being a decremented minuend value and the second part being a digit of value 1, which moves automatically to the next vertical column to the right where it is transformed into a numeric value of 10 and combined additively with digits or derived values already present in this region of the workspace.
  • a first improvement is possible by providing programmatic support for "flick” gestures.
  • “Flick” refers to an interaction whereby the user begins moving a dragable in a given direction and then releases the dragable and the dragable continues moving after release until it reaches the final position permissible in this direction.
  • the flick allows users to more or less throw a dragable in a given direction and trust that it will automatically move to the farthest allowed position in that direction.
  • a second improvement is possible by utilizing the display area 212 to the left of the workspace area 412 to illustrate subsequent steps of a hand-calculation in correspondence to the progress the user makes in the workspace area.
  • Item 1002 in Figure 10 illustrates this possibility for a sum. It shows the 1 being carried to the tens column.
  • Item 1102 in Figures 11 illustrates this possibility for a difference. It shows 10 being borrowed from the tens column to the ones column.
  • a third improvement is possible by providing support for the cases where a user has entered decimal numbers rather than integers.
  • these decimal numbers will have a like number of digits after the decimal place.
  • the GUI 200 can provide interaction alternatives to the user exactly as if no decimal had been entered at all.
  • the only necessary change is for the GUI to present an additional graphic object 1202, 1204 to indicate the position of the decimal in each row of the workspace as well as in each row presented in the paper.
  • the GUI can append zeros to whichever value has fewer digits after the decimal point until both decimal numbers do indeed have the same number of digits after their decimal point.
  • the GUI can provide interaction alternatives exactly as if the number had been entered from the beginning with these additional zeros, which is a case already addressed.
  • a fourth improvement is for the app to support interactions from alternative inputs besides touch screen actions.
  • Any computer pointing device such as a computer mouse or touch pad will deliver input to the app that can be processed exactly as if it had come from a touch screen. Therefore these alternative input possibilities can and should be supported as well.
  • a fifth improvement is for the app to support oversized touch drop activation zones and undersized or even invisible arrow cards.
  • the touch drop activation zone is the region of the display that provides for the initiation of a touch drop interaction.
  • the carry area 610 described above with reference figure 6b is an example of a touch drop activation zone. In the example of figure 6b, the carry area was the same as the carry arrow card.
  • the carry area could alternatively include the derived value card 602 of figure 6b.
  • the carry area could alternatively include graphic objects displayed on a carry card and overflow said carry card. Examples of said graphic objects are described in more detail below with reference to "bead tokens".
  • the touch activation zone for a graphic object is confined to the region of the display that coincides with the screen space of the graphic object. But modifying the activation zone to be larger can help provide a better experience in case the user accidentally initiates a touch drop interaction slightly outside the appropriate activation zone. Oversized touch drop activation zones are especially helpful when applied to the graphic objects of the "carry arrow card” and the "borrow arrow card”. It has been observed during testing that users sometimes initiate an action on the carry arrow card by touching the screen somewhere above the carry arrow but still inside the digit card directly above it. Therefore, a helpful improvement is to expand the activation zone of the carry arrow card to include the entirety of the digit card directly above it.
  • the GUI 200 may function in a less restrictive mode.
  • the GUI could enable touch drop interactions to commence from any digit card in the top row, thus allowing for the hundreds digits to be added first, followed by the tens digits followed by the ones digits, in contradiction to the ordering prescribed by the standard hand calculation algorithm, which dictates that ones digits should be added prior to tens digits, which must be added prior to hundreds digits.
  • FIG. 13 An example of such an outcome appears in Figure 13.
  • the user has already performed a vertically constrained touch drop interaction 1302 which has resulted in a tens digit in the holding area 1304, representing the difference of "6" and "4".
  • the completed touch drop interaction has caused the workspace to become unusable because the ones digits (items 1306 and 1308) cannot be directly manipulated due to an insufficiency circumstance and the insufficiency circumstance cannot be addressed because there are no longer minuend digits remaining in the next column to provide support for a borrow arrow interaction.
  • an environment can thus be provided that facilitates calculation of sums and differences in a manner that is distinctly easier than hand-calculation, while still being recognizably similar to hand calculation.
  • the presented invention therefore facilitates the education of children in hand calculation skills while enabling them to face higher academic challenges prior to their mastering those arithmetic skills.
  • Figures 14a to 25h illustrate an embodiment of the calculator that incorporates bead tokens into the digit cards.
  • Bead tokens are icons that represent a number using both explicit and implicit beads.
  • An explicit bead is a bead visible on a screen.
  • An implicit bead is a bead that the user will perceive as being hidden by beads in front of it. If one bead token with 100 beads in a square array, for example, overlaps another bead token comprising 100 beads in a square array, then the user will see at least a portion of the overlapped bead token and perceive that the other beads on the overlapped bead token "are still there".
  • an apparent presentation of a very large number of beads can be made on a screen without actually having to render all of the beads.
  • the embodiments presented herein will show how an apparent cube of one million beads can be presented on a touch screen with a resolution at least 300 pixels by 300 pixels. Individual beads on the face of the cube will be discernable by a user.
  • the bead tokens will be presented on digit cards.
  • the number of apparent beads in a bead token will equal the place value of the digit card.
  • a bead token on a tens digit card for example, will have ten beads.
  • the number of bead tokens on a card will equal the digit or pseudodigit on the card.
  • a tens digit card with digit "3" on it will have 3 tens bead tokens on it as well. Digits and pseudodigits on a digit card may be placed on a top digit area of the digit card. Bead tokens may be placed on a bottom token area of a digit card.
  • Bead tokens on a carry card may be transformed as the carry card moves from a selected column to the next left column. If there are initially ten units beads in a horizontal row on a carry card in the units column, for example, the bead tokens will be shifted to the left with the carry card and will also move vertically up and/or down until they partially overlap and form a vertical line of 10 beads. The vertical line of 10 overlapping beads will be 1 tens bead token.
  • each bead token When bead tokens are displayed, each bead token may be a separate graphic file.
  • the graphic files of the bead token When bead tokens are overlapped, the graphic files of the bead token may be rendered in an overlap order with an offset.
  • overlapping "to the left" means that the leftmost bead token is rendered first, then next bead token to the right is rendered next and so on.
  • the resulting image will be an oblique projection of a stack of individual bead tokens.
  • the 10 graphics files of the individual bead tokens can be replaced with a single graphics file of the next higher order bead token. This substantially improves the performance by reducing computation time to render a bead token.
  • Bead tokens for different numbers in an arithmetic problem may be rendered in different colors.
  • the augend may be one color, such a green
  • the addend may be another color, such as blue.
  • the color of the bead tokens may be preserved as a problem is calculated and bead tokens are moved to derived value cards.
  • the bead token colors can still be preserved as the bead tokens overlap to form the next higher order bead token.
  • the next higher order bead token with the combined color bead tokens may continue to be rendered from the individual bead tokens of the original selected column.
  • Figure 14a shows a GUI 1400 presented on a touch screen input/output device of an exemplary calculator.
  • Said GUI comprises a display area 1402, a user input area 1404 (e.g. a keyboard) and one or more utility icons 1408.
  • the utility icons may comprise a help button ("?”), information button ("i"), utility icon (gear), and a random problem selection button (dice). Other utility icons may be provided as well.
  • a background pattern 1410 may be presented to highlight the functional areas of the GUI.
  • a suitable background pattern is waves of sand or other natural looking uniform pattern.
  • the user input area comprises a set of single digit numerals 1405, one or more arithmetic operators 1406 and an execution icon 1407 (e.g. an equals bar).
  • the calculator may be configured to show active user input areas as bold colors and/or apparently dimensional objects, such as raised buttons, with distinct indicia.
  • An example of active user input areas in figure 14a is the single digit numerals 1 to 9. User input areas that are not active may be rendered flat with grayed out or faint indicia. Examples in figure 14a are the arithmetic operators. The arithmetic operators are greyed out and inactive since the user has not input any digits yet.
  • Figure 14b shows the GUI 1400 of figure 14a after a user has input the digits "2" and
  • the number "23" is presented 1412 in the display area 1402.
  • the plus operator 1406 and minus operator are shown as being active since now there is a first number input for an arithmetic problem.
  • the execution icon 1407 is still inactive since the user has not selected an operator or a second number.
  • the times icon 1401 is inactive simply because the times function has not been activated in the calculator. This may be an option for a parent or other responsible adult (e.g. a teacher) to activate or deactivate so that a child will first master addition and subtraction before proceeding to multiplication.
  • a view icon 1403 may be presented to allow a user to view what an entered number will look like expressed as a set of digit cards with digit tokens on them.
  • the calculator described herein can display bead icons of up to ten million apparent beads on a digital display of 320 x 480 pixels (e.g. iPhone 1). An addition problem therefore with up to 7 digits per number can be entered. The solution may have up to 8 digits. Provision must be made, therefore, for a units column through a ten millions column.
  • the calculator may be adapted to vary the position and width of the display area 1402, as well as the font of the numbers 1412 presented in the display area, in response to the number of digits entered for the first and second number of an arithmetic problem.
  • Figure 14c shows the GUI 1400 after a user has chosen an arithmetic operator and a second number (item 1416). The equals bar 1407 then becomes active. Once the equals bar (or other execution icon) is chosen, the calculator transitions from the GUI in figure 14c to the GUI in figure 15a.
  • Figure 15a shows the GUI 1400 after the equals bar icon is selected.
  • the user input area has been removed, the display area 1402 has been reduced in size, and a workspace area 1502 has been presented.
  • a redo button 1504 is presented. The redo button will cause the problem to reset.
  • a "speak button 1518 has been presented. The speak button will cause the calculator to speak the number out loud.
  • GUI shows the single digit numbers of the first and second numbers displayed in digit cards arranged in columns and rows. Since this is an addition problem, the first number will be referred to as the augend and the second number will be referred to as the addend.
  • the digit cards are displayed above an equals bar area 1511 which in turn is above one or more holding areas 1513.
  • the augend digit cards 1515 are in a first color, such as green.
  • the addend digit cards 1517 are in a second color, such as purple.
  • Each digit card 1506 comprises a top digit area 1508 and a bottom token area 1510.
  • the numerical digit 1512 for each digit card is displayed in the digit area.
  • the bead tokens 1514 are displayed in the token area.
  • the digits and tokens have the color of their respective digit cards.
  • bead tokens is equal to the numerical value of the digit in a digit card.
  • the digit and token areas do not have to be explicitly rendered but may be implicit from the arrangement of the digit tokens or digits displayed in a digit card.
  • the phrase "displayed on" or the like means that the apparent base of a given bead token will at least partially cover a portion of a token area of digit card.
  • bead tokens described herein will include oblique projections of stacks of beads. Any three dimensional projection may be used.
  • the tokens are rendered from a top right perspective. This means that the viewer appears to be above and to the right of a token. Any perspective may be used.
  • a user will perceive a bead token as having a bottom even if the bottom is not directly visible.
  • the top edge and right edge of the bottom of an object should still be visible to a user.
  • Said bottom will be on a digit card if it obscures at least a portion of a token area.
  • the rendering of an oblique projection may extend below the bottom of a digit card as displayed on a screen.
  • the user will nonetheless perceive the bead token as being on the card. This perception will be maintained even if the display device is not large enough to display an entire bead token and the bead token appears to extend off of the screen.
  • the perception may be reinforced by the manipulation of large bead tokens on a screen during the process of a calculation. Thus a user may view an entire bead token before its position is shifted a final position so that said bead token does not entirely fit on a screen.
  • FIGS 26A to 26D show illustrate details of various bead tokens for different place value columns. The broken lines on said figures are not part of the bead token designs.
  • the bead token for the units column 1522 is called a "units bead" (item 2602 figure
  • the bead may be rendered as spherical or any other suitable shape, such as an ellipsoid or pyramid.
  • the bead token for the tens column 1520 is called a "tens stick” (item 2604 figure 26A) and is a representation of 10 overlapping units beads in a vertical line. It could alternatively be a representation of 10 overlapping units beads in an apparent normal direction to the plane 1521 of the digits cards.
  • the bead token for the hundreds column is called a "hundreds slab” (item 2606 figure 26a) and is an upper right oblique projection of 10 overlapping tens sticks arranged in a vertical slab extending in the normal direction to the plane of the digit cards.
  • the bead token for the thousands column is called a "thousands cube" (item 2608 figure 26a) and may be an upper right oblique projection of 10 overlapping hundreds slabs in a cube configuration.
  • the bead token for the ten thousands column is called a "ten thousands stick" (item 2612 figure 26b) and may be an upper right oblique projection of 10 overlapping thousands cubes stacked together in the normal direction to the plane of said digit cards and wherein a gap with a width of at least one units bead is between each of said thousands cubes in said ten thousands stick.
  • the bead token for the hundred thousands column is called a "hundred thousands slab" (item 2614 figure 26c) and may be an upper right oblique projection of 10 overlapping ten thousands sticks arranged in a vertical slab extending in the normal direction to the plane of said digit cards and wherein there is a gap with a width of at least one units bead between each of said ten thousands sticks in said hundred thousands slab.
  • the bead token for the millions column is called a "millions cube" (item 2616 figure 26d) and is an upper right oblique projection of 10 overlapping hundred thousands slabs arranged in a cube configuration and wherein there is a gap with a width of at least one units bead between each of said hundred thousands slabs in said millions cube.
  • the millions cube may have a forward face showing individual beads thereupon.
  • An output device resolution of at least 300 x 300 pixels is adequate for a user to discern individual beads on the forward face.
  • Higher place order bead tokens such as ten millions sticks, hundred millions slabs etc. may be similarly constructed from lower order bead tokens displayed with a constant offset between the lower order bead tokens such that the higher order bead token appears to be an oblique projection.
  • any three dimensional projection may be used, such as an isometric projection or perspective projection.
  • Bead tokens on the digit cards of the first number in an arithmetic problem may be left justified.
  • the bead token on the digit cards of the second number in an arithmetic problem may be right justified.
  • the left and right justifications may be preserved as digit cards are touch dropped to the holding areas below the equals bar area and the bead tokens are transferred to token areas on the corresponding derived value cards.
  • digit cards and bead tokens may be scaled in size depending upon how many place values are required to calculate and display the solution to the arithmetic problem.
  • the width of the digit cards in a given place value column may be scaled before the presentation of the workspace area to
  • Figure 15b shows the GUI 1400 after a user has touch dropped the augend and addend digit cards in the ones column.
  • the bead tokens 1517 from the augend digit card are shown in the upper left of the derived value card 1524.
  • the bead tokens 1516 for the addend digit card are shown in the lower right.
  • a derived value equation 1525 is shown in the equals bar area.
  • the derived value (item 1526) is "8". The touch drop is still reversible at this point since the user has not lifted his/her touch 1528.
  • Figure 15c shows the GUI 1400 after the user has lifted his/her finger from the touch screen and the calculator has completed the touch drop.
  • the digit tokens 1517 from the addend digit card have moved down to the same level as the digit tokens 1516 from the augend digit card.
  • the left and right justifications of the bead tokens have been preserved.
  • the bead tokens are also shown in a single row within a token area 1515 in the lower portion of the derived value card 1524.
  • the derived value digit (item 1526) is displayed in a digit area 1513 in the top of the derived value card. Since the user has completed the touch drop by lifting his/her finger, the derived value is also shown in a corresponding position 1530 in the display area 1402.
  • FIG. 15d shows the GUI 1400 after a touch drop has been executed on the digit cards in the tens column.
  • the tens bars from the augend digit card and addend digit card are shown in a token area 1532 in the derived value card.
  • the final answer to the arithmetic problem is shown in a corresponding location 1534 in the display area 1402.
  • Figures 16a to 16f illustrate the steps of carrying with bead tokens.
  • Figure 16a shows the GUI 1400 of a calculator displaying the arithmetic problem "29+49".
  • "29” is the first number of the arithmetic problem.
  • "+” is the operator.
  • "49” is the second number in the arithmetic number.
  • the arithmetic problem is shown in the display area 1402.
  • the workspace area 1502 shows the arithmetic problem displayed on digit cards.
  • the augend cards are shown above the addend cards.
  • the operator 1603 is shown above the equals bar area 1511.
  • the equals bar area is below the digit cards.
  • One or more holding areas 1513 are shown below the equals bar area.
  • the workspace area has a row 1601 above the digit cards that will receive a carry card in subsequent operations. Rows and columns may be shown herein as parallel broken lines. The broken lines are not displayed on the GUI.
  • the augend digit card 1602 in the ones place has a horizontal row 1606 of 9 bead tokens that are left justified.
  • the addend digit card 1604 has a row 1608 of 9 bead tokens that are right justified.
  • FIG. 15d there was enough room for the addend bead tokens and augend bead tokens to be displayed in a single row in a derived value card. That is not true in this arrangement. This forecasts to the user that there will be a need to do something different since there is not enough room to show all bead tokens in a single row.
  • Figure 16b shows the GUI after a user has selected the units column 1610 for a touch drop.
  • the calculator has determined that the user selected the units column and calculated a derived value of "18" for the sum of the digit cards. This is a two digit number with the "1" (item 1618) being the tens digit and the "8" (item 1619) being the ones digit.
  • the derived value remains in the equals bar.
  • the bead tokens 1606 from the augend and bead tokens 1608 for the addend are shown on the derived value card 1612.
  • the bead tokens for the augend are shown as a row in a token area 1615 of the derived value card.
  • the derived value card has a width 1616 that is only adequate to show ten bead tokens side by side.
  • the coloring of the bead tokens is preserved and will remain with the bead tokens for all subsequent transformations.
  • the augend bead tokens that did not drop down are the remainder bead tokens 1607.
  • a "ghost card” 1628 remains behind.
  • the ghost card is a faint rendering of the digit card. It helps remind the user of what the digits were that led to a particular derived value. The user can also deduce these values from the color of the bead tokens in the derived value cards.
  • a pseudodigit 1626 is shown in the display are 1402 to indicate to the user the stage of calculation. Since the derived value has been determined to be a two digit number, a carry area
  • a carry arrow 1622 has also been displayed.
  • the carry area includes the derived value card and the carry arrow.
  • the carry area is shown as a broken line rectangle. The broken line is not displayed on the GUI.
  • the carry area may also include the renderings of the bead tokens on the derived value card even if said renderings extend outside of the boundary of the derived value card.
  • Figure 16c shows the GUI 1400 after the user has selected 1642 the carry area and made a gesture 1648 to the left.
  • the selection was made by touching the screen in the carry area.
  • the gesture to the left was sliding the user's finger to the left without breaking contact with the touch screen.
  • the gesture is shown as a broken line arrow.
  • the broken line arrow is not displayed on the GUI.
  • a carry card 1644 is displayed to the left of the derived value card after the user selects the carry area.
  • the carry card has a left edge, right edge, top edge, bottom edge, width 1646, and a height.
  • the width is variable.
  • the operator 1603 will not shift with the shifting digit cards 1656.
  • the shifting digit cards may at least partially cover the operator. This will forecast to the user that the shifting digit cards may at some point shift back.
  • the tens digit (item 1618) of the derived value will shift left with the gesture of the user. It will ultimately be placed in the carry card.
  • the ones digit (item 1619) remains above the derived value card. It will ultimately be placed in the derived value card.
  • the remainder beads 1607 remain in the derived value card. They will ultimately shift to the token area of the derived value card.
  • the calculator is adapted to reverse the process if the user moves his/her finger to the right.
  • a user can experiment with moving right and left to see how the bead tokens shift from a horizontal row of 10 lower order bead tokens to the bead token of the next higher place value column.
  • Figure 16d shows the GUI 1400 after the user's gesture has increased the width 1646 of the carry card to a first desired carry card width 1662.
  • the 10 bead tokens 1634 have been fully transformed to a single bead token of the next higher place value column (e.g. a tens stick).
  • the carry card will no longer increase in width.
  • the shift of the higher place value digit cards has been halted.
  • the user must lift his/her finger from its position 1643 on the touch screen in order for the next steps to take place.
  • the next steps could take place automatically after the carry card reaches its desired width.
  • the next steps the calculator performs are: 1) move 1664 said carry card 1644 with said next higher order bead token through said vertical passage 1660 to the row 1601 above said digit cards of said first number in said arithmetic problem; and
  • Figure 16e shows the GUI 1400 after the completion of the carry operation.
  • the ones digit (item 1619) of the derived value has been placed in a digit area of the derived value card 1612.
  • the remaining bead tokens 1607 have been placed in a token area of the derived value card.
  • the carry card 1644 is shown above the digit cards of the first and second number.
  • the bead token 1634 from the carry operation is shown right justified in the carry card.
  • the corresponding notations 1672 and 1674 from doing the problem on a piece of paper are shown in the display are 1402.
  • the system could replace the 10 graphic images shown overlapping as the bead token in the carry card with a single graphic image with the same color coding. This will significantly reduce computation time for higher order problems especially where there are a large number of beads implicitly represented in a bead token (e.g. a million bead cube).
  • Figure 16f shows the GUI 1400 after a user has touch dropped the carry card in the tens column.
  • the augend bead tokens 1684 are left justified in the derived value card 1681.
  • the carry bead token 1634 is right justified.
  • the addend bead tokens 1682 are shifted left and are center justified between the augend bead tokens and the carry bead token. If this column had a two digit derived value, the remainder augend bead tokens would be in a row above the row of the addend bead token(s) and carry bead token.
  • the lower row of augend, addend and carry bead tokens could then be carried by a similar operation to the next higher place value column. The coloring would be preserved.
  • a surprising benefit of this method of choreographing the movement of bead tokens during carrying and subsequent touch dropping is that all bead tokens remain visible even of carried many place value columns. For example, in the arithmetic problem of 999,999 + 1, the single bead of the units column of the addend is continuously visible throughout all carry operations and can be seen in the final millions cube.
  • the solution (item 1686) is also shown in the display area 1402.
  • FIGs 17a to 17d show a sequential screen shots from a calculator adapted to show the steps of subtraction using bead tokens on digit cards.
  • the GUI 1400 has a display area 1402 and a workspace area 1502. Both areas show a particular arithmetic problem to be solved, "68-45". This problem can be solved without any borrowing.
  • An example with borrowing will be shown in figures 18a to 18h.
  • Figure 17a shows the arithmetic problem displayed as digits cards for the first number (item 1702) (i.e. the minuend) and the second number (item 1704) (i.e. the subtrahend).
  • An operator 1706 is presented.
  • the digit cards are above an equals bar area 1708.
  • One or more holding areas 1712 are below the equals bar area.
  • the bead tokens 1714 shown in the minuend digit cards are the same as the bead tokens shown for addition problems. They are also left justified.
  • the tokens 1716 in the subtrahend cards will serve the function of removing bead tokens from the minuend cards. Hence they will be referred to herein as "removal tokens".
  • a person of ordinary skill in the art will recognize that there are many physical metaphors that can be used to convey physical removal. The metaphor described herein is that of a drawer removing minuend bead tokens that are placed in it. Other metaphors include "anti" bead tokens, explosive bead tokens, or any metaphor that intuitively conveys the removal, transformation or destruction of minuend bead tokens.
  • the removal tokens explicitly or implicitly illustrate the number of bead tokens than can be removed per removal token.
  • the removal token for the units column is a small drawer 1716 about the size of a corresponding units bead 1714.
  • the removal token 1718 for the tens column can be a tall drawer similar in dimension to a corresponding tens stick 1720.
  • the removal drawers may have open tops so that bead tokens can be shown going in them.
  • the walls may be rendered as semitransparent so that the user can see the bead tokens after they are placed in the removal drawers.
  • the removal tokens in the subtrahend cards are also left justified so that they will vertically align with the bead tokens of the minuend cards they are intended to remove.
  • Figure 17b shows the GUI 1400 after a user has touched 1722 a minuend card in the ones column and made a downward gesture. Similar to addition, the minuend card pushed the subtrahend card down after touching it and the subtrahend card stopped its downward motion when its bottom got to the bottom of the holding area. The removal tokens on the subtrahend card, however, remained visible and open as the minuend card was lowered. Ghosts 1726 of the removal tokens can be seen in the ghost of the minuend card in the minuend card's original position.
  • the calculator is adapted to allow reversal of the touch drop as long as the user has not lifted his/her finger from the touch screen. Thus a user can experiment with lowering a raising digit cards.
  • FIG 17c shows the GUI 1400 after the calculator has auto completed the touch drop.
  • a derived value card 1732 is presented in the holding area.
  • a derived value digit (item 1734) is presented in a digit area.
  • the remaining minuend bead tokens 1724 are shown in a token area. They have been right justified.
  • the calculator was adapted to show the removal tokens retract into the derived value card and then disappear.
  • a ghost image 1738 of the original removal tokens is presented in the subtrahend card as a reminder of the removal tokens of the original problem.
  • the display area 1402 has also been updated with the corresponding derived value digit (item 1736).
  • Figure 17d shows the final solution to the arithmetic problem.
  • the workspace area 1502 shows the derived value card 1742 for the tens column and the derived value card 1732 for the ones column.
  • the display area 1402 shows the final answer (item 1744) as well. Borrowing of Bead Tokens
  • Figures 18a to 18h show successive GUIs 1400 of an embodiment of the calculator that has borrowing of bead tokens for a subtraction problem.
  • Figure 18f shows an alternative method of removing bead tokens. Lines 1802 proceed up from removal tokens 1804 and pull down minuend bead to be removed 1808.
  • Figures 19a to 19d show successive GUIs 1400 of an embodiment of the calculator that allows a user to touch drop digit cards in different place value columns of a subtraction problem in any order, even if said order leads to a dead end since a given minuend digit card is no longer available to borrow from.
  • Figures 20 and 21 show alternative GUIs 2000 of an embodiment of the calculator that determines the proper scaling of digit cards so that all required digit cards will fit within the physical width of a display.
  • Figures 20 and 21 also show how bead tokens can be displayed so that it appears that bead tokens are on a digit card even if their total rendered image extends outside of a digit card boundary.
  • the GUI 2000 of the display of the calculator has a physical width 2006.
  • the widths 2012 of all of the digit cards are proportionally scaled so that all digit cards will fit 2008 within the width of the display.
  • the display shown in figure 20 is the display after the first number of an arithmetic problem has been entered and the user has selected the view button (item 1403 figure 14b). If the user had entered the entire arithmetic problem and selected the execute button (item 1407 figure 14c), then the calculator would have determined the required widths of the derived value cards and would have proportionally adjusted the widths of the derived value cards so that they would all physically fit within the width of the display.
  • Figure 20 also shows the upper edge 2016 of the base of a bead token 2018 can be aligned with the top 2014 of a token area 2022 of a digit card 2013.
  • the bead token will appear to be on said digit card even though a portion 2024 of the rendering of the bead token is outside of the token area.
  • Figure 20 also shows a display area 2002.
  • Figure 21 shows an additional example where the top edge 2106 of the base of a bead token 2104 fits within the width 2102 of a digit card but the full rendering of the bead token itself would extend beyond the physical edges 2108 of the display screen of the calculator.
  • Figures 22a to 22d show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 tens bars (item 2202 figure 22a) from a tens column and transition said 10 tens bars into 1 hundreds slab (item 2204 figure 22c) during a carry operation.
  • Figures 23a to 23c show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 hundreds slabs (item 2302 figure 23a) from a hundreds column and transition said 10 hundreds slabs into 1 thousands cube (item 2304 figure 23b) during a carry operation.
  • Figures 24a to 24f show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 thousands cubes (item 2402 figure 24b) from a thousands column and transition said 10 thousands cubes into 1 ten thousands stick (item 2404 figure 24e) during a carry operation.
  • Figures 24a to 24f also show how a calculator may be adapted to determine the relative widths of the digit cards in each place value column prior to display of a workspace area 2004 such that all derived value cards that will be used in the course of the calculation will be wide enough to accommodate the bead tokens that will be displayed thereupon.
  • the arithmetic problem to be solved is "9,000 + 1,000".
  • the bead tokens to be displayed in the augend thousands column digit card are 9 thousands cubes (item 2414). Each thousands cube has a base with a width 2412.
  • 10 thousands cubes will be carried to the ten thousands column and transformed into a single ten thousands stick.
  • the calculator carried out the following steps:
  • the derived value card 2424 in the thousands column will have to display 10 thousands cubes side by side.
  • the width 2418 of said derived value card is set to be at least 10 times the width 2412 of a single thousands cube.
  • 10 thousands cubes will have to be transformed into 1 ten thousands stick and carried to the ten thousands column.
  • a ten thousands stick however, has a base width of only 1 thousands cube.
  • the predetermined width 2422 of the ten thousands derived value card 2426 therefore, is only at least the width of 1 thousands cube.
  • the width of the derived value card in the ten thousands column would be predetermined to be at least 6 times the width of a ten thousands cube since there will be 6 ten thousands sticks displayed thereupon.
  • the scaling of all digit cards would then be predetermined so that all derived value cards can fit on the screen of the display device. Transition of 10 Ten Thousands Sticks to 1 Hundred Thousands Slab
  • Figures 25a to 25h show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 ten thousands sticks (item 2502 figure 25b) from a ten thousands column and transition said 10 ten thousands sticks into 1 hundred thousands slab (item 2504 figure 25g) during a carry operation.
  • Figures 25a to 25h also show the order in which said 10 ten thousands sticks are displayed must be reversed during the course of said transition to a hundred thousands slab.
  • Figure 25a shows an example arithmetic problem of "90000 + 10000".
  • the initial display of the problem in the workspace 2004 shows 9 ten thousands sticks in the ten thousands augend card and 1 ten thousands stick in the ten thousands addend card.
  • the calculator comprises digital instructions to render each ten thousands sticks from a stored graphics image of a ten thousands stick.
  • the renderings are performed from left to right 2512. This is termed "overlapping from left to right”.
  • the rendering may either be done as the image for the screen is built, or it may be done before hand with the final result displayed.
  • the left to right rendering continues with the ten thousands stick 2522 of the addend rendered after the last ten thousands stick 2518 of the augend.
  • the left to right rendering of all bead tokens can be done with proper overlapping of bead tokens in adjacent place value columns. In certain circumstances, however, the ordering of the rendering of at least some bead tokens must be reversed. An example is discussed as follows with reference to the transition of 10 ten thousands sticks to 1 hundred thousands slab during a carry operation.
  • Figure 25b shows 10 ten thousands sticks 2502 displayed in a derived value card and ready for carrying to the hundred thousands column.
  • Figure 25c shows a first intermediate stage of the carry operation. The ten thousands sticks are moved down 2532 in a downward sloping diagonal array. The order of rendering is still left to right 2512.
  • each ten thousands stick e.g. item 2516
  • each ten thousands stick e.g. item 2516
  • each ten thousands stick will then be moved to the left 2534.
  • the order of the rendering of each ten thousands stick is then reversed 2536 so that the ten thousands sticks are overlapping right to left.
  • the ten thousands sticks are aligning vertically.
  • the right to left rendering makes sure that an upper ten thousands sticks (e.g. item 2514) appropriately obscures a portion of the ten thousands stick immediately below it (e.g. item 2516).
  • Figure 25g shows the final hundred thousands slab 2504.
  • the multiple graphics files used to render the hundred thousands slab can be replaced with a single graphics file for the slab itself.
  • Rendering a single file for the image of a millions cube, for example, is much faster than rendering 1 million images of the individual beads represented in a millions cube.
  • the calculator nonetheless can handle the graphics requirements of the arithmetic problem "999999 + 1" while showing all carry operations from the ones column to the millions column and still individually show the original ones bead of the augend in the final millions cube of the millions place derived value card.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

A digit card calculator is implemented on a touch screen computer. The calculator presents a user input area to receive input of an arithmetic problem. The calculator then presents a workspace area where the digits of the numbers in the arithmetic problem are presented as rectangular digit cards. The digit cards are arranged in place value columns. Bead tokens are presented on digit cards. Each bead token shows or implies the number of beads in the place value of a column. The number of bead tokens on a digit card is equal to the number on the digit card. Individual columns in the arithmetic problem are solved by touching a digit card and moving it down. Carrying in an addition problem is shown by the movement of carry cards. Borrowing in a subtraction problem is shown by the movement of digit tokens from one column to the next.

Description

Title:
Digit Card Calculator Technical Field:
The inventions described herein are in the field of calculators.
Background Art:
Presently, educators face a difficult choice when they decide whether to permit young children to use calculators in school. Advocates of calculators appreciate the way they enable children to solve challenging problems without being constrained by their hand- calculating abilities. Detractors are concerned that children who use calculators might never develop basic skills in arithmetic. Clearly, a need exists for a calculating device that will enable children to quickly complete arithmetic operations while simultaneously teaching them the skill of hand calculation.
A solution to this problem was proposed in 1976 by Hirano et al. (US patent
4,225,932). Their invention makes some possibility for children to understand the arithmetic performed by a calculator by presenting a hand-written calculation one step at a time on the calculator screen, rather than displaying simply the answer. From the adult perspective, this solution might appear complete. However, it does not give any visual indication of the logic behind each step. This constitutes a major limitation.
Another solution was proposed by Vanova in 2006 (US patent 8,371,858). This invention illustrates the meaning of the calculation by use of icons, giving a far higher chance that the student really understands the logic behind the calculation. Unfortunately, it does not present the solution in a manner that has any correspondence to hand- calculation. Thus students might understand how the answer was reached, but not how they might have gotten this answer on their own by use of pencil and paper. This constitutes a major limitation.
A third solution is provided by CalcStep, an iPhone® app by Betyl Pty Ltd. This solution is hard to understand. It requires that students respond to questions, which is tedious and for some children impossible. The presently disclosed invention overcomes all the shortcomings of the prior art and provides many additional features and benefits as well.
Disclosure of Invention:
The disclosure of invention is provided as a guide to understanding the invention. It does not necessarily describe the most generic embodiment of the invention or the broadest range of alternative embodiments.
Among other things, techniques and systems are disclosed for providing a graphical user interface (GUI) to enable user calculation of sums and differences of integer and decimal numbers.
In one embodiment of the invention, the GUI includes a user input area to receive numeric values and operators in a like manner to how sums and differences are entered into a hand calculator. The GUI also includes a display area to display the received numeric input. The display area includes a presentation of the received numeric input arranged in two or more rows, with one row for each numeric value entered. Numeric values are aligned according to place value, so that digits of like value within numeric values appear in distinct columns.
The user input area provides an easy way for children to enter the numbers they intend to add, subtract or perform other arithmetic operation on. The display area provides a natural and familiar way for children to see what they have entered. The alignment of the numbers reminds children about the distinct meaning of each digit and further reminds them of the recommended arrangement of these digits when performing hand calculations on paper.
After the user has finished entering the values and operations of the calculation, the display presents a new graphic object referred to as the "workspace" or "workspace area". The workspace presents the values of the calculation in a like manner to the paper graphic, except that it provides additional graphic objects that facilitate user interaction with the digits of the values. Within the workspace, vertically constrained touch drop gestures facilitate the movement of digits individually or in groups to holding areas at the bottom of each column. When two or more digits are placed in a common holding area, the digit values are combined into a derived numeric value in accordance with the entered arithmetic operators. In the case of an addition operator, these gestures allow children to combine digits from distinct rows into a sum at the bottom of the display area in a manner that is similar to how a paper-based addition would proceed. In the case of a subtraction operator, these gestures would work in a similar manner, except that the difference between the values of the digits would appear. The gesture might be disabled or otherwise dysfunctional in cases of subtraction where the resulting derived numeric value would be negative. This corresponds to the hand-calculation rule that students must sometimes "borrow ten from the next column" to proceed further with a subtraction calculation. The horizontal constraints on digit movement provide a clear understanding to children that digits can only be directly added or subtracted to other digits in the same column. Note that the resulting value that appears in the holding area might in some cases exceed 9 and this is why we refer to it as a "derived numeric value" rather than a digit.
Also within the workspace, vertically constrained touch drop gestures facilitate the separation of the tens digits of a derived value and the automatic transfer of the tens digit to a holding area at the top of the next vertical column to the left. This gesture corresponds naturally to a step in paper-based calculation that is traditionally referred to as "regrouping" or "carrying the one".
Also within the workspace, vertically constrained touch drop gestures facilitate the transformation of digits or derived values into two parts, the first part being a decremented derived value and the second part being a digit of value 1, which moves automatically to the next vertical column to the right where it is transformed into a numeric value of 10 and combined additively with digits or derived values already present in this region of the workspace. This gesture corresponds naturally to a step in paper-based calculation that is traditionally referred to as "regrouping" or "borrowing from the next column."
Additional improvements are also disclosed. The additional improvements relate to support for "flick" gestures, utilizing the paper graphic to illustrate a paper based
calculation, support for decimal numbers, support for pointing devices, support for oversized touch zones and support for out of sequence interactions.
By integrating these display techniques and gestures, an environment can be provided that facilitates calculation of sums and differences in a manner that is distinctly easier than hand-calculation, while still being recognizably similar to hand calculation, thus facilitating the education of children in hand calculation skills while enabling them to face higher academic challenges prior to their mastering those skills.
Brief Description of Drawings:
Figure 1 is a top rendering of a calculator according to the present invention.
Figure 2 is a GUI for a user input screen.
Figure 3 is a GUI for the user input screen of figure 2 after an arithmetic problem has been entered.
Figures 4a to 4c show the transition of the GUI to a GUI with a workspace area after the user has input an arithmetic problem to be solved.
Figures 5a to 5i are successive GUIs for a touch drop addition of digit cards.
Figures 6a to 6g are successive GUIs for a carry operation.
Figures 7a to 7i are successive GUIs for a touch drop addition of three digit cards.
Figures 8a to 8j are successive GUIs for a touch drop subtraction of two digit cards.
Figures 9a to 9g are successive GUIs for a borrowing operation.
Figure 10 is a GUI showing updating of a display area.
Figure 11 is a GUI showing updating of a display area after borrowing in a subtraction problem.
Figure 12 is a GUI showing decimal numbers in an arithmetic problem.
Figure 13 is a GUI of a dead end in a subtraction problem.
Figures 14a to 14c are successive GUIs showing the entering of an arithmetic problem.
Figures 15a to 15d are successive GUIs showing an addition problem with bead tokens.
Figures 16a to 16f are successive GUIs showing carrying with bead tokens.
Figures 17a to 17d are successive GUIs showing subtraction with bead tokens and removal tokens.
Figures 18a to 18h are successive GUIs showing borrowing with bead tokens in a subtraction problem.
Figures 19a to 19d are successive GUIs showing a dead end in subtraction with bead tokens. Figure 20 is a GUI showing bead tokens for different place value columns.
Figures 21 is a GUI showing bead tokens for large place value columns.
Figures 22a to 22d are successive GUIs showing an embodiment of carrying with bead tokens. Figures 23a to 23c are successive GUIs showing an embodiment of carrying with bead tokens.
Figures 24a to 24f are successive GUIs showing an embodiment of carrying with bead tokens.
Figures 25a to 25h are successive GUIs showing an embodiment of carrying with bead tokens.
Figures 26a to 26d are representations of different bead tokens for different place value columns. Best Mode for Carrying out the Invention:
The detailed description describes non-limiting exemplary embodiments. Any individual features may be combined with other features as required by different applications for at least the benefits described herein. As used herein, the term "about" means plus or minus 10% of a given value unless specifically indicated otherwise.
A portion of the disclosure of this patent document contains material to which a claim for copyright is made. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but reserves all other copyright rights whatsoever.
As used herein, a "computer", "computer based system", "computer implemented" or the like comprises an input device for receiving data, an output device for outputting data in tangible form (e.g. printing or displaying on a computer screen), a permanent digital memory for storing data, computer code and other digital instructions, and a digital processor for executing digital instructions wherein said digital instructions resident in said permanent memory will physically cause said digital processor to read in data via said input device, process said data within said microprocessor and output said processed data via said output device. The digital processor may be a microprocessor. The digital processor and permanent memory may have a distributed form, such as a cloud-based platform.
As used herein, the term "shaped" means that an item has the overall appearance of a given shape even if there are minor variations from the pure form of said given shape. As used herein, the term "generally" when referring to a shape means that an ordinary observer will perceive that an object has said shape even if there are minor variations from said shape.
As used herein, relative orientation terms, such as "up", "down", "top", "bottom", "left", "right", "vertical", "horizontal", "distal" and "proximal" are defined with respect to an initial presentation of an object and will continue to refer to the same portion of an object even if the object is subsequently presented with an alternative orientation, unless otherwise noted.
Techniques and systems are disclosed for providing a computer implemented GUI that enables a user to calculate sums and differences of integer and decimal numbers.
Figure 1 is an illustration of a general purpose computer 100 with a touch-sensitive screen 102. The touch sensitive screen may serve as an output device for displaying digital images. The touch screen may also serve as an input device adapted to sense an action by a user. As used herein, "receive from a user..." means to receive from an input device an action made by a user.
A user's hand 104 is shown in figure 1 after it has touched a first point 106 on the touch screen and moved 108 to a second point 110 on said touch screen. The touch may be interpreted by the computer as a selection or choice of an object 112 displayed on said touch screen. The sliding of the finger may be interpreted as moving said object to said second point. The computer would sense the motion of said finger and display the selected object moving with said motion. The motion of the object may be constrained to be either vertical 114, horizontal 116 or some other constrained motion, such as motion along a path. If the motion was constrained to be vertical, then the selected object would only move vertically to correspond to the vertical component of the user's finger motion. As used herein, "vertically constrained" means only vertical motion is allowed. "Horizontally constrained" means only horizontal motion of a selected object is allowed. An object that can be activated by touching is referred to as a "touch target".
The user may lift said finger from the touch screen at the end of the motion. This may be interpreted as the end of the user's input. The app may then take other actions, such as completing 118 the movement of the object to an intended destination if the user ends the motion before the object reaches said intended destination. The entire action is referred to as a "touch drop". The portion executed after the user ceases to touch the screen is referred to as "auto complete".
A software application (sometime called simply an "app") can be installed on a permanent digital memory of such a device. The software application may physically be in the form of digital instructions. The app may be an iOS app for use on iPhones® and iPads®. The app may be created by using Apple®'s Xcode OSX application to compile code files as well as graphics files, audio files, and other code assets into a package for general distribution via Apple®'s App Store. More specifically, the SpriteKit API provided by Apple for game development was utilized in conjunction with objective-C code files edited in Xcode, image files edited in Adobe®'s Photoshop application and sound files from third party sound libraries to create apps that functioned as an embodiments of the calculators described herein.
I n one embodiment of the calculator, the GUI includes a user input area to receive numeric values and operators in a like manner to how sums and differences are entered into a hand calculator. The GUI also includes a display area to display the received numeric input. The display area includes a presentation of the received numeric input arranged in two or more rows, with one row for each numeric value entered. Numeric values are aligned according to place value, so that digits of like place value within numeric values appear in distinct columns. As used herein, a "place value" is the multiplier for a digit in a given column of a number that provides the actual value of said digit. For example, the number "25" has two columns. The right column is a ones column with the digit of 5 and place value of 1. The left column is a tens column with the digit of 2 and a place value of 10. Thus the "2" in the tens column has an actual value of "20".
Figure 2 illustrates the initial presentation of a GUI 200 in an embodiment of the present invention. The GUIs illustrated herein are surrounded by a combination of broken and solid lines. Item numbers are presented inside and outside of GUIs with curved call out lines identifying elements of a GUI . Broken line arrows and other broken line objects may be presented within a GUI indicating the movement or presence of different elements within a GUI . Broken lines presented within a GU I are not displayed by the GUI.
An input area 202 in the lower portion of the GU I is presenting a virtual keyboard for entering an arithmetic problem. The keyboard comprises keys illustrating a set of single digit numbers 204, one or more arithmetic operators 206 and an execution icon 208. An equal bar is an execution icon. Other symbols 210 useful for entering other elements, such as a decimal point, may be presented. The keys of the keyboard are surrounded by rectangular perimeters with rounded corners. The design element of a rectangle with rounded corners may be used to indicate areas of a touch screen that are adapted to receive user selection by touching.
A display area 212, which may suggest paper, is present in the upper region of the GUI. The display area will show the arithmetic problem entered by the user as the user selects the keys of the keyboard.
A "Clear" button 214 appears in the top left corner in case the user would like to reset the app to its initial state. Other utility buttons, such as backspace, information, exit etc. may also be presented. Round icons on a GUI may also indicate areas that are adapted to receive user selection.
The user input area provides an easy way for children to enter the numbers they intend to perform an arithmetic operation on. The display area provides a natural and familiar way for children to see what they have entered. The alignment of the numbers in the display area reminds children about the distinct meaning of each digit of a number in light of a digit's place value and further reminds them of the recommended arrangement of these digits when performing hand calculations on paper.
Figure 3 shows an example presentation of GUI 200 after the digital processor has received from the input device (e.g. touch screen) actions by the user (e.g. touching) indicating a choice of the single digit numerals "2", the single digit numeral "3", the arithmetic operator "+", and the single digit numeral "4". The arithmetic problem is presented in the display area 212 in accordance with said choices. A backspace button may be provided to undo entries. The user, however, has not chosen the execution icon and so the problem is not complete and the calculator takes no further action.
Figure 4a shows the GUI 200 after the user has finished entering said arithmetic problem by touching single digit key "5". The full problem of 23+45 is presented in the display area. The user then selects the execution icon "=" (item 208). The calculator then executes steps to present a workspace area in the GUI. At this point, an animation commences and the display area 212 along with the arithmetic problem moves in the direction indicated by the broken line straight arrow 402, while the virtual keyboard retracts downward in the direction indicated by the broken line curved arrow 404. Figure 4b shows a subsequent moment in the commencing animation whereby a new graphic 412 appears on the screen. This graphic presents the numeric data 414 of the arithmetic problem in an alternative style that is more suggestive of the fact that the digits can be individually moved. The region of the display that is covered by this new graphic is hereafter referred to as the "workspace" or "workspace area". Broken line arrows 416 indicate how the workspace will grow as the commencing animation progresses.
Figure 4c shows how the GUI 200 appears when the animation has concluded. The workspace area 412 has become larger, which draws the user's attention to it and also makes it easy for individual digits 414 to be presented as touch targets for the user to manipulate.
Each digit is surrounded by a rectangular graphic with rounded corners. This shape is an example of a generally rectangular shape. We refer to this graphic surrounding a digit as the "digit card" for the digit, in consideration of how it resembles in shape a card from a deck of playing cards. The digit cards may each have a width 421, a height 423, a top 425, a bottom 427 and a perimeter or border 429. The widths of all digit cards in a given column are the same. The widths of digit cards in different columns with different place values, however, may be different. Thus digit cards may have aspect ratios that are different from that of playing cards.
The digit cards are arranged in original positions in columns and rows corresponding to the arithmetic problem. The digits cards of the first number in the arithmetic problem are displayed in an upper row. The digits cards of the second number in an arithmetic problem are displayed in a lower row immediately below the upper row. The arithmetic problem may comprise more than two numbers. Additional numbers are displayed in additional rows. The term "original positions" anticipates that the digit cards may be moved as the solution to the arithmetic problem is calculated. Some digit cards may be moved initially. Other digit cards may remain in their original positions to be moved later. As described below, digit cards may be shifted from their original positions during a carrying operation and returned to their original positions at the conclusion of the carrying operation. The digit cards may be rendered to appear to be in the same plane as if they were playing cards resting on a flat surface. As will be described below, other objects may be presented on the workspace that appear to extend in the normal direction from the plane of the digit cards. These objects may include beads, which are rendered as spheres, and bead tokens, which are stacks of beads rendered in an oblique projection. Any dimensional projection may be used.
The operator 426 of the arithmetic problem may be displayed in the workspace area. As described below, the operator will indicate what operation is performed on the digits cards of a given place value column as said digit cards are moved to a holding area.
An equals bar area 428 may be presented below the digit cards. The equals bar area may have a height 432. The height may be large enough so that numerals can be displayed in said equals bar area and be readily viewable by a user. A height corresponding to a font size of 6 points or greater is suitable.
It is natural for users to expect clear boundaries on anything rendered on a touch screen that can be affected by touch. A boundary or perimeter may be presented as a line of any style (e.g. solid, dashed, double, thick, thin), distinct change in shading (e.g. light for digit card changing to dark shade at perimeter), a diffuse change in shading (e.g. a fuzzy border) or any method of perceiving a perimeter. We want to encourage the user to manipulate the digits directly by dragging one or more of them to new positions. This is why we enclose each digit in a digit card. Any shape digit card can be used. A generally rectangular shape allows for clear arrangement of the digit cards in rows and columns. The provision of rounded corners may be a visual clue for a touch target object as opposed to an object not activated by touch. Any design element may be used, such as color or texture. The display area 212 and other inactive areas may have relatively sharp corners and thus a user might consciously or unconsciously perceive the display area as an area that would not be activated by touch. Experimentation by the user may teach the user this difference.
As the user interacts with the digit cards of the workspace, the value inside a digit card may exceed 9 and is, therefore, no longer a proper digit. In this case, we shall refer to the value inside the digit card as a "pseudodigit" because it is still functioning as a digit for a given place value while nevertheless exceeding 9 in numerical value. The graphic object surrounding a pseudodigit is still referred to simply as a "digit card". Note that pseudodigits are especially prominent in the case of "overflow" and "insufficiency", which are discussed later in this application.
The workspace in Figure 4c presents one digit card 420 differently than the rest. The
"3" digit card has a distinct appearance in order to suggest that it is the unique digit card that presently can be moved when touched. Alternative embodiments of the invention might present additional digit cards or even all digit cards in this same manner, and these embodiments may indeed permit direct manipulation of additional digit cards at the outset. However, this embodiment especially distinguishes the right-most digit in the top row 422 when an addition problem is initially presented, thus indicating to a user that work must begin here. This choice of highlighting only the digit card that can me moved next is made in order to maximize the correspondence between the calculator function and the
"standard algorithm" for performing addition and subtraction calculations on paper.
Before explaining additional figures, it will be helpful to first establish some terminology that can be used to explain them. Such terms as "dragable", "touch drag", "touch drop", "flick" and more now will be clarified.
"Dragable" refers to a graphic of the display that can be directly moved to a new location by touch.
"Touch drag" refers to a user interaction whereby the user touches a dragable graphic and moves it to a new location by moving his/her finger to the new location and then terminating the touch.
"Touch drop" may be used as a synonym for "touch drag". It may also include an auto completion of an action.
"Flick" refers to a touch drop that is auto completed. Thus a user might touch drag a digit card half way to the holding area and then lift said user's finger from a touch screen. The calculator may be adapted to auto complete the touch drop by rendering the digit card completing its intended motion to the holding area.
In some cases, it is appropriate for dragables to move only up and down, not left or right. In this case, the app may be programmed to change only the vertical position of the dragable in response to the user's touch irrespective of the touch's horizontal movement. We refer to this as a "vertically constrained" because only vertical movement is allowed. This can be helpful when digit cards are small and a user's touch may obscure the selected card. The user can view the card and its vertical motion by moving his/her finger to the side after touching the card.
In some cases, it is appropriate for dragables to move only left and right, not up or down. In this case, the app may be programmed to change only the horizontal position of the dragable in response to the user's touch. We refer to this as a "horizontally constrained" because only horizontal movement is allowed. Other more complicated constraints, such as constraints to a predetermined path, may also be provided.
Within the workspace, vertically constrained touch drop gestures facilitate the movement of digits individually or in groups to holding areas 424 at the bottom of each column below the equals bar area. "Holding areas" are regions of the display at the bottom of the workspace that are depicted in a manner that suggests they are the furthest allowable position of a dragable moving in their direction. Holding areas may be indicated by a grey or faint perimeter thus distinguishing themselves from movable touch cards which may have a dark or distinct perimeter. Holding areas are helpful because they suggest to the user where dragables should be moved to. When two or more digit cards are placed in a common holding area, the digit values are combined into a derived numeric value in accordance with the entered arithmetic operators. A holding area may have a top 431, bottom 433, a width 437 and a height 435. The height of a holding area may be at least as large as the height of the digit cards. The width of the holding area may be about the same as the width of the digit cards in the same place value column.
In the case of an addition operator, these gestures allow children to combine digits from distinct rows into a sum at the bottom of the display area in a manner that is similar to how a paper-based addition calculation would proceed. In the case of a subtraction operator, these gestures would work in a similar manner, except that the difference between the values of the digits would appear. The gesture might be disabled or otherwise dysfunctional in cases of subtraction where the resulting derived numeric value would be negative. This corresponds to the hand-calculation rule that students must sometimes "borrow ten from the next column" to proceed further with a subtraction calculation. The horizontal constraints on digit movement provide a clear understanding to children that digits can only be directly added or subtracted to other digits in the same column. The resulting value that appears in the holding area might in some cases exceed 9 and this is why we refer to it as a "derived numeric value" rather than a digit.
To further clarify the presentation of the GUI as well as its interaction possibilities, a series of example scenarios are presented which are illustrated by detailed figures. Many of the figures depict a white circle with black broken line circumference. This broken line circle depicts a position of the display that is being touched by a user. Ordinarily this circle would not actually be visible on the display while in use. It is simply added to a figure in this patent application in order to clarify how the user is interacting with the device. The area in the circle is filled with white to indicate that the area under the circle might be obscured from the user by the user's finger when using a touch screen display device.
The function of the GUI after user input has concluded depends on what input data has been received. As a first case, we describe the functionality that is provided after the user has input integer data separated by an addition operator. As an example of this case, we will assume the user has entered "2", "3", "+", "4", "5", "=".
Addition
Figures 5a to 5i illustrate a vertically constrained touch drop interaction that constitutes the first step for completing the specified calculation. More specifically, this interaction shows a user moving two digits (items 502 and 504) collectively to a "holding area" 506 at the bottom of the workspace 412, whereby they are transformed into their sum. As mentioned previously, "holding areas" are regions of the display at the bottom of the workspace that are depicted in a manner that suggests they are the furthest allowable position of a dragable moving in their direction. In the figures, holding areas may be depicted as gray border rounded corner rectangles with gray "?" characters inside.
The user is able to move both digit cards with a single interaction. This is possible because appropriate logic is encoded in the app to move both digit cards together as soon as the top digit card (e.g. the "3") is positioned in such a way that it touches the bottom digit card (e.g. the "5").
Referring to figure 5a, the interaction begins with the calculator receiving from the touch screen (e.g. an input device) a selection 508 by a user of an upper digit card 502 of the first number (e.g. "23") in the arithmetic problem, wherein said upper digit card is in a selected column 510 in said workspace area. The selection of the upper digit card may be by the user touching the digit card on the touch screen. This also selects the selected column. The selected column is indicated by two vertical broken lines which are not shown on the screen. The calculator may make an initiation tone indicating the commencement of the interaction. The selected card may also change shade in response to being selected.
Referring to figure 5b, the interaction continues with the calculator receiving from the touch screen an indication by said user of a gesture 512 towards the holding area 506. The indication in this instance is the user sliding said user's finger touch point 508 downward. Said downward motion is indicated by a broken line arrow. In response to said user motion, the calculator moves said upper digit card 502 towards said holding area 506. The calculator then moves the lower digit card 504 that is below said upper digit card when the bottom 514 of said upper digit card touches the top 516 of said lower digit card such that said upper digit card appears to be pushing said lower digit card down. Said touch may not be exact, but may be approximate.
Neither digit card is allowed to move past the holding area at the bottom of the workspace. Once the bottom digit card has reached the holding area, it ceases to move, while the top digit card continues to move until it has also reached the holding area. As the digit cards reach the holding area, these distinct graphic objects begin to occupy the same region of the display. This makes it difficult to fully depict all three graphic objects (e.g. the holding area, the bottom digit card and the top digit card) simultaneously. An intuitive choice is to show the bottom digit card covering the holding area as the bottom digit card arrives at the holding area and to further show the top digit card covering the bottom digit card as the top digit card arrives in this same space. Figures 5c to 5e illustrate how this part of the interaction would appear.
Referring to figure 5c, the downward motion of the upper digit card 502 and lower digit card 504 will continue until the bottom 518 of the lower digit card reaches the bottom 522 of the holding area 506. The downward motion of the lower digit card will then stop.
Referring to figure 5d, the downward motion of said lower digit card 504 was stopped when said bottom 518 of said lower digit card reached said bottom 522 of said holding area 506.
Referring to figure 5e, the upper digit card 502 has been displayed with continued downward motion such that said upper digit card covers an overlapping portion of said lower digit card 504 after said lower digit card stops said downward motion.
Referring to figure 5f, the downward motion of the upper digit card 502 is halted when the bottom 514 of said upper digit card reaches the bottom 522 of the holding area. The calculator has also calculated a derived value (item 524) of the operator 426 operating on said digits in said upper digit card and said lower digit card. An equation 526 illustrating this calculation is displayed in the equals bar area 428. At this point, the actions by the calculator may pause. The calculator may be programmed to reverse the process in response to the user moving said user's finger up on the touch screen. Thus the user can experiment before committing to an action. If the user lifts his/her user's finger off of the touch screen thus breaking the touch 508 with the touch screen, the calculator will interpret said lifting as the user completing the motion. An "end of action" tone may sound. The user can no longer reverse the motion. The calculator may then proceed to auto complete the actions shown in figures 5g to 5i. Similarly, the calculator may be programmed to auto complete a touch drop if the user merely touches a card and gestures partway down a selected column. This is considered a flick gesture. The upper digit card would continue to push the lower digit card until both were in the holding area.
In addition to relocating two digit cards to the holding area, the interaction has replaced the two original digits with a new derived value that is equal to their sum. The replacement is not instantaneous, but rather the final result of a series of intermediate transformations intended to clarify the logic behind the transformation. These
transformations are illustrated in figures 5a to 5i. More specifically, as the digit cards move toward the holding area, the digits of these digit cards are presented in ever smaller sizes. Furthermore, the vertical position of the digits is constrained so that they do not enter the holding area along with their associated digit card, but rather remain just above the holding area in the equals bar area. Furthermore, the digits are repositioned so as to not overlap and an addition operator and equals operator appear as well as the sum of the two digits. All of these details are intended to clarify as well as possible that this vertically constrained touch drop interaction will result in a summation of the digits of this column in the workspace. To complete the transformation, the original digits as well as the operators all fade out while the derived value (e.g. the "8" digit) gradually increases in size and moves down into the holding area.
Referring to figure 5i, the calculator displays the derived value (item 524) in said upper digit card at the end of the touch drop. The upper digit card then becomes a "derived value card" 528.
Carrying
In many cases, the derived value will not exceed 9. In such cases, the user may directly proceed with manipulating digits in the next column to the left in the workspace in a like manner to how the digits in the first column were manipulated. In other cases, the derived value will exceed 9. Thus, the holding area now contains a derived value card which is presenting a pseudodigit rather than a proper digit. An example of such a presentation appears in Figure 6a. The derived value card 602 shows the pseudodigit "18". We refer to this circumstance as "overflow."
In the case of overflow, a horizontally constrained touch drop gesture facilitates the separation of the tens digits of a derived value and the automatic transfer of the tens digit to an upper holding area at the top of the next vertical column to the left. More specifically, the circumstance of overflow causes a new graphic to appear on the workspace area. This new graphic should appear just below the holding area for the digit card that contains the pseudodigit. This graphic takes the form of an arrow surrounded by a rectangle that has similar features to a digit card in the workspace. We refer to this new graphic as a "carry arrow card" 604 . Figure 6a illustrates how the workspace area presents the carry arrow card when an overflow circumstance has arisen. The carry arrow card helps facilitate an interaction that corresponds to a step in the standard algorithm for hand calculation of sums, which is referred to sometimes as "regrouping" or "carrying the one."
Figure 6a - 6g illustrate an interaction that constitutes an appropriate handling of an overflow circumstance. Unlike the previous touch drop interaction for summing digit cards, in this embodiment, the interaction is initiated by touching the carry arrow card rather than by touching a digit card. Furthermore, while the previous touch drop interaction was vertically constrained, this interaction will be horizontally constrained 606. This means that the user will be allowed to move the carry arrow card horizontally but not vertically.
Furthermore in this embodiment, the carry arrow card can only be moved to the left. As the user moves the carry arrow card to the left, the display will present a new graphic object on the workspace. This new graphic object will resemble a digit card in appearance. In this embodiment it may be presented so that it appears to be sliding out from underneath the existing digit card in the holding area just above the carry arrow card. This new graphic object is hereafter referred to as the "carry card".
Referring to figure 6c, as the carry card 608 moves out from under the derived value card in correspondence with the associated movement of the carry arrow card 604, the tens digit (item 603) of the derived value moves with it. As this movement proceeds, the carry card eventually reaches a position whereby it has become fully visible and separated slightly from the derived value card that remains in the holding area. The associated carry arrow card is not permitted to move beyond the point needed to bring the carry card into clear view. During the interaction, all columns 612 that are initially positioned to the left of the carry arrow card move further to the left 614 as the carry arrow card is moved to the left. This ensures that a clear passage way 616 becomes available for transporting the carry card up to the top of the workspace and above the next column. The appropriate movement is well illustrated in Figures 6b-6d.
Referring to figure 6d, once the carry card 608 has come into clear view, further movement is disallowed. At this point, it will be clear to the user that the carry card is now a digit card for the "1" that has moved with it, while the derived value card is a digit card for the digit left behind (item 620). The user may then terminate his/her touch 607, at which point the carry arrow card will fade out of the workspace while the carry card moves automatically 618 upward through the passageway 616 until it reaches the topmost area of the workspace. Next, all columns 612 that were repositioned in order to clear a passageway for the carry card move automatically back to their original positions.
The final state of such an interaction is clearly illustrated in Figure 6g. Now, the user may directly proceed with manipulating the next digits further to the left in the workspace in a like manner to how the digits of the right most column were manipulated. In such cases as where a column contains more than two digit cards due to a carry card moving automatically to the top of a column, the top most digit card (e.g. the carry card from a prior column) may be presented as a touch target, and all digit cards in the column would subsequently collect in the holding area at the bottom in a like manner to the case with only two digit cards, which was described already. For sake of clarity, Figures 7a-7i illustrate this kind of interaction.
Referring again to figures 6a to 6g, the carry operation may be generically described as follows:
The calculator comprises a permanent digital memory which comprises digital instructions to cause the digital processor of the calculator to execute the steps of: a) when said operator is an addition operator (item 426 figure 6a), determine if the derived value (item 601) is a two digit number wherein said two digit number comprises a tens digit (item 603) and a ones digit (item 605); and b) when said derived value is a two digit number, execute the steps of: activate a carry area 610 in said workspace area 412; receive from said user a selection (item 607 figure 6b) of said carry area 610; receive from said user a gesture 609 to the left; display a carry card (item 608 figure 6c) to the left of said derived value card 602 wherein said carry card has a left edge 611, a right edge 613, a top edge 615, a bottom edge 617, a width 619, and a height 621 and wherein said width of said carry card is variable; and in response to said gesture to the left, execute the steps of:
1) increase said width of said carry card;
2) shift to the left 614 all higher order digit cards in said first 623 and second 625 numbers that are in their original positions and are to the left of the selected column 627 above the derived value card 602 such that said shifting to the left of said higher order digit cards forms a vertical passage 616 to the left of said selected column;
3) shift said tens digit 603 in said derived value to the left such that said tens digit is aligned with said vertical passage ; and
4) halt said shift of said higher order digit cards when said width of said carry card equals a first desired carry card width (item 629, figure 6d); and after said width of said carry card equals said first desired carry card width, execute the steps of:
1) move said carry card vertically 618 through said vertical
passage 616 to a row (item 631 figure 6f) above said digit cards 623 of said first number in the arithmetic problem being solved; 2) display said tens digit 603 of said derived value in said carry card 608; and
3) shift 633 said higher order digit cards back to said original positions (item 635 figure 6g).
Subtraction
The interactions described thus far have related to the case where the user has input integer values that should be added. An alternative embodiment of the present invention also gives support for the case of calculating differences. We proceed now with disclosures relating specifically to handling of input that should be differenced.
As much as possible, the GUI will handle the case of subtraction in a like manner to the case of addition. So long as every digit of the subtrahend is equal to or smaller than the corresponding digit of the minuend, the interaction protocol for addition can be used also for supporting subtraction. Figures 8a to 8j illustrate an interaction for this case of subtrahend digits not exceeding minuend digits. These figures correspond with Figures 5a- 5i.
Borrowing
On the other hand, additional innovations are needed to handle the case where a digit of the subtrahend does exceed the corresponding digit of the minuend. We refer to this circumstance as "insufficiency". An alternative embodiment of the present invention handles insufficiency by presenting a new graphic object that we shall hereafter refer to as the "borrow arrow card". This graphic resembles the carry arrow card except for the fact that it is pointing to the right instead of to the left. The borrow arrow card is presented above the next non-zero digit in the minuend, where next is understood to mean "next in the leftward direction". The borrow arrow card helps facilitate an interaction that corresponds to a step that is known as "regrouping" or "borrowing" in the standard algorithm for paper based subtraction.
Figures 9a-9g illustrate an interaction that constitutes an appropriate handling of an insufficiency circumstance. The interaction is initiated by touching the borrow arrow card (item 902, figure 9a). Alternatively, the interaction could be initiated by touching a borrow area 910. The allowed interaction is a horizontally constrained touch drop interaction with movement permitted only in the rightward direction. This gesture will facilitate the transformation of digits or pseudodigits into two parts, the first part being a decremented minuend value and the second part being a digit of value 1, which moves automatically to the next vertical column to the right where it is transformed into a numeric value of 10 and combined additively with digits or derived values already present in this region of the workspace.
More specifically, as soon as the user touches (item 904 figure 9b) the borrow arrow card, the digit just below the borrow arrow card will be replaced by a pair of values, the first of which (item 906) is a decremented digit and second of which (item 908) is a
Referring to figure 9c, as the user continues moving the borrow arrow card 904 in the rightward direction, the (item 908) moves rightward as well. Both the borrow arrow card and move further rightward until they reach a position whereby further rightward movement would cause the to intrude on the space of the digit existing in the next column to the right (i.e. the "3" digit). At this point, further movement of the borrow arrow card is not permitted. When the user terminates his/her touch, the "+" portion of the fades out and the "1" remains, adjusting in size and position to more clearly present itself as a digit of a larger derived value or pseudodigit (e. g. "13"). This progression is illustrated in figure 9e to 9g.
The final state of such an interaction is clearly illustrated in Figure 9g. From this point, the user will usually proceed by initiating a vertically constrained touch drop interaction applied to the resulting pseudodigit. In some cases, additional interactions with a borrow arrow card may be necessary. In any case, the interactions already described are sufficient for supporting the user with his/her intended calculation, provided that the appropriate interaction is always supported at the appropriate time. The calculator may be configured so that there is no ambiguity about which interaction should be supported at which time. The calculator would then determine the next allowed interaction by reference to the "standard algorithm for hand calculating differences," with borrowing steps in the standard algorithm corresponding to interactions with a borrow arrow card and differencing steps corresponding to touch drop interactions with digit cards.
Alternative embodiments
A first improvement is possible by providing programmatic support for "flick" gestures. "Flick" refers to an interaction whereby the user begins moving a dragable in a given direction and then releases the dragable and the dragable continues moving after release until it reaches the final position permissible in this direction. The flick allows users to more or less throw a dragable in a given direction and trust that it will automatically move to the farthest allowed position in that direction. In the interactions described above, we do have a clear and unique final position for the repositioned graphic objects. This affords us the possibility to give support for flick interactions where we already have support for touch drop interactions.
Referring to figures 10 and 11, a second improvement is possible by utilizing the display area 212 to the left of the workspace area 412 to illustrate subsequent steps of a hand-calculation in correspondence to the progress the user makes in the workspace area. Item 1002 in Figure 10 illustrates this possibility for a sum. It shows the 1 being carried to the tens column. Item 1102 in Figures 11 illustrates this possibility for a difference. It shows 10 being borrowed from the tens column to the ones column.
Referring to figure 12, a third improvement is possible by providing support for the cases where a user has entered decimal numbers rather than integers. In the simplest such case, these decimal numbers will have a like number of digits after the decimal place. In such case, the GUI 200 can provide interaction alternatives to the user exactly as if no decimal had been entered at all. The only necessary change is for the GUI to present an additional graphic object 1202, 1204 to indicate the position of the decimal in each row of the workspace as well as in each row presented in the paper.
In case decimal numbers entered by the user do not have a like number of digits after the decimal point, the GUI can append zeros to whichever value has fewer digits after the decimal point until both decimal numbers do indeed have the same number of digits after their decimal point. At this point, the GUI can provide interaction alternatives exactly as if the number had been entered from the beginning with these additional zeros, which is a case already addressed.
A fourth improvement is for the app to support interactions from alternative inputs besides touch screen actions. Any computer pointing device such as a computer mouse or touch pad will deliver input to the app that can be processed exactly as if it had come from a touch screen. Therefore these alternative input possibilities can and should be supported as well.
A fifth improvement is for the app to support oversized touch drop activation zones and undersized or even invisible arrow cards. The touch drop activation zone is the region of the display that provides for the initiation of a touch drop interaction. The carry area 610 described above with reference figure 6b is an example of a touch drop activation zone. In the example of figure 6b, the carry area was the same as the carry arrow card. The carry area could alternatively include the derived value card 602 of figure 6b. The carry area could alternatively include graphic objects displayed on a carry card and overflow said carry card. Examples of said graphic objects are described in more detail below with reference to "bead tokens".
Normally, the touch activation zone for a graphic object is confined to the region of the display that coincides with the screen space of the graphic object. But modifying the activation zone to be larger can help provide a better experience in case the user accidentally initiates a touch drop interaction slightly outside the appropriate activation zone. Oversized touch drop activation zones are especially helpful when applied to the graphic objects of the "carry arrow card" and the "borrow arrow card". It has been observed during testing that users sometimes initiate an action on the carry arrow card by touching the screen somewhere above the carry arrow but still inside the digit card directly above it. Therefore, a helpful improvement is to expand the activation zone of the carry arrow card to include the entirety of the digit card directly above it. Likewise, it is a helpful improvement of the invention to expand the touch activation zone of the borrow arrow card to include the entirety of the digit card displayed just below it. An example termed a "borrow area" 910 is shown in figure 9a. When the borrow area is item 910, then the borrow action will commence if the user touches any portion of said borrow area. This modification to the design greatly enhances the usability of the GUI for children. It also provides for the possibility that carry arrow cards as well as borrow arrow cards optionally may present themselves in a rather small size without degrading the usability of the GUI. It is even an option that the arrows be presented in such a small size that they are not visible at all. Yet the touch activation zone for each such invisible arrow card still includes the region of the display occupied by the nearest digit card, and thus affords for a still fully functional GUI.
As stated previously, the embodiments described thus far disallow touch
interactions that do not proceed in an order that corresponds to the steps of the standard algorithm for handwritten calculation of sums and differences. Among other things, this implies that digit manipulation should start on the right most column and proceed column by column to the left, except in the case of insufficiency whereby insufficiency circumstances are resolved as they arise. This restriction is enforced when the goal of the calculator is to help children become more familiar with the standard algorithm.
Under some circumstances it may actually be beneficial to disable these restrictions so that the GUI 200 may function in a less restrictive mode. For example, the GUI could enable touch drop interactions to commence from any digit card in the top row, thus allowing for the hundreds digits to be added first, followed by the tens digits followed by the ones digits, in contradiction to the ordering prescribed by the standard hand calculation algorithm, which dictates that ones digits should be added prior to tens digits, which must be added prior to hundreds digits.
A possible consequence of this relaxation of interaction restrictions is that users might transform the workspace into such a state as to render impossible any further progress toward completion of the specified calculation. An example of such an outcome appears in Figure 13. The user has already performed a vertically constrained touch drop interaction 1302 which has resulted in a tens digit in the holding area 1304, representing the difference of "6" and "4". The completed touch drop interaction has caused the workspace to become unusable because the ones digits (items 1306 and 1308) cannot be directly manipulated due to an insufficiency circumstance and the insufficiency circumstance cannot be addressed because there are no longer minuend digits remaining in the next column to provide support for a borrow arrow interaction. If the goal of the calculator were completely limited to assisting with calculations, then this outcome would clearly be undesirable. However, a secondary goal of the calculator is to support the education of children with regard to arithmetic, and the unusable workspace may in fact provide a very helpful learning experience to children who are still trying to understand the mechanics of arithmetic. For this reason, alternative embodiments of the invention that relax the interaction restriction should be regarded as worthwhile embodiments under some circumstances. They can be programmed in a similar manner as the more restrictive embodiment, except for the fact that they should accept interaction with a larger multitude of touch targets (e.g. digit cards and arrow cards).
By integrating all these display techniques and gestures, an environment can thus be provided that facilitates calculation of sums and differences in a manner that is distinctly easier than hand-calculation, while still being recognizably similar to hand calculation. The presented invention therefore facilitates the education of children in hand calculation skills while enabling them to face higher academic challenges prior to their mastering those arithmetic skills.
Bead tokens
Figures 14a to 25h illustrate an embodiment of the calculator that incorporates bead tokens into the digit cards. Bead tokens are icons that represent a number using both explicit and implicit beads. An explicit bead is a bead visible on a screen. An implicit bead is a bead that the user will perceive as being hidden by beads in front of it. If one bead token with 100 beads in a square array, for example, overlaps another bead token comprising 100 beads in a square array, then the user will see at least a portion of the overlapped bead token and perceive that the other beads on the overlapped bead token "are still there". By overlapping bead tokens, an apparent presentation of a very large number of beads can be made on a screen without actually having to render all of the beads. The embodiments presented herein will show how an apparent cube of one million beads can be presented on a touch screen with a resolution at least 300 pixels by 300 pixels. Individual beads on the face of the cube will be discernable by a user.
The bead tokens will be presented on digit cards. The number of apparent beads in a bead token will equal the place value of the digit card. A bead token on a tens digit card, for example, will have ten beads. The number of bead tokens on a card will equal the digit or pseudodigit on the card. A tens digit card with digit "3" on it will have 3 tens bead tokens on it as well. Digits and pseudodigits on a digit card may be placed on a top digit area of the digit card. Bead tokens may be placed on a bottom token area of a digit card.
Bead tokens on a carry card may be transformed as the carry card moves from a selected column to the next left column. If there are initially ten units beads in a horizontal row on a carry card in the units column, for example, the bead tokens will be shifted to the left with the carry card and will also move vertically up and/or down until they partially overlap and form a vertical line of 10 beads. The vertical line of 10 overlapping beads will be 1 tens bead token.
When bead tokens are displayed, each bead token may be a separate graphic file. When bead tokens are overlapped, the graphic files of the bead token may be rendered in an overlap order with an offset. As used herein, overlapping "to the left" means that the leftmost bead token is rendered first, then next bead token to the right is rendered next and so on. If bead tokens are each overlapped with a fixed offset, then the resulting image will be an oblique projection of a stack of individual bead tokens. Once a set of ten bead tokens are fully overlapped to form the next higher order (i.e. next higher place value) bead token, then the 10 graphics files of the individual bead tokens can be replaced with a single graphics file of the next higher order bead token. This substantially improves the performance by reducing computation time to render a bead token.
Bead tokens for different numbers in an arithmetic problem may be rendered in different colors. In a two number addition problem, for example, the augend may be one color, such a green, and the addend may be another color, such as blue. The color of the bead tokens may be preserved as a problem is calculated and bead tokens are moved to derived value cards. When bead tokens are carried from once place value column to the next higher order place value column, the bead token colors can still be preserved as the bead tokens overlap to form the next higher order bead token. In this instance, the next higher order bead token with the combined color bead tokens may continue to be rendered from the individual bead tokens of the original selected column.
Figure 14a shows a GUI 1400 presented on a touch screen input/output device of an exemplary calculator. Said GUI comprises a display area 1402, a user input area 1404 (e.g. a keyboard) and one or more utility icons 1408. The utility icons may comprise a help button ("?"), information button ("i"), utility icon (gear), and a random problem selection button (dice). Other utility icons may be provided as well. A background pattern 1410 may be presented to highlight the functional areas of the GUI. A suitable background pattern is waves of sand or other natural looking uniform pattern. The user input area comprises a set of single digit numerals 1405, one or more arithmetic operators 1406 and an execution icon 1407 (e.g. an equals bar). The calculator may be configured to show active user input areas as bold colors and/or apparently dimensional objects, such as raised buttons, with distinct indicia. An example of active user input areas in figure 14a is the single digit numerals 1 to 9. User input areas that are not active may be rendered flat with grayed out or faint indicia. Examples in figure 14a are the arithmetic operators. The arithmetic operators are greyed out and inactive since the user has not input any digits yet.
Figure 14b shows the GUI 1400 of figure 14a after a user has input the digits "2" and
"3". The number "23" is presented 1412 in the display area 1402. The plus operator 1406 and minus operator are shown as being active since now there is a first number input for an arithmetic problem. The execution icon 1407 is still inactive since the user has not selected an operator or a second number. The times icon 1401 is inactive simply because the times function has not been activated in the calculator. This may be an option for a parent or other responsible adult (e.g. a teacher) to activate or deactivate so that a child will first master addition and subtraction before proceeding to multiplication.
A view icon 1403 may be presented to allow a user to view what an entered number will look like expressed as a set of digit cards with digit tokens on them. The calculator described herein can display bead icons of up to ten million apparent beads on a digital display of 320 x 480 pixels (e.g. iPhone 1). An addition problem therefore with up to 7 digits per number can be entered. The solution may have up to 8 digits. Provision must be made, therefore, for a units column through a ten millions column. The calculator may be adapted to vary the position and width of the display area 1402, as well as the font of the numbers 1412 presented in the display area, in response to the number of digits entered for the first and second number of an arithmetic problem.
Figure 14c shows the GUI 1400 after a user has chosen an arithmetic operator and a second number (item 1416). The equals bar 1407 then becomes active. Once the equals bar (or other execution icon) is chosen, the calculator transitions from the GUI in figure 14c to the GUI in figure 15a.
Addition with Bead Tokens
Figure 15a shows the GUI 1400 after the equals bar icon is selected. The user input area has been removed, the display area 1402 has been reduced in size, and a workspace area 1502 has been presented. A redo button 1504 is presented. The redo button will cause the problem to reset. A "speak button 1518 has been presented. The speak button will cause the calculator to speak the number out loud.
Similar to the workspace area 412 of figure 4c, the workspace area in the present
GUI shows the single digit numbers of the first and second numbers displayed in digit cards arranged in columns and rows. Since this is an addition problem, the first number will be referred to as the augend and the second number will be referred to as the addend. The digit cards are displayed above an equals bar area 1511 which in turn is above one or more holding areas 1513. The augend digit cards 1515 are in a first color, such as green. The addend digit cards 1517 are in a second color, such as purple. Each digit card 1506 comprises a top digit area 1508 and a bottom token area 1510. The numerical digit 1512 for each digit card is displayed in the digit area. The bead tokens 1514 are displayed in the token area. The digits and tokens have the color of their respective digit cards.
The number of bead tokens is equal to the numerical value of the digit in a digit card. The digit and token areas do not have to be explicitly rendered but may be implicit from the arrangement of the digit tokens or digits displayed in a digit card. As used herein, the phrase "displayed on" or the like means that the apparent base of a given bead token will at least partially cover a portion of a token area of digit card. As described in more detail below, bead tokens described herein will include oblique projections of stacks of beads. Any three dimensional projection may be used. The tokens are rendered from a top right perspective. This means that the viewer appears to be above and to the right of a token. Any perspective may be used.
A user will perceive a bead token as having a bottom even if the bottom is not directly visible. In a top right oblique projection, the top edge and right edge of the bottom of an object should still be visible to a user. Said bottom will be on a digit card if it obscures at least a portion of a token area.
The rendering of an oblique projection may extend below the bottom of a digit card as displayed on a screen. The user will nonetheless perceive the bead token as being on the card. This perception will be maintained even if the display device is not large enough to display an entire bead token and the bead token appears to extend off of the screen. The perception may be reinforced by the manipulation of large bead tokens on a screen during the process of a calculation. Thus a user may view an entire bead token before its position is shifted a final position so that said bead token does not entirely fit on a screen.
Figures 26A to 26D show illustrate details of various bead tokens for different place value columns. The broken lines on said figures are not part of the bead token designs.
The bead token for the units column 1522 is called a "units bead" (item 2602 figure
26A) and is a single bead 1516. The bead may be rendered as spherical or any other suitable shape, such as an ellipsoid or pyramid.
The bead token for the tens column 1520 is called a "tens stick" (item 2604 figure 26A) and is a representation of 10 overlapping units beads in a vertical line. It could alternatively be a representation of 10 overlapping units beads in an apparent normal direction to the plane 1521 of the digits cards. The bead token for the hundreds column is called a "hundreds slab" (item 2606 figure 26a) and is an upper right oblique projection of 10 overlapping tens sticks arranged in a vertical slab extending in the normal direction to the plane of the digit cards.
The bead token for the thousands column is called a "thousands cube" (item 2608 figure 26a) and may be an upper right oblique projection of 10 overlapping hundreds slabs in a cube configuration.
The bead token for the ten thousands column is called a "ten thousands stick" (item 2612 figure 26b) and may be an upper right oblique projection of 10 overlapping thousands cubes stacked together in the normal direction to the plane of said digit cards and wherein a gap with a width of at least one units bead is between each of said thousands cubes in said ten thousands stick.
The bead token for the hundred thousands column is called a "hundred thousands slab" (item 2614 figure 26c) and may be an upper right oblique projection of 10 overlapping ten thousands sticks arranged in a vertical slab extending in the normal direction to the plane of said digit cards and wherein there is a gap with a width of at least one units bead between each of said ten thousands sticks in said hundred thousands slab.
The bead token for the millions column is called a "millions cube" (item 2616 figure 26d) and is an upper right oblique projection of 10 overlapping hundred thousands slabs arranged in a cube configuration and wherein there is a gap with a width of at least one units bead between each of said hundred thousands slabs in said millions cube.
The millions cube may have a forward face showing individual beads thereupon. An output device resolution of at least 300 x 300 pixels is adequate for a user to discern individual beads on the forward face. Higher place order bead tokens, such as ten millions sticks, hundred millions slabs etc. may be similarly constructed from lower order bead tokens displayed with a constant offset between the lower order bead tokens such that the higher order bead token appears to be an oblique projection. As mentioned above, however, any three dimensional projection may be used, such as an isometric projection or perspective projection.
Bead tokens on the digit cards of the first number in an arithmetic problem may be left justified. The bead token on the digit cards of the second number in an arithmetic problem may be right justified. The left and right justifications may be preserved as digit cards are touch dropped to the holding areas below the equals bar area and the bead tokens are transferred to token areas on the corresponding derived value cards.
Similar to the display area, the workspace area 1502, digit cards and bead tokens may be scaled in size depending upon how many place values are required to calculate and display the solution to the arithmetic problem. The width of the digit cards in a given place value column may be scaled before the presentation of the workspace area to
accommodate the expected total widths of the bead token bases to be displayed thereupon. For example, if a derived value card in the ten thousands column will be required to display 10 ten thousands sticks side by side, then all of the digit cards in the ten thousands column will be displayed wide enough to hold the bases of 10 ten thousands sticks prior to the rendering of the workspace area.
Figure 15b shows the GUI 1400 after a user has touch dropped the augend and addend digit cards in the ones column. The bead tokens 1517 from the augend digit card are shown in the upper left of the derived value card 1524. The bead tokens 1516 for the addend digit card are shown in the lower right. A derived value equation 1525 is shown in the equals bar area. The derived value (item 1526) is "8". The touch drop is still reversible at this point since the user has not lifted his/her touch 1528.
Figure 15c shows the GUI 1400 after the user has lifted his/her finger from the touch screen and the calculator has completed the touch drop. The digit tokens 1517 from the addend digit card have moved down to the same level as the digit tokens 1516 from the augend digit card. The left and right justifications of the bead tokens have been preserved. The bead tokens are also shown in a single row within a token area 1515 in the lower portion of the derived value card 1524. The derived value digit (item 1526) is displayed in a digit area 1513 in the top of the derived value card. Since the user has completed the touch drop by lifting his/her finger, the derived value is also shown in a corresponding position 1530 in the display area 1402. This simulates what a user would see when doing the calculation on paper. The metaphor of paper is reinforced by illustrating a spiral 1531, like one would see in a spiral notebook, in the top of the display area. Figure 15d shows the GUI 1400 after a touch drop has been executed on the digit cards in the tens column. The tens bars from the augend digit card and addend digit card are shown in a token area 1532 in the derived value card. The final answer to the arithmetic problem is shown in a corresponding location 1534 in the display area 1402. Carrying with Bead Tokens
Figures 16a to 16f illustrate the steps of carrying with bead tokens. Figure 16a shows the GUI 1400 of a calculator displaying the arithmetic problem "29+49". "29" is the first number of the arithmetic problem. "+" is the operator. "49" is the second number in the arithmetic number. The arithmetic problem is shown in the display area 1402. The workspace area 1502 shows the arithmetic problem displayed on digit cards.
The augend cards are shown above the addend cards. The operator 1603 is shown above the equals bar area 1511. The equals bar area is below the digit cards. One or more holding areas 1513 are shown below the equals bar area.
The workspace area has a row 1601 above the digit cards that will receive a carry card in subsequent operations. Rows and columns may be shown herein as parallel broken lines. The broken lines are not displayed on the GUI. The augend digit card 1602 in the ones place has a horizontal row 1606 of 9 bead tokens that are left justified. The addend digit card 1604 has a row 1608 of 9 bead tokens that are right justified. In the prior example illustrated in figures 15a to 15d, there was enough room for the addend bead tokens and augend bead tokens to be displayed in a single row in a derived value card. That is not true in this arrangement. This forecasts to the user that there will be a need to do something different since there is not enough room to show all bead tokens in a single row.
Figure 16b shows the GUI after a user has selected the units column 1610 for a touch drop. The calculator has determined that the user selected the units column and calculated a derived value of "18" for the sum of the digit cards. This is a two digit number with the "1" (item 1618) being the tens digit and the "8" (item 1619) being the ones digit. The derived value remains in the equals bar.
The bead tokens 1606 from the augend and bead tokens 1608 for the addend are shown on the derived value card 1612. The bead tokens for the augend are shown as a row in a token area 1615 of the derived value card. The derived value card has a width 1616 that is only adequate to show ten bead tokens side by side. When the bead tokens for the augend and addend were shifted down during the touch drop, any augend bead tokens that could fit in the row of addend bead tokens dropped 1614 to the same row as the addend bead tokens. Thus there is a horizontal row 1634 of 10 bead tokens in the token area of the derived value card. The coloring of the bead tokens is preserved and will remain with the bead tokens for all subsequent transformations. The augend bead tokens that did not drop down are the remainder bead tokens 1607.
In this embodiment, once a digit card is touch dropped, a "ghost card" 1628 remains behind. The ghost card is a faint rendering of the digit card. It helps remind the user of what the digits were that led to a particular derived value. The user can also deduce these values from the color of the bead tokens in the derived value cards.
A pseudodigit 1626 is shown in the display are 1402 to indicate to the user the stage of calculation. Since the derived value has been determined to be a two digit number, a carry area
1624 has been activated. A carry arrow 1622 has also been displayed. The carry area includes the derived value card and the carry arrow. The carry area is shown as a broken line rectangle. The broken line is not displayed on the GUI. The carry area may also include the renderings of the bead tokens on the derived value card even if said renderings extend outside of the boundary of the derived value card.
Figure 16c shows the GUI 1400 after the user has selected 1642 the carry area and made a gesture 1648 to the left. In this touch screen embodiment, the selection was made by touching the screen in the carry area. The gesture to the left was sliding the user's finger to the left without breaking contact with the touch screen. The gesture is shown as a broken line arrow. The broken line arrow is not displayed on the GUI.
A carry card 1644 is displayed to the left of the derived value card after the user selects the carry area. The carry card has a left edge, right edge, top edge, bottom edge, width 1646, and a height. The width is variable. When the user makes the gesture to the left the calculator carries out the steps: 1) increase said width of said carry card;
2) shift to the left 1658 all higher place value digit cards 1656 in said first and second numbers that are in their original positions and are to the left of said selected column 1610 such that said shifting to the left of said higher place value digit cards forms a vertical passage 1660 to the left of said selected column; and
3) continuously shift said 10 bead tokens 1634 both to the left 1652 and vertically 1654 such that said 10 bead tokens overlap to form a next higher bead token (e.g. item 1632) corresponding to the place value of the column to the left of said selected column.
In this embodiment, the operator 1603 will not shift with the shifting digit cards 1656. The shifting digit cards may at least partially cover the operator. This will forecast to the user that the shifting digit cards may at some point shift back. The tens digit (item 1618) of the derived value will shift left with the gesture of the user. It will ultimately be placed in the carry card. The ones digit (item 1619) remains above the derived value card. It will ultimately be placed in the derived value card. The remainder beads 1607 remain in the derived value card. They will ultimately shift to the token area of the derived value card.
Since the user is still touching 1643 the screen, the calculator is adapted to reverse the process if the user moves his/her finger to the right. Thus a user can experiment with moving right and left to see how the bead tokens shift from a horizontal row of 10 lower order bead tokens to the bead token of the next higher place value column.
Figure 16d shows the GUI 1400 after the user's gesture has increased the width 1646 of the carry card to a first desired carry card width 1662. The 10 bead tokens 1634 have been fully transformed to a single bead token of the next higher place value column (e.g. a tens stick). The carry card will no longer increase in width. The shift of the higher place value digit cards has been halted. In the illustrated embodiment, the user must lift his/her finger from its position 1643 on the touch screen in order for the next steps to take place. Alternatively, the next steps could take place automatically after the carry card reaches its desired width. The next steps the calculator performs are: 1) move 1664 said carry card 1644 with said next higher order bead token through said vertical passage 1660 to the row 1601 above said digit cards of said first number in said arithmetic problem; and
2) shift 1668 said higher place value digit cards back to said original positions. In the illustrated embodiment, the tens digit (item 1618) is picked up by the carry card as it passes over it.
Figure 16e shows the GUI 1400 after the completion of the carry operation. The ones digit (item 1619) of the derived value has been placed in a digit area of the derived value card 1612. The remaining bead tokens 1607 have been placed in a token area of the derived value card. The carry card 1644 is shown above the digit cards of the first and second number. The bead token 1634 from the carry operation is shown right justified in the carry card. The corresponding notations 1672 and 1674 from doing the problem on a piece of paper are shown in the display are 1402.
At this point, the system could replace the 10 graphic images shown overlapping as the bead token in the carry card with a single graphic image with the same color coding. This will significantly reduce computation time for higher order problems especially where there are a large number of beads implicitly represented in a bead token (e.g. a million bead cube).
Figure 16f shows the GUI 1400 after a user has touch dropped the carry card in the tens column. The augend bead tokens 1684 are left justified in the derived value card 1681. The carry bead token 1634 is right justified. The addend bead tokens 1682 are shifted left and are center justified between the augend bead tokens and the carry bead token. If this column had a two digit derived value, the remainder augend bead tokens would be in a row above the row of the addend bead token(s) and carry bead token. The lower row of augend, addend and carry bead tokens could then be carried by a similar operation to the next higher place value column. The coloring would be preserved. A surprising benefit of this method of choreographing the movement of bead tokens during carrying and subsequent touch dropping is that all bead tokens remain visible even of carried many place value columns. For example, in the arithmetic problem of 999,999 + 1, the single bead of the units column of the addend is continuously visible throughout all carry operations and can be seen in the final millions cube.
The solution (item 1686) is also shown in the display area 1402.
Bead token subtraction Figures 17a to 17d show a sequential screen shots from a calculator adapted to show the steps of subtraction using bead tokens on digit cards. Referring to figure 17a, the GUI 1400 has a display area 1402 and a workspace area 1502. Both areas show a particular arithmetic problem to be solved, "68-45". This problem can be solved without any borrowing. An example with borrowing will be shown in figures 18a to 18h. Figure 17a shows the arithmetic problem displayed as digits cards for the first number (item 1702) (i.e. the minuend) and the second number (item 1704) (i.e. the subtrahend). An operator 1706 is presented. The digit cards are above an equals bar area 1708. One or more holding areas 1712 are below the equals bar area.
The bead tokens 1714 shown in the minuend digit cards are the same as the bead tokens shown for addition problems. They are also left justified. The tokens 1716 in the subtrahend cards, however, will serve the function of removing bead tokens from the minuend cards. Hence they will be referred to herein as "removal tokens". A person of ordinary skill in the art will recognize that there are many physical metaphors that can be used to convey physical removal. The metaphor described herein is that of a drawer removing minuend bead tokens that are placed in it. Other metaphors include "anti" bead tokens, explosive bead tokens, or any metaphor that intuitively conveys the removal, transformation or destruction of minuend bead tokens. It is desirable that the removal tokens explicitly or implicitly illustrate the number of bead tokens than can be removed per removal token. Thus as shown in figure 17a, the removal token for the units column is a small drawer 1716 about the size of a corresponding units bead 1714. Similarly, the removal token 1718 for the tens column can be a tall drawer similar in dimension to a corresponding tens stick 1720. The removal drawers may have open tops so that bead tokens can be shown going in them. The walls may be rendered as semitransparent so that the user can see the bead tokens after they are placed in the removal drawers. The removal tokens in the subtrahend cards are also left justified so that they will vertically align with the bead tokens of the minuend cards they are intended to remove.
Figure 17b shows the GUI 1400 after a user has touched 1722 a minuend card in the ones column and made a downward gesture. Similar to addition, the minuend card pushed the subtrahend card down after touching it and the subtrahend card stopped its downward motion when its bottom got to the bottom of the holding area. The removal tokens on the subtrahend card, however, remained visible and open as the minuend card was lowered. Ghosts 1726 of the removal tokens can be seen in the ghost of the minuend card in the minuend card's original position. In the illustrated embodiment, the calculator is adapted to allow reversal of the touch drop as long as the user has not lifted his/her finger from the touch screen. Thus a user can experiment with lowering a raising digit cards. Once the user lifts his/her finger from the touch screen, however, the calculator is adapted to automatically and irreversibly complete the touch drop operation. Figure 17c shows the GUI 1400 after the calculator has auto completed the touch drop. A derived value card 1732 is presented in the holding area. A derived value digit (item 1734) is presented in a digit area. The remaining minuend bead tokens 1724 are shown in a token area. They have been right justified. Prior to the current display, the calculator was adapted to show the removal tokens retract into the derived value card and then disappear. A ghost image 1738 of the original removal tokens, however, is presented in the subtrahend card as a reminder of the removal tokens of the original problem. The display area 1402 has also been updated with the corresponding derived value digit (item 1736).
Figure 17d shows the final solution to the arithmetic problem. The workspace area 1502 shows the derived value card 1742 for the tens column and the derived value card 1732 for the ones column. The display area 1402 shows the final answer (item 1744) as well. Borrowing of Bead Tokens
Figures 18a to 18h show successive GUIs 1400 of an embodiment of the calculator that has borrowing of bead tokens for a subtraction problem. Figure 18f shows an alternative method of removing bead tokens. Lines 1802 proceed up from removal tokens 1804 and pull down minuend bead to be removed 1808.
Allowing a Borrowing Dead End
Figures 19a to 19d show successive GUIs 1400 of an embodiment of the calculator that allows a user to touch drop digit cards in different place value columns of a subtraction problem in any order, even if said order leads to a dead end since a given minuend digit card is no longer available to borrow from.
Scaling Display of the Digit Cards
Figures 20 and 21 show alternative GUIs 2000 of an embodiment of the calculator that determines the proper scaling of digit cards so that all required digit cards will fit within the physical width of a display. Figures 20 and 21 also show how bead tokens can be displayed so that it appears that bead tokens are on a digit card even if their total rendered image extends outside of a digit card boundary.
In figure 20 the GUI 2000 of the display of the calculator has a physical width 2006. The widths 2012 of all of the digit cards are proportionally scaled so that all digit cards will fit 2008 within the width of the display. The display shown in figure 20 is the display after the first number of an arithmetic problem has been entered and the user has selected the view button (item 1403 figure 14b). If the user had entered the entire arithmetic problem and selected the execute button (item 1407 figure 14c), then the calculator would have determined the required widths of the derived value cards and would have proportionally adjusted the widths of the derived value cards so that they would all physically fit within the width of the display.
Figure 20 also shows the upper edge 2016 of the base of a bead token 2018 can be aligned with the top 2014 of a token area 2022 of a digit card 2013. Thus the bead token will appear to be on said digit card even though a portion 2024 of the rendering of the bead token is outside of the token area.
Figure 20 also shows a display area 2002.
Figure 21 shows an additional example where the top edge 2106 of the base of a bead token 2104 fits within the width 2102 of a digit card but the full rendering of the bead token itself would extend beyond the physical edges 2108 of the display screen of the calculator.
Transition of 10 Tens Bars to 1 Hundreds Slab
Figures 22a to 22d show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 tens bars (item 2202 figure 22a) from a tens column and transition said 10 tens bars into 1 hundreds slab (item 2204 figure 22c) during a carry operation.
Transition of 10 Hundreds Slabs to 1 Thousands Cube
Figures 23a to 23c show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 hundreds slabs (item 2302 figure 23a) from a hundreds column and transition said 10 hundreds slabs into 1 thousands cube (item 2304 figure 23b) during a carry operation.
Transition of 10 Thousands Cubes to 1 Ten Thousands Stick
Figures 24a to 24f show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 thousands cubes (item 2402 figure 24b) from a thousands column and transition said 10 thousands cubes into 1 ten thousands stick (item 2404 figure 24e) during a carry operation. Figures 24a to 24f also show how a calculator may be adapted to determine the relative widths of the digit cards in each place value column prior to display of a workspace area 2004 such that all derived value cards that will be used in the course of the calculation will be wide enough to accommodate the bead tokens that will be displayed thereupon.
Referring to figure 24a, the arithmetic problem to be solved is "9,000 + 1,000". The bead tokens to be displayed in the augend thousands column digit card are 9 thousands cubes (item 2414). Each thousands cube has a base with a width 2412. In the course of calculation the solution to the arithmetic problem in the workspace area 2004, 10 thousands cubes will be carried to the ten thousands column and transformed into a single ten thousands stick. Prior to displaying the workspace area 2004, the calculator carried out the following steps:
1) determine a total number of columns required to be displayed and derived value cards to be calculated during the course of calculating a solution to said arithmetic problem;
2) determine the maximum number of said bead tokens to be displayed on said derived value cards during the course of said solution to said arithmetic problem; and
3) adjust the width (e.g. items 2422 and 2418) of said digit cards to be displayed in each column to be equal to or greater than said maximum number of tokens to be displayed on said derived value cards in each column times the width of said bases of said bead tokens for each column.
In this example, the derived value card 2424 in the thousands column will have to display 10 thousands cubes side by side. The width 2418 of said derived value card is set to be at least 10 times the width 2412 of a single thousands cube. During the course of calculating the solution to the arithmetic problem, 10 thousands cubes will have to be transformed into 1 ten thousands stick and carried to the ten thousands column. A ten thousands stick, however, has a base width of only 1 thousands cube. The predetermined width 2422 of the ten thousands derived value card 2426, therefore, is only at least the width of 1 thousands cube. If the arithmetic problem were "5900+1000", then the width of the derived value card in the ten thousands column would be predetermined to be at least 6 times the width of a ten thousands cube since there will be 6 ten thousands sticks displayed thereupon. The scaling of all digit cards would then be predetermined so that all derived value cards can fit on the screen of the display device. Transition of 10 Ten Thousands Sticks to 1 Hundred Thousands Slab
Figures 25a to 25h show successive GUIs 2000 of an embodiment of the calculator that is adapted to carry 10 ten thousands sticks (item 2502 figure 25b) from a ten thousands column and transition said 10 ten thousands sticks into 1 hundred thousands slab (item 2504 figure 25g) during a carry operation. Figures 25a to 25h also show the order in which said 10 ten thousands sticks are displayed must be reversed during the course of said transition to a hundred thousands slab.
Figure 25a shows an example arithmetic problem of "90000 + 10000". The initial display of the problem in the workspace 2004 shows 9 ten thousands sticks in the ten thousands augend card and 1 ten thousands stick in the ten thousands addend card. The calculator comprises digital instructions to render each ten thousands sticks from a stored graphics image of a ten thousands stick. The renderings are performed from left to right 2512. This is termed "overlapping from left to right". Thus the first augend ten thousands stick 2514 is rendered before the second augend ten thousands stick 2516 and so on. The rendering may either be done as the image for the screen is built, or it may be done before hand with the final result displayed. The left to right rendering continues with the ten thousands stick 2522 of the addend rendered after the last ten thousands stick 2518 of the augend. In general, the left to right rendering of all bead tokens can be done with proper overlapping of bead tokens in adjacent place value columns. In certain circumstances, however, the ordering of the rendering of at least some bead tokens must be reversed. An example is discussed as follows with reference to the transition of 10 ten thousands sticks to 1 hundred thousands slab during a carry operation.
Figure 25b shows 10 ten thousands sticks 2502 displayed in a derived value card and ready for carrying to the hundred thousands column. Figure 25c shows a first intermediate stage of the carry operation. The ten thousands sticks are moved down 2532 in a downward sloping diagonal array. The order of rendering is still left to right 2512.
Referring to figure 25d, once the ten thousands sticks are low enough so that each ten thousands stick (e.g. item 2516) is below its adjacent ten thousands stick (e.g. item 2514) to the left, the ten thousands sticks will then be moved to the left 2534. The order of the rendering of each ten thousands stick is then reversed 2536 so that the ten thousands sticks are overlapping right to left.
Referring to figure 25e, the ten thousands sticks are aligning vertically. The right to left rendering makes sure that an upper ten thousands sticks (e.g. item 2514) appropriately obscures a portion of the ten thousands stick immediately below it (e.g. item 2516).
Figure 25g shows the final hundred thousands slab 2504. At this point, the multiple graphics files used to render the hundred thousands slab can be replaced with a single graphics file for the slab itself. This significantly improves the performance of the computer implemented calculator in rendering various GUIs, particularly when there are many orders of magnitude in the arithmetic problem. Rendering a single file for the image of a millions cube, for example, is much faster than rendering 1 million images of the individual beads represented in a millions cube. The calculator nonetheless can handle the graphics requirements of the arithmetic problem "999999 + 1" while showing all carry operations from the ones column to the millions column and still individually show the original ones bead of the augend in the final millions cube of the millions place derived value card.
Conclusion
While the disclosure has been described with reference to one or more different exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. In addition, many modifications may be made to adapt to a particular situation without departing from the essential scope or teachings thereof. Therefore, it is intended that the disclosure not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention.

Claims

We claim:
1. A calculator comprising: a) an input device adapted to sense an action by a user; b) an output device adapted to present digital images; c) a digital processor adapted to receive input from said input device, process said input and present said digital images on said output device; and d) a permanent digital memory comprising digital instructions to cause said digital processor to execute the steps of: i) display a workspace area on said output device wherein said workspace area comprises a display of an arithmetic problem wherein:
1) said arithmetic problem comprises a first number comprising single digit numerals, a second number comprising single digit numerals and an arithmetic operator;
2) said single digit numerals of said first and second numbers are
displayed as digit cards in a plane, wherein: a) each of said digit cards has a generally rectangular shape with a width, a height, a top, a bottom, and a perimeter; b) said digit cards are arranged in original positions in columns and rows corresponding to said arithmetic problem; c) said digit cards of said first number are displayed in an upper row of said rows; and d) said digit cards of said second number are displayed in a lower row of said rows wherein said lower row is immediately below said upper row; 3) an equals bar area is displayed below said digit cards wherein said equals bar area has a height; and 4) said workplace area comprises a holding area below said equals bar area wherein said holding area has a top, a bottom and a height wherein said height of said holding area is equal to or greater than said height of said digit cards; ii) receive from said input device a selection by a user of an upper digit card of said first number, wherein said upper digit card is in a selected column in said workspace area; iii) receive from said input device an indication by said user of a gesture
towards said holding area; iv) move said upper digit card towards said holding area in response to said gesture by said user; v) move a lower digit card that is below said upper digit card when said bottom of said upper digit card touches said top of said lower digit card such that said upper digit card appears to be pushing said lower digit card down; vi) stop said downward motion of said lower digit card when said bottom of said lower digit card reaches said bottom of said holding area; vii) display said upper digit card with continued downward motion such that said upper digit card covers an overlapping portion of said lower digit card after said lower digit card stops said downward motion; and viii) after said bottom of said upper digit card reaches said bottom of said
holding area, execute the steps of:
1) calculate a derived value of said operator operating on said digits in said upper digit card and said lower digit card; and
2) display said derived value in said upper digit card wherein said upper digit card then becomes a derived value card.
2. The calculator of claim 1 wherein said permanent digital memory comprises digital
instructions to cause said digital processor to execute the steps of: a) present a display area on said output device prior to said display of said arithmetic problem in said workspace area; b) present a user input area on said output device, said user input area comprising: i) a set of single digit numerals; ii) one or more arithmetic operators; and iii) an execution icon; c) receive from said input device one or more actions by said user indicating a choice of one or more of said single digit numerals indicating said first number, one of said arithmetic operators, and one or more of said single digits indicating said second number wherein said choices of digit numerals and arithmetic operator define said arithmetic problem; d) display said arithmetic problem in said display area in accordance with said choice of said first number, arithmetic operator and second number; e) receive from said input device an action by said user indicating a choice of said
execution icon; and f) display said workspace area on said output device wherein said workspace area comprises a display of said arithmetic problem.
3. The calculator of claim 2 wherein said display area and said workspace area are shown at the same time on said display device.
4. The calculator of claim 3 wherein said display area shows a paper-based intermediate step in performing said calculation after said derived value is shown in said derived value card.
5. The calculator of claim 1 which comprises a touch screen and wherein: a) said input device is said touch screen; and b) said output device is said touch screen.
6. The calculator of claim 5 wherein said permanent digital memory comprises digital
instructions to cause said digital processor to execute the steps of: a) interpret a user finger touch of a digit card as a selection of said digit card; b) interpret a user moving said finger while touching said screen as a motion to be conveyed to said selected digit card; and c) interpret said user lifting said finger from said touch screen as said user completing said gesture.
7. The calculator of claim 6 wherein said motion to be conveyed to said selected upper digit card is vertical motion only irrespective of the horizontal position of said finger of said user.
8. The calculator of claim 1 wherein said permanent digital memory comprises digital
instructions to cause said digital processor to execute the steps of: a) when said operator is an addition operator, determine if said derived value is a two digit number wherein said two digit number comprises a tens digit and a ones digit; and b) when said derived value is a two digit number, execute the steps of: i) activate a carry area in said workspace area; ii) receive from said user a selection of said carry area; iii) receive from said user a gesture to the left; iv) display a carry card to the left of said derived value card wherein said carry card has a left edge, a right edge, a top edge, a bottom edge, a width, and a height and wherein said width of said carry card is variable; and v) in response to said gesture to the left, execute the steps of:
1) increase said width of said carry card;
2) shift to the left all higher order digit cards in said first and second numbers that are in their original positions and are to the left of said selected column such that said shifting to the left of said higher order digit cards forms a vertical passage to the left of said selected column; 3) shift said tens digit in said derived value to the left such that said tens digit is aligned with said vertical passage ; and
4) halt said shift of said higher order digit cards when said width of said carry card equals a first desired carry card width; and vi) after said width of said carry card equals said first desired carry card width, execute the steps of:
1) move said carry card vertically through said vertical passage to a row above said digit cards of said first number in said arithmetic problem;
2) display said tens digit of said derived value in said carry card; and
3) shift said higher order digit cards back to said original positions.
9. The calculator of claim 1 wherein: a) each of said digit cards for said first and second number comprises a top digit area and a bottom token area; b) each of said digits in said first and second number are displayed in said digit areas; c) each of said token areas displays a number of bead tokens wherein said number of bead tokens is equal to the value of the digit in the digit area of the same digit card; d) each of said column has a place value corresponding to one of a ones column, a tens column, a hundreds column, a thousands column, a ten thousands column, a hundred thousands column, a millions column or a ten millions column; and e) each of said columns has a bead token corresponding to said place value.
10. The calculator of claim 9 wherein: a) the bead token for the ones column is a units bead and is a representation of a single bead; b) the bead token for the tens column is a tens stick and is a representation of 10 overlapping units beads in a vertical line; and c) the bead token for the hundreds column is a hundreds slab and is an upper right oblique projection of 10 overlapping tens sticks arranged in a vertical slab extending in the normal direction to the plane of said digit cards.
11. The calculator of claim 10 wherein: a) the bead token for the thousands column is a thousands cube and is an upper right oblique projection of 10 overlapping hundreds slabs in a cube configuration; b) the bead token for the ten thousands column is a ten thousands stick and is a an upper right oblique projection of 10 overlapping thousands cubes stacked together in the normal direction to the plane of said digit cards and wherein a gap with a width of at least one units bead is between each of said thousands cubes in said ten thousands stick; and c) the bead token for the hundred thousands column is a hundred thousands slab and is an upper right oblique projection of 10 overlapping ten thousands sticks arranged in a vertical slab extending in the normal direction to the plane of said digit cards and wherein there is a gap with a width of at least one units bead between each of said ten thousands sticks in said hundred thousands slab.
12. The calculator of claim 11 wherein: a) the bead token for the millions column is a millions cube and is an upper right oblique projection of 10 overlapping hundred thousands slabs arranged in a cube configuration and wherein there is a gap with a width of at least one units bead between each of said hundred thousands slabs in said millions cube; b) said millions cube comprises forward face; and c) said output device has a resolution of at least 300 pixels by 300 pixels such that individual units beads represented in said forward face of said millions cube can be discerned by said user.
13. The calculator of claim 10 wherein said permanent digital memory comprises digital
instructions to cause said digital processor to execute the steps of: a) when said operator is an addition operator: i) display said bead tokens for said first number in a first color; ii) display said bead tokens for said second number in a second color; and iii) after said derived value card is displayed, display said bead tokens from said first digit card and said second digit card in a token area of said derived value card.
The calculator of claim 13 wherein said permanent digital memory comprises digital instructions to cause said digital processor to execute the steps of: a) when said operator is an addition operator: i) determine a place value for said selected column; and ii) determine if said derived value is a two digit number wherein said two digit number comprises a tens digit and a ones digit; and b) when said derived value is a two digit number, execute the steps of: i) activate a carry area in said workspace area; ii) display a horizontal row of 10 bead tokens on the token area on said derived value card wherein said bead tokens are the bead tokens associated with the place value of said selected column; iii) receive from said user a selection of said carry area; iv) receive from said user a gesture to the left; v) display a carry card to the left of said derived value card wherein said carry card has a left edge, a right edge, a top edge, a bottom edge, a width, and a height and wherein said width of said carry card is variable; and vi) in response to said gesture to the left, execute the steps of:
1) increase said width of said carry card;
2) shift to the left all higher place value digit cards in said first and second numbers that are in their original positions and are to the left of said selected column such that said shifting to the left of said higher place value digit cards forms a vertical passage to the left of said selected column;
3) continuously shift said 10 bead tokens both to the left and vertically such that said 10 bead tokens overlap to form a next higher bead token corresponding to the place value of the column to the left of said selected column;
4) halt said shift left of said higher place value digit cards when said width of said carry card equals a first desired carry card width; and
5) display said next higher bead token on said carry card; and vii) after said width of said carry card equals said first desired carry card width, execute the steps of:
1) move said carry card with said next higher order bead token through said vertical passage to a row above said digit cards of said first number in said arithmetic problem; and
2) shift said higher place value digit cards back to said original
positions.
15. The calculator of claim 14 wherein: a) when said 10 bead tokens are ten thousands sticks shown overlapping left to right on said derived value card and said 10 bead tokens are to be shown overlapping bottom to top in a hundred thousands slab, and in response to said shift left of said carry area, execute the steps of: i) shift said 10 ten thousands sticks initially downward in an expanding
downward sloping diagonal array with said 10 ten thousands sticks displayed overlapping from left to right; and ii) when each ten thousands stick in said expanding downward sloping diagonal array is below its adjacent ten thousands stick to the left, shift said ten thousands sticks to the left in a collapsing downward sloping diagonal array and display said ten thousands sticks overlapping from right to left until said ten thousands sticks are in a vertical array forming a hundred thousands slab.
16. The calculator of claim 14 wherein: a) each of said bead tokens has a base with a width; and b) said permanent digital memory comprises digital instructions to cause said digital processor to execute the steps of: i) prior to said display of said workspace area:
1) determine a total number of columns required to be displayed and derived value cards to be calculated during the course of calculating a solution to said arithmetic problem;
2) determine the maximum number of said bead tokens to be
displayed on said derived value cards during the course of said solution to said arithmetic problem; and
3) adjust the width of said digit cards to be displayed in each column to be equal to or greater than said maximum number of tokens to be displayed on said derived value cards in each column times the width of said bases of said bead tokens for each column.
17. The calculator of claim 16 wherein: a) said display has a width; and b) said widths of said derived value cards are proportionally scaled such that all derived value cards will fit within said width of said display.
18. The calculator of claim 16 wherein: a) each base of said bead tokens has an upper edge; and b) one or more of said bead tokens is presented on a digit card with said upper edge aligned with a top to said token area.
19. The calculator of claim 8 wherein: prior to said display of said derived value card in said holding area, an equation is presented in said equals bar area showing a calculation of said derived value from said first digit and said second digit.
PCT/US2017/028520 2016-04-21 2017-04-20 Digit card calculator WO2017184812A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/093,673 US10559224B2 (en) 2016-04-21 2017-04-20 Digit card calculator
US15/713,852 US10191886B2 (en) 2016-04-21 2017-09-25 Gesture controlled calculator

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US201662325593P 2016-04-21 2016-04-21
US62/325,593 2016-04-21
US29/563,484 2016-05-05
US29/563,489 2016-05-05
US29/563,484 USD805526S1 (en) 2016-05-05 2016-05-05 Display screen portion with animated graphical user interface
US29/563,489 USD805527S1 (en) 2016-05-05 2016-05-05 Display screen portion with animated graphical user interface
US201662416835P 2016-11-03 2016-11-03
US62/416,835 2016-11-03
US29/592,030 USD837806S1 (en) 2017-01-26 2017-01-26 Display screen portion with graphical user interface
US29/592,030 2017-01-26

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
US29/563,484 Continuation-In-Part USD805526S1 (en) 2016-04-21 2016-05-05 Display screen portion with animated graphical user interface
US29/592,030 Continuation-In-Part USD837806S1 (en) 2016-04-21 2017-01-26 Display screen portion with graphical user interface

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/713,852 Continuation-In-Part US10191886B2 (en) 2016-04-21 2017-09-25 Gesture controlled calculator

Publications (1)

Publication Number Publication Date
WO2017184812A1 true WO2017184812A1 (en) 2017-10-26

Family

ID=60116413

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2017/028520 WO2017184812A1 (en) 2016-04-21 2017-04-20 Digit card calculator

Country Status (1)

Country Link
WO (1) WO2017184812A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242176A (en) * 2004-02-27 2005-09-08 Joho Kaken:Kk Computer for learning, description display method of computer for learning, description display program of computer for learning and computation system for learning
US20060024649A1 (en) * 2004-07-30 2006-02-02 Vernon David H Handheld math problem solving device
US20070218433A1 (en) * 2006-03-14 2007-09-20 Apolonia Vanova Method of teaching arithmetic
KR101071969B1 (en) * 2011-08-05 2011-10-11 박향예 Dunoero multi-training display apparatus
KR101462091B1 (en) * 2014-04-15 2014-12-09 주식회사 소니스트 Studying machine for four foundamental arthmetic operations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242176A (en) * 2004-02-27 2005-09-08 Joho Kaken:Kk Computer for learning, description display method of computer for learning, description display program of computer for learning and computation system for learning
US20060024649A1 (en) * 2004-07-30 2006-02-02 Vernon David H Handheld math problem solving device
US20070218433A1 (en) * 2006-03-14 2007-09-20 Apolonia Vanova Method of teaching arithmetic
KR101071969B1 (en) * 2011-08-05 2011-10-11 박향예 Dunoero multi-training display apparatus
KR101462091B1 (en) * 2014-04-15 2014-12-09 주식회사 소니스트 Studying machine for four foundamental arthmetic operations

Similar Documents

Publication Publication Date Title
US10559224B2 (en) Digit card calculator
US10191886B2 (en) Gesture controlled calculator
EP2659347B1 (en) Method for moving object between pages and interface apparatus
JP2012521603A (en) Virtual keyboard with slider button
CN107273027A (en) Image display device and method for displaying image
EP2991742B1 (en) Mobile device game interface
JP5229257B2 (en) Display control processing device, display control processing method, and display control processing program
GB2492709A (en) System for displaying a sequence of cards to open activities on an electronic device
Davidson et al. Extending 2D object arrangement with pressure-sensitive layering cues
KR20160064375A (en) Puzzle game system and method
WO2014045676A1 (en) Puzzle game program and computer
JP7020127B2 (en) Programming support equipment, programming support methods, and programs
WO2017184812A1 (en) Digit card calculator
US20160062586A1 (en) Overlap-free positioning of graphical objects, in particular for knowledge quantification
JP5747688B2 (en) Computer apparatus and program
JP2016033825A (en) Electronic book program, electronic book device and method
JP5395387B2 (en) Puzzle game program, puzzle game apparatus, puzzle game system, and game control method
Sapio Unity UI Cookbook
Blaskó et al. Evaluation of an eyes-free cursorless numeric entry system for wearable computers
JP2015097583A (en) Game device with touch panel, its control method and program
KR102631440B1 (en) Apparatus and method for providing puzzle service based on korean alphabet
KR20200081718A (en) Method and apparatus for recognizing character based on hologram
JP7427635B2 (en) Information processing method, program, information processing device
JP5965212B2 (en) Portable information device, character input method, character input program, and program recording medium
KR102668019B1 (en) Improved touch detection selection

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17786607

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17786607

Country of ref document: EP

Kind code of ref document: A1