From b213f5eb98c8d0a49015878892adbf578f152540 Mon Sep 17 00:00:00 2001 From: Mary Fries Date: Thu, 23 Sep 2021 00:25:18 -0400 Subject: [PATCH 1/8] 1.5.3 - reviewable version --- .../img/U1/lab05/729-hex-reporting.png | Bin 0 -> 21738 bytes .../U1/L5/01-numbers-computers.html | 12 +- .../U1/L5/02-bits-electricity.html | 2 + .../U1/L5/03-hex-rgb-colors.html | 474 ++++-------------- .../U1/L5/04-secret-messages.html | 2 +- .../student-pages/U1/L5/05-caesar-cipher.html | 6 +- .../U1/05-storing-securing-data.html | 140 +++++- topic/middle-school/1-functions-data.topic | 2 +- 8 files changed, 226 insertions(+), 412 deletions(-) create mode 100644 middle-school/img/U1/lab05/729-hex-reporting.png diff --git a/middle-school/img/U1/lab05/729-hex-reporting.png b/middle-school/img/U1/lab05/729-hex-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..ddaf357febbe3215d920b47b16c4e4545673c61e GIT binary patch literal 21738 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 Systems for Humans vs. Machines

10s place
1s place

- The number 239 is equal to (2 × 100) + (3 × 10) + (9 × 1). You could write it in Snap! like this to show how base 10 works:
+ The number 239 is equal to (2 × 100) + (3 × 10) + (9 × 1). You could write it in Snap! like this:
((2 × 100) + (3 × 10)) + (9 × 1) reporting 239 @@ -90,7 +90,7 @@

Numbers Systems for Humans vs. Machines

: Binary Numerals

A binary numeral is part of the base 2 system.

-

In base 2, there are twp digits (0-1), and each place is worth twice times as much as the place to its right.

+

In base 2, there are two digits (0-1), and each place is worth twice times as much as the place to its right.

For example, consider the binary numeral 1010...

@@ -117,20 +117,20 @@

Numbers Systems for Humans vs. Machines

place values in decimal 3761: 3 1000's 7 100's 6 10's 1 1's - In base 10 notation, each place value represents a power of ten: the units place (100 = 1), the tens place (101 = 10), the hundreds place (102 = 100), the thousands place (103 = 1000), etc. So, for example:

-

3761   =   3 × 103  +  7 × 102  +  6 × 101  +  1 × 100 + In base 10 notation, each place value represents a power of ten: the units place (100 = 1), the tens place (101 = 10), the hundreds place (102 = 100), the thousands place (103 = 1000), etc. So, for example: +

+

3761   =   3 × 103  +  7 × 102  +  6 × 101  +  1 × 100

place values in binary 10010: 1 16's 0 8's 0 4's 1 2's 0 1's Base 2 uses the same idea but with powers of two instead of powers of ten. Binary place values represent the units place (20 = 1), the twos place (21 = 2), the fours place (22 = 4), the eights place (23 = 8), the sixteens place (24 = 16), etc. So, for example:

100102   =   1 × 24  +  0 × 23  +  0 × 22  +  1 × 21  +  0 × 20   =   16  +  2   =   1810

- -
+
I think the above "reading" exercise should include a few more numbers and the below ITIT needs more support for writing in binary. --MF, 9/22/21
  1. Try writing a number in binary and see if a friend can convert back to your original number. If they have trouble, go through both calculations (yours and theirs) together. If they succeed in finding your original number, try a bigger number!
  2. diff --git a/middle-school/student-pages/U1/L5/02-bits-electricity.html b/middle-school/student-pages/U1/L5/02-bits-electricity.html index 864edf62b1..fb1083b42e 100644 --- a/middle-school/student-pages/U1/L5/02-bits-electricity.html +++ b/middle-school/student-pages/U1/L5/02-bits-electricity.html @@ -8,6 +8,8 @@

    Bits and Electricity

    +
    In the future, Dan would like us to reconsider using arrows at all, the ordering of inputs and outputs in title text, and the placement of the input slot. --MF, 9/21/21
    +
    In this activity, you will use Snap! to convert to binary and learn how data is stored in a computer.

    Storing Numbers in Bits

    diff --git a/middle-school/student-pages/U1/L5/03-hex-rgb-colors.html b/middle-school/student-pages/U1/L5/03-hex-rgb-colors.html index 3c3aa0f835..ae9e4b661b 100644 --- a/middle-school/student-pages/U1/L5/03-hex-rgb-colors.html +++ b/middle-school/student-pages/U1/L5/03-hex-rgb-colors.html @@ -3,78 +3,25 @@ - Unit 1 Lab 5: Storing and Securing Data, Activity 5 + + + + Unit 1 Lab 5: Storing and Securing Data, Activity 3

    Hexadecimal Numerals and RGB Colors

    -
    In this activity, you
    - -

    Another Number System Used with Computers

    - -

    Typing long strings of ones and zeros is inconvenient and prone to error. A more efficient method is to use hexadecimal (base 16). One hex digit represents any whole number between 0 an 15. So eight digits of binary can be translated into two digits of hexadecimal, which is much easier and much less error-prone for humans.

    -
    Mary should fix up the CSS in these tables some day. --MF, 12/18/17
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Eight bits in base two...
    2726252423222120
    128s place64s place32s place16s placeeights placefours placetwos placeones place
    ...is two digits in base 16.
    161160
    sixteens placeones place

    - - - - - - - - - - - - - - - - - - -
    For example: 12110 = 011110012 = 7916
    01111001
    79
    - - -

    +

    In this activity, you will learn another number system used with computers that is commonly used for colors.
    + +

    An Easier Computer Number System to Type

    +
    The prefix hexa- means "six" like the word hexagon (a polygon with 6 sides), and since decimal is a base 10 system, hexadecimal is a base 16 system.
    +

    You've learned about decimal numerals (the base 10 system with ten digits, 0-9, that uses powers of ten for place values) and binary numerals (the base 2 system with two digits, 0 and 1, that uses powers of two for place values).

    +

    Another common number system used with computers is hexadecimal...

    + +
    : Hexadecimal Numerals
    - Place value notation uses only one digit in each place. We need to represent 0 through 15, and we have digits for 0-9, so we choose A-F for the remaining values: - + The letters A-F are used for the values 10-15: +
    @@ -93,357 +40,108 @@

    Another Number System Used with Computers

    10 11
    - In base 16, there are sixteen digits (0-9 and A-F), and each place is worth sixteen times the place to its right. One hex digit has 16 possible values, the equivalent of four binary digits (bits).
    - place values in hexadecimal 3B7: 3 256's 11 16's 7 1's

    - -
    Mary, you reduced this katex with a style tag (not proper CSS) because you couldn't figure out how to make it work with CSS. Fix this later. --MF, 12/18/17
    -

    This stands for 3 \times 256 + 11\times 16 +7\times 1 or 951.

    - - - -
    -
      -
    1. - Talk with Your Partner - - Watch this Hexadecimal and Binary Timer Snap! program run. The top row counts in binary, the middle in decimal, the bottom in hex. Write a description of the hex counter's behavior.
      - Hexadecimal timer
    2. -
    +

    A hexadecimal numeral is part of the base 16 system.

    +

    In base 16, there are sixteen digits (0-9 and A-F), and each place is worth sixteen times as much as the place to its right.

    +
    +

    For example, consider the hexadecimal numeral 2D9...

    +
    +
    +
    2
    +
    D
    +
    9
    +
    256s place
    +
    16s place
    +
    1s place
    +

    + We can figure out the decimal equivalent by adding up the 2 two-hundred-fifty-sixes, the D (that is, 13) sixteens, and the 9 ones: (2 × 256) + (13 × 16) + (9 × 1) = 729. + You could write it in Snap! like this:
    + (((2 × 256) + (13 × 16)) + (9 × 1) reporting 729 +
    +
    -

    Reading Hexadecimal

    -
    -

    - - Base 16 uses powers of sixteen instead of powers of two or ten. Place values in hexadecimal represent the units place (160 = 1), the sixteens place (161 = 16), the two hundred fifty-sixes place (162 = 256), the four thousand ninety-sixes place (163 = 4096), etc. So, for example: -

    -

    3B16   =   3 × 161  +  11 × 160   =   48  +  11   =   5910

    -
    - - - -
    -

    To translate from hexadecimal (for example, 7B316) to base 10, first, write the digits on paper. Then write out the hexadecimal place values: start at the right with 1, then write 16 in the next place to the left, then write 256 (which is 162), and so on. Each new place will be worth 16 times the one to its right.

    -
    - Remember: A-F cover the digits after 9: - - - - - - - - - - - - - - - - - -
    101112131415
    ABCDEF
    -
    - - - - - - - - - - - - - - -
    7B3
    256161
    - right-to-left arrow -
    -

    So, 7B316 = (7 × 256) + (11 × 16) + (3 × 1) = 1792 + 176 + 3 = 197110.

    -
    -
    -
      -
      - FF16
      - = (15 × 161 + 15 × 160)10
      - = (15 × 16 + 15)10
      - = 25510 -
      -
    1. Translate these hexadecimal numerals into base 10 notation: +
        +
      1. Talk with Your PartnerFind the decimal representation for these hexadecimal numerals:
          -
        1. AF16
        2. -
        3. 5D16
        4. -
        5. 1816
        6. -
        7. 3E816
        8. -
        -
        A numeral such as 11 means eleven in the usual decimal notation, or three if it is a binary numeral, or seventeen in hexadecimal notation. The only way you know that the "18" in part (c) above doesn't mean eighteen is that subscript "16" means hexadecimal.
        -
      2. -
      -
    - - -

    Writing Hexadecimal

    -
    -

    To translate from base 10 (for example, 29910) to base 16, first write out the hexadecimal place values by multiplying by 16 moving left from the units place until you get to a value larger than your number (4096 for this example). Then think, "My number is smaller than 4096, so I leave that place blank. But I can subtract two hundred fifty-six once, so I write a 1 there, and there's 43 left. Now, I can subtract two sixteens, and there's 11 left. And 11 is B in hex."

    - - - - - -
    299
    43
    11
    0
    - - - - - - - - - - - - - - - - -
    - right-to-left arrow -
    4096256161
     12B
    -

    Now, read the number off: 12B16 = 29910.

    -
    - - - -
    -
      -
    1. Translate these decimal numerals to hexadecimal notation: -
        -
      1. 59
      2. -
      3. 144
      4. -
      5. 229
      6. -
      7. 316
      8. +
      9. C0
      10. +
      11. 96
      12. +
      13. 3F
    2. +
      + Need help reading hexadecimal? +
      +

      + place values in hexadecimal 3B7: 3 256's 11 16's 7 1's + Base 16 uses powers of sixteen instead of powers of two or ten. Place values in hexadecimal represent the units place (160 = 1), the sixteens place (161 = 16), the two-hundred-fifty-sixes place (162 = 256), etc. So, for example: +

      +

      3B716   =   3 × 162  +  11 × 161  +  7 × 160   =   768  +  176  +  7   =   95110

      +
      +
    + -

    Notice that the algorithms for converting between binary and decimal are the same as the algorithms for converting between hexadecimal and decimal. These algorithms can be used to convert to and from any base.

    - -
    -
      +

      Hexadecimal vs. Binary

      +

      Computers store information in binary as on and off signals (ones and zeros), but actually typing long strings of ones and zeros is inconvenient and prone to typos. Hexadecimal (also known as "hex") requires less typing and is easier to type correctly.

      +

      Since 16 is a power of 2 (24 = 16), 4 bits fit inside one hex digit. For example, the binary numeral 1101 is (1 × 8) + (1 × 4) + (0 × 2) + (0 × 1) = 13 in decimal or just D in hex.

      + +
      +
      1. - Talk with Your Partner - This algorithm runs into a problem after base 36. What's the problem and what's the solution? -
      2. -
      3. Convert 29910 to base 7.
      4. -
      -
      - -
      In the future, consider moving 8.3.3 and 8.3.4 here as TIF and removing from 8.3. --MF, 12/1/17
      - - -
      BJC page 2 (currently cut):
      - -

      More About Hexadecimal

      -
      -

      BH: SCRAP. Two pages on... hexadecimal??

      -
      - -
      There is commented out content on this page that probably could be removed. --MF, 2/26/18
      - -

      We can pack four bits (binary digits) into one hexadecimal digit because 16 is a power of two (16 = 24). So, a group of four bits represents a value between 0 and 15, and one hex digit also represents values from 0-15 (using 0-9 and A-F). This makes it easier to translate between binary and hex than between other bases.

      -

      Hexadecimal is an abstraction over binary: we use hexadecimal to abbreviate binary in a more readable way.

      -
      -

      You can create a table like this whenever you need one.

      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      binaryhex
      00002016
      00012116
      00102216
      00112316
      01002416
      01012516
      01102616
      01112716
      10002816
      10012916
      10102A16
      10112B16
      11002C16
      11012D16
      11102E16
      11112F16
      -
      -

      Translating between Binary and Hex

      -
      -

      To translate a binary numeral (for example, 11010111012) to hexadecimal, start by splitting it into groups of four bits, from right to left (like this: 11 0101 1101).

      -

      Then determine the value of each group and write the corresponding hex digit (look it up on the table at right).

      -

      For example: 112 = 316, 01012 = 516, and 1101 = D16. So, 11010111012 = 35D16.

      -
      -
      -
        -
      1. Translate these binary numerals to hexadecimal notation: -
          -
        1. 1110112
        2. -
        3. 11011112
        4. -
        5. 101100012
        6. -
        + Watch this counter. The top row shows binary, the middle shows decimal, and the bottom shows hex.
        + Hexadecimal timer
      -
      - +
    -
    -

    To translate a hex numeral (like 4E116) to binary, write each hex digit as a group of four bits (including any leading zeros).

    -

    For example: 416 = 01002, E16 = 11102, and 116 = 00012. So, 4E116 = 0100111000012 or just 100111000012 because we can drop the leading zero once the digits are all in their places.

    -
    -
    -
    In practice, you rarely change number bases by hand, except of course on the AP exam. Once you understand the basic principles of these representations, it's perfectly fine to use a Binary to Decimal to Hexadecimal Converter.
    -
      -
    1. Translate these hexadecimal numerals to binary notation: +
      +
        +
      1. Talk with Your PartnerWrite a description of the counter's behavior.
      2. +
      3. Find the hexadecimal representation for these decimal numerals:
          -
        1. 1816
        2. -
        3. 5D16
        4. -
        5. F816
        6. +
          2F16, B916, 11216
          +
        7. 47
        8. +
        9. 185
        10. +
        11. 290
      -
      - - - -

      Hexadecimal Colors

      -
      -

      A pixel is a single dot of color on the computer screen. It's short for "picture element."

      -

      Computers have several ways of representing color depending on the purpose. For example, three-color RGB (red, green, blue) is used for screen display, and four-color CMYK (cyan, magenta, yellow, black) is used for printing. On a computer screen, each pixel that makes up a picture is assigned an RGB color code that defined by the intensity of red, green, and blue in that color. These three color intensities each range from 0 to 255 (one byte is used for each of the three colors), which is 00 to FF in hex notation.

      -

      If (R, G, B) = (128, 0, 255), the color is purple: some red and as much blue as possible, but no green at all. If all three colors are as bright as possible (all are 255), we see white; if they are as dark as possible (all are 0), we see black. Instead of writing (255, 255, 255) for white and (128, 0, 255) for purple, we often use hex notation: FFFFFF and 8000FF. And this color is red 255, green 127, and blue 0, which is FF7F00 in hex.

      -
      - Learn more about color codes. -
      -

      Sometimes a fourth number is used to represent the color transparency, like the ghost effect you used in your very first BJC project on Unit 1 Lab 1 Page 3: Make It a Game.

      -

      RGB works well for lights, such as the tiny lights (pixels) in your computer screen, so it is great for computers. But it's not good for printers: no combination of Red, Green and Blue sprayed on paper would quite make black, zero of each would leave the paper white (not black), and artists know that mixing red and green paint does not make yellow (but that's how you make yellow with light: FFFF00). Ink or paint colors are measured in CMYK: Cyan, Magenta, Yellow, and Black. And some colors such as brown and brick-red (darker than pure red) are hard to figure out in RGB units, even for display in lights. Another color system is called HSB, for hue, saturation, brightness.

      -

      Snap!'s system is similar to HSB. "Pen color" is hue (location on the rainbow), and "pen shade" is more or less saturation (zero means black, 100 means full rainbow color).

      -
      -
      - + + +

      Hexadecimal and RGB Colors

      +

      The three color values of RGB pixels each range from 0 to 255 because eight bits are used for each of the three colors and 28 = 256. But in hexadecimal, 162 = 256, so it only takes two hex digits to represent each of the RGB color values (0 to 255 in decimal is 00 to FF in hex).

      +

      As you've seen, if all three color values are as bright as possible, we see white, and if they are as dark as possible, we see black. Instead of writing (255, 255, 255) for white and (0, 0, 0) for black, we often use hex notation: FFFFFF and 000000.

      + +

      Also (128, 0, 255) = 8000FF is the color is purple: some red (128 = 8016) and as much blue as possible (255 = FF16), but no green at all (0 = 0016). And this color is red 255, green 127, and blue 0, which is FF7F00 in hex.

      -
        +
        1. Represent these colors in hex notation:
            -
          1. red 0, green 149, and blue 235
          2. -
          3. red 128, green 90, and blue 0
          4. -
          5. red 163, green 0, and blue 84
          6. +
          7. (10,120,255)
          8. +
          9. (220, 10, 220)
          10. +
          11. (60, 255, 60)
        2. -
        3. Predict what this RGB color will look like based on its values: red 145, green 0, blue 226.
        4. -
        5. Predict what this hex RGB color will look like: 04FF61.
        6. -
        7. Another way to represent colors is by their names. For example, the color 4B0082 is called Indigo and the color 8B4513 is called SaddleBrown. Compare these two representations (hex RGB codes vs. color names) in terms of: space required, ease of understanding, and ease of use.
        8. -
        9. Why do we use binary, decimal, and hexadecimal? Why not just one?
        10. -
        11. In earlier units, we used abstraction to describe creating custom blocks and abstract data types. Here, we use abstraction to talk about hexadecimal vs. binary. How can abstraction describe these very different things? What do these things have in common?
      -
        -
      1. Explore this RGB/HEX color converter: http://hex.colorrrs.com/
      2. -
      3. Play with this Interactive Color Wheel
      4. -
      5. Read more about RGB colors and hexadecimal notation.
      6. -
      -
      -
      They have not seen the Libraries page referenced in this TIF. --MF, 6/13/19
      -
      -
        -
      1. -
        As in all Snap! blocks, the numeric input slots take values represented in base 10 (not hex). Each color component has a value between 0 and 255.
        - Load the Snap! RGB library into one of your projects to explore RGB color further. In the File menu, choose "Libraries..." and then choose "Set RGB or HSV pen color" as shown on the Libraries page.
        - This will give you a new "Pen" block: - set pen color to r: (255) g: (0) b: (0)
        - Snap! 'Import library' dialog box highlighting 'Set RGB or HSV pen color' library -
      2. +
          +
        1. + Learn more about hex notation for RGB colors: + +
      - -
      In this activity, you
      +
      In this activity, you learned about hexadecimal notation, how it relates to binary, and how it is used to represent RGB color values.
      diff --git a/middle-school/student-pages/U1/L5/04-secret-messages.html b/middle-school/student-pages/U1/L5/04-secret-messages.html index 54c461f622..5f702b6b91 100644 --- a/middle-school/student-pages/U1/L5/04-secret-messages.html +++ b/middle-school/student-pages/U1/L5/04-secret-messages.html @@ -3,7 +3,7 @@ - Unit 1 Lab 5: Storing and Securing Data, Activity 3 + Unit 1 Lab 5: Storing and Securing Data, Activity 4 diff --git a/middle-school/student-pages/U1/L5/05-caesar-cipher.html b/middle-school/student-pages/U1/L5/05-caesar-cipher.html index 296f6c74be..28fd20d9f2 100644 --- a/middle-school/student-pages/U1/L5/05-caesar-cipher.html +++ b/middle-school/student-pages/U1/L5/05-caesar-cipher.html @@ -3,15 +3,17 @@ - Unit 1 Lab 5: Storing and Securing Data, Activity 4 + Unit 1 Lab 5: Storing and Securing Data, Activity 5

      Programming a Caesar Cipher

      +
      +
      -
        +
        1. Talk with Your Partner Describe an algorithm for decoding a message that was created with a shift cipher.
      diff --git a/middle-school/teaching-guide/U1/05-storing-securing-data.html b/middle-school/teaching-guide/U1/05-storing-securing-data.html index 0e1fede3f8..e7b8e572be 100644 --- a/middle-school/teaching-guide/U1/05-storing-securing-data.html +++ b/middle-school/teaching-guide/U1/05-storing-securing-data.html @@ -18,9 +18,9 @@

      Pacing

    2. Daily Activity: Computing in the News 5–15 minutes each day
    3. Activity 1: Numbers and Computers: 10–65 minutes
    4. Activity 2: Bits and Electricity: 15–50 minutes
    5. +
    6. (Optional) Activity 3: Hexadecimal Numerals and RGB Colors: 20–55 minutes
    7. Additional Lab 5 activities coming soon....
      @@ -134,6 +134,13 @@

      Activity 2: Bits and Electricity. 

    8. Tips:
        +
      • + For additional resources on binary... + +
      • If you have time after students answer the questions on the student activity page in their pairs, you may wish to discuss the various "Talk with Your Partner" questions as a class:
          @@ -155,6 +162,7 @@

          Activity 2: Bits and Electricity. 

      • +
      • Be mindful not to say "binary number" or "decimal number." Binary and decimal are notations, and the instances of those notations are numerals, not numbers. It's the same number no matter how it's represented.
    9. @@ -253,21 +261,86 @@

      Activity 2: Bits and Electricity. 

    -
    Additional Lab 5 activities coming soon....
    -
    - Links to the unfinished student pages...
      -
    • Hexadecimal Numerals and RGB Colors (mostly just a copy of CSP version so far; will be optional here)
    • -
    • Secret Messages (mostly finished for middle school)
    • -
    • Programming a Caesar Cipher (mostly just a copy of CSP version so far)
    • + + ↑ Back to Top +

      Activity 3: Hexadecimal Numerals and RGB Colors. 

      +
      +
        +
      • Materials: Hexadecimal Numerals and RGB Colors
      • +
      • + Prepare: +
          +
        • This activity is optional, review it and decide whether you will use it with your students.
        • +
        • If you are not familiar with hexadecimal carefully read and work through the exercises on the student activity page before class.
        • +
        +
      • +
      • + Learning Goals: +
          +
        • Understand the basics of reading hexadecimal numerals.
        • +
        • Appreciate how RGB colors are written with hexadecimal.
        • +
        +
      • +
      • + Activity Plan: +
          +
        • An Easier Computer Number System to Type: Building on their understanding of binary representation students learn about hexadecimal number representation and convert several hex numbers to decimal. (10–20 minutes)
        • +
        • Hexadecimal vs. Binary. Students learn about the relationship between binary and hex and watch an animation of a counter counting in binary, decimal, and hexadecimal. Optionally, you may choose to have students write out their observations about the counter and/or translate decimal into hex. (5–20 minutes)
        • +
        • Hexadecimal and RGB Colors. Students learn about RGB color values can be represented with hex and translate several RGB colors into hex. (5–15 minutes)
        • + +
        +
      • +
      • + Tips: + +
      • +
      • + Standards: +
          +
        • 2-DA-07: Represent data using multiple encoding schemes.
        • +
        +
      • +
      • + Solutions +
        +
          +
        • + Find the decimal representation for these hexadecimal numerals: +
            +
          • C016 = 192
          • +
          • 9616 = 150
          • +
          • 3F16 = 63
          • +
          +
        • +
        • + Find the hexadecimal representation for these decimal numerals: +
            +
          • 47 = 2F16
          • +
          • 185 = B916
          • +
          • 290 = 11216
          • +
          +
        • +
        • Represent these colors in hex notation: +
            +
          1. (10,120,255)= 0A78FF
          2. +
          3. (220, 10, 220) = DC0ADC
          4. +
          5. (60, 255, 60) = 3CFF3C
          6. +
          +
        • +
        +
        +
      - - - - +
    + + + ↑ Back to Top +

    Activity 5: Programming a Caesar Cipher. 

    +
    +
      +
    • Materials: Programming a Caesar Cipher student page
    • +
    • + Prepare: +
        +
      • +
      +
    • +
    • + Learning Goals: +
        +
      • +
      +
    • +
    • + Activity Plan: +
        +
      • +
      +
    • +
    • + Tips: +
        +
      • +
      +
    • +
    • + Standards: +
        +
      • 2-NI-06: Apply multiple methods of encryption to model the secure transmission of information.
      • +
      +
    • +
    +
    +
    + RGB pixel, red: (85) green: (170) blue: (255) + +
  3. + A picture of a list means that the input should be a list, such as: + + draw pixel 'list input slot' +
  4. +
  5. + A long rectangular slot means that the input should be a text, such as: + + fancy () +
  6. +
  7. + A short rectangular slot slot means that the input can be anything, such as: + join +
  8. + + While  binary of decimal (), decimal of binary (), and hex of binary () all take digits 0-9 as input (or just 0 and 1), the binary of hex () block takes numbers that can include letters as digits, so that block needs an a more flexible slot for the hex input to allow for numbers that might include letters as digits. +

    +
- -

Hexadecimal and RGB Colors

The three color values of RGB pixels each range from 0 to 255 because eight bits are used for each of the three colors and 28 = 256. But in hexadecimal, 162 = 256, so it only takes two hex digits to represent each of the RGB color values (0 to 255 in decimal is 00 to FF in hex).

From 25eccc0938731ed739654d31df217febf3967778 Mon Sep 17 00:00:00 2001 From: Mary Fries Date: Sat, 25 Sep 2021 18:31:45 -0400 Subject: [PATCH 6/8] 1.5.5 - in progress --- .../lab05/decoding-i-love-bjc-reporting.png | Bin 0 -> 18027 bytes ...sage-i-love-bjc-shifted-by-3-reporting.png | Bin 0 -> 18175 bytes ...code(unicode-BJC+3)as-letter-reporting.png | Bin 0 -> 30586 bytes .../img/U1/lab05/unicode-66-reporting.png | Bin 0 -> 11990 bytes .../img/U1/lab05/unicode-B-reporting.png | Bin 0 -> 9893 bytes .../img/U1/lab05/unicode-BJC+3-reporting.png | Bin 0 -> 25673 bytes .../img/U1/lab05/unicode-BJC-reporting.png | Bin 0 -> 22264 bytes .../student-pages/U1/L5/05-caesar-cipher.html | 189 ++++++++++++++---- .../U1/05-storing-securing-data.html | 2 +- 9 files changed, 155 insertions(+), 36 deletions(-) create mode 100644 middle-school/img/U1/lab05/decoding-i-love-bjc-reporting.png create mode 100644 middle-school/img/U1/lab05/message-i-love-bjc-shifted-by-3-reporting.png create mode 100644 middle-school/img/U1/lab05/unicode(unicode-BJC+3)as-letter-reporting.png create mode 100644 middle-school/img/U1/lab05/unicode-66-reporting.png create mode 100644 middle-school/img/U1/lab05/unicode-B-reporting.png create mode 100644 middle-school/img/U1/lab05/unicode-BJC+3-reporting.png create mode 100644 middle-school/img/U1/lab05/unicode-BJC-reporting.png diff --git a/middle-school/img/U1/lab05/decoding-i-love-bjc-reporting.png b/middle-school/img/U1/lab05/decoding-i-love-bjc-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..72ac517f1d50f4c2d8480e59d4e63f6b896e1cab GIT binary patch literal 18027 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 literal 0 HcmV?d00001 diff --git a/middle-school/img/U1/lab05/message-i-love-bjc-shifted-by-3-reporting.png b/middle-school/img/U1/lab05/message-i-love-bjc-shifted-by-3-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..8923fd74c8757d328bc9e3bc3944a5b2ae6b21dd GIT binary patch literal 18175 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 M07*qoM6N<$f^7FjD*ylh literal 0 HcmV?d00001 diff --git a/middle-school/img/U1/lab05/unicode(unicode-BJC+3)as-letter-reporting.png b/middle-school/img/U1/lab05/unicode(unicode-BJC+3)as-letter-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..f1c6245571a9dc94dfa285f8de201c57771bb7ac GIT binary patch literal 30586 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 literal 0 HcmV?d00001 diff --git a/middle-school/img/U1/lab05/unicode-66-reporting.png b/middle-school/img/U1/lab05/unicode-66-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..c5dd75df91d062e254d0837b4b5560b89fbbd912 GIT binary patch literal 11990 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 literal 0 HcmV?d00001 diff --git a/middle-school/img/U1/lab05/unicode-BJC+3-reporting.png b/middle-school/img/U1/lab05/unicode-BJC+3-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..051bd1a1bcf2d0fdb74474d5dd376d4781aae6b8 GIT binary patch literal 25673 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 literal 0 HcmV?d00001 diff --git a/middle-school/img/U1/lab05/unicode-BJC-reporting.png b/middle-school/img/U1/lab05/unicode-BJC-reporting.png new file mode 100644 index 0000000000000000000000000000000000000000..0547c53b7cc0167db5c9802d8dd46e49acc0e6ae GIT binary patch literal 22264 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%0Ax>Xa2HGd!90 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 P00000NkvXXu0mjf%>Ixp literal 0 HcmV?d00001 diff --git a/middle-school/student-pages/U1/L5/05-caesar-cipher.html b/middle-school/student-pages/U1/L5/05-caesar-cipher.html index 61ba242e41..962f35ed19 100644 --- a/middle-school/student-pages/U1/L5/05-caesar-cipher.html +++ b/middle-school/student-pages/U1/L5/05-caesar-cipher.html @@ -7,54 +7,155 @@ -

Programming a Caesar Cipher

-
In this activity, you will
- +

Programming a Caesar Cipher

+ In this activity, you will write a program to encode and decode messages using a Caesar (shift) cipher.
+ message ('I love BJC!') shifted by (3) reporting 'L#oryh#EMF$' + message ('L#oryh#EMF$') shifted by (-3) reporting 'I love BJC!' +
+ + +

Exploring Unicode

+

To shift the letters in a message, you need a way to add the shift value to each letter. Computers store characters (letters, digits, symbols, etc.) as numbers called Unicode. So you can change the characters of a message into Unicode, add to make the shift, and then change the Unicode back into letters.

+

+ This table shows the Unicode for some familiar characters:
Unicode Table

The unicode of block reports the number that is used for a particular character:
- unicode of (a) reporting '97'
+ unicode of (B) reporting '66' +

+

The unicode as letter block reports the character that a given Unicode number represents:
- unicode (65) as letter reporting 'A' + unicode (66) as letter reporting 'B'

    -
  1. Experiment with the unicode of and unicode as letter blocks. Try changing a word into Unicode, telling the Unicode to a friend, and then having them change it back into a word.
  2. +
  3. Open this Caesar Cipher project, and save it to your account.
  4. +
  5. Experiment with the unicode of and unicode as letter blocks. Write down the Unicode numbers for one word, give them to another student, and translate someone else's Unicode back into a word.
  6. +
+
+ + +

Working with Lists

+

+ If you type more than one character into the input slot of unicode of, it will report a list of the Unicode characters of those letters:
+ unicode of (BJC) reporting the list {66, 74, 67} +

+

+ You can shift all the letters in that list at once by using the list as the input to the () + () block:
+ (unicode of (BJC)) + (3) reporting the list {69, 77, 70} +

+

+ The unicode as letter block can also accept a list as input. It will report a list of the characters for those Unicode numbers:
+ unicode (unicode of (BJC) + 3) as letter reporting the list {B, J, C} + +

+
+
    +
  1. Use the Unicode blocks to encode and decode a word: +
      +
    1. Type a whole word into unicode of.
    2. +
    3. Use the () + () block to shift the values.
    4. +
    5. Use unicode as letter to translate the shifted Unicode back into characters.
    6. +
    7. Then give your encoded message to another student. If they want a challenge, don't give them the shift value. If they don't want that challenge today, give them your shift value too.
    8. +
    9. Use the same Snap! blocks to decode someone else's encoded message. + +
    10. +
    +
  2. +
  3. + Talk with Your Partner + Discuss how you decoded the message you received, and listen to how other people decoded their message. +
      +
    • What parts of the process were the same and what parts were different?
    • +
    • What could you need to change to make a general process that will work for all mesages and shift values?
    • +
    +
  4. +
  5. +
    You learned how to create a new block that takes inputs on the Refining the Story page of the Super Short Stories lab.
    + Create a block that takes a message and a shift value as input and reports the same message shifted by that value.
    + message () shifted by () + +
  6. +
  7. Test it your block by encoding and decoding a few messages, and fix any problems.
  8. +
+
+

Joining Elements of a List

+

So, you can use unicode of to change a string of text into Unicode, and you can use unicode of letter to change a list of Unicode back into a list of characters, but you don't want your program to output a list of characters, you want it to output the translated message as a string of text.

+ + +
You used join in the Refining the Story activity of the Super Short Stories Lab.
+

+ You have used join to join text or characters into a single string of text.
+ join (random animal) (s) +

+

The join block looks like it only takes one or more individual items as input, but it can also take a list as input and join all the elements. + + ; you could type them in, or you could drag in blocks that report things you want to join together. But unicode as letter reports a single list with all the characters you'll want to join inside. So you need a way to combine all the characters in the list using join...

+ + +

How to Combine Elements of a List

+

You can use combine 'list input slot' using 'reporter input slot' to apply the join function to all the elements in a list.

+ + +

The combine 'list input slot' using 'reporter input slot' block takes two inputs: a list and an operation with two inputs, and it reports the result of combining all the elements in the input list using the input operation. For example, the expression below reports: 0 + 1 + 2.
+ combine (list {0, 1, 2}) with (()+()) reporting 3 +

+ +
+

You choose the operation, and combine performs that operation by combining all the items in the input list and then reports the result.

+

Notice that the function used to combine the list items always has two blank input slots. The keep block only needs one blank in its input function, but with combine, two are required.

+
+
+

Combine is a higher order function; it is a function that takes a function as input. You've seen another higher order function already: keep (in Unit 2 Lab 3).

+

+ Unlike keep, the combine function is only used with a few input functions. + Which functions? +

+

+ Combine is mostly used with only these functions:
+ + ×
+ and or
+ join join words
+ and the maximum of () () and minimum of () () blocks you've just written yourself. +

+

+ Why so few? +

+ The function has to be associative, meaning that it can't matter what order you group the items in. For example, addition is associative: (7 + 8) + 1 is the same as 7 + (8 + 1) (work it out yourself), but subtraction is not: (7 − 8) − 1 is different from 7 − (8 − 1). + So expressions like combine with (-) items of (list 7 8 1) would be ambiguous. +
+

+
+

+
+ +

Putting It All Together

+
+
    +
  1. Try changing a word into Unicode, telling the Unicode to a friend, and then having them change it back into a word.
  2. On paper, use a shift cipher to encrypt and decrypt a short message to get a feel for how this cipher works.
  3. Write a shift cipher procedure that works for any input text and any shift value.
  4. @@ -123,7 +224,25 @@

    Programming a Caesar Cipher

+
+
    +
  1. Talk with Your Partner Describe an algorithm for decoding a message that was created with a shift cipher.
  2. +
+
+
+ Add to TG +
    +
  1. + A simple substitution cipher is relatively easy to break because some letters are used more frequently than others. + +
  2. +
  3. Read "Secret Keys and One-Time Pads" (Blown to Bits pages 169-173) to learn about Vigenère ciphers and methods used during World War 2 and the Cold War.
  4. +
+
diff --git a/middle-school/teaching-guide/U1/05-storing-securing-data.html b/middle-school/teaching-guide/U1/05-storing-securing-data.html index 2814cdb213..e94760a7dc 100644 --- a/middle-school/teaching-guide/U1/05-storing-securing-data.html +++ b/middle-school/teaching-guide/U1/05-storing-securing-data.html @@ -395,7 +395,7 @@

Activity 5: Programming a Caesar Cipher.  Prepare:
  • From ece1adb1afe9dfcddd586d9b8f38b1a11a51a5fd Mon Sep 17 00:00:00 2001 From: Mary Fries Date: Sat, 25 Sep 2021 18:31:59 -0400 Subject: [PATCH 7/8] 1.3.2 - trivial edit --- middle-school/student-pages/U1/L3/02-visualizing-data.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/middle-school/student-pages/U1/L3/02-visualizing-data.html b/middle-school/student-pages/U1/L3/02-visualizing-data.html index efbca614dd..c44ac07821 100644 --- a/middle-school/student-pages/U1/L3/02-visualizing-data.html +++ b/middle-school/student-pages/U1/L3/02-visualizing-data.html @@ -18,7 +18,7 @@

    Visualizing Data

    Digitizing Your Data

      -
    1. Open this project in Snap! and save it to your account. (You'll need to log in if you aren't logged in already.)
    2. +
    3. Open this Visualizing Data project in Snap!, and save it to your account. (You'll need to log in if you aren't logged in already.)
    From a2613e93f45cf66a94e8b4121b2e9cd147908129 Mon Sep 17 00:00:00 2001 From: Mary Fries Date: Sun, 26 Sep 2021 23:43:31 -0400 Subject: [PATCH 8/8] 1.5.1 - XML updates --- middle-school/prog/numbers-bits-electricity.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/middle-school/prog/numbers-bits-electricity.xml b/middle-school/prog/numbers-bits-electricity.xml index 92e79bae0e..c4f9a685e8 100644 --- a/middle-school/prog/numbers-bits-electricity.xml +++ b/middle-school/prog/numbers-bits-electricity.xml @@ -1 +1 @@ -data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAABFRJREFUeF7t3b9L1AEYx/HHKRqiIeiiG/oHbKqlRYhmSaEljfRsS5SC9oYcukDFMEyHuNBsdlCncGlv9MdSS5uhmFCd1jf8DnJ4HHT3vXw+34d34/Hl+zzP5/MifzTUkSRJYvwhAacEOgDolDxj0wQACATXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/DAYgB1wQA6Bo/wwGIAdcEAOgaP8MBiAHXBADoGj/Dmwa4srxst7u7rdF/sjkyOmqTU1O2tLRkd3p7Gz73cHjYXk5Pt/05Ks1XAk0DfFup2INS6fjKy2fP2N7Bb9s/PEw/uz8wYG8qFTv53MlYGj2X9X35ip9tMwOcudZpG9/3bWrrS1sAZn0fleYrgcwA565fTQFObH5uC8Cs78tX/GzbEsCJRyPWU7yUptdTLNj2r6p93N6xP0li1a5bVn4929SX4Ha+j0rzlUBLAOeePLb+K8X00psXL9hu9cA+7e6lAL/d6LKnr2aaAtjO9+UrfrZtCWDtDyFZv2Se/GEl6/uoNF8JZAY4e/Q94N6+TW6153vArO/LV/xsmxlg5/lztlM9sK8/ftb9EDJUKllHg4xrfw1T+1zW91FpvhLIDPBff793Ws/lK362bRngh7W1uvRelMtWKBSOfxF99Dfbyupq3XMT4+NWLBb/y3NUmq8EWgZ4mCR1lw4NDqaf1f5LyGk/l6/42RaAGHBNAICu8TO8aYAb6+tWqVTseblcl977xcX0s7t9fba1uWnz8/P2bGys7rl3CwvpZ/337rX9OSrNVwJNA8zXeWyrngAA1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesfh4A1RsKvh8Agxesft5ffEH+xg4bv6kAAAAASUVORK5CYII= forward turn turnLeft setHeading doFaceTowards gotoXY doGotoObject doGlide changeXPosition setXPosition changeYPosition setYPosition bounceOffEdge xPosition yPosition direction doSwitchToCostume doWearNextCostume getCostumeIdx reportGetImageAttribute reportNewCostume reportNewCostumeStretched doSayFor bubble doThinkFor doThink changeEffect setEffect getEffect clearEffects changeScale setScale getScale show hide reportShown goToLayer goBack doScreenshot reportCostumes alert log playSound doPlaySoundUntilDone doPlaySoundAtRate doStopAllSounds reportGetSoundAttribute reportNewSoundFromSamples doRest doPlayNote doPlayFrequency doSetInstrument doChangeTempo doSetTempo getTempo changeVolume setVolume getVolume changePan setPan getPan playFreq stopFreq reportSounds clear down up getPenDown setColor setPenHSVA changePenHSVA getPenAttribute setBackgroundColor setBackgroundHSVA changeBackgroundHSVA changeSize setSize doStamp floodFill write reportPenTrailsAsCostume reportPentrailsAsSVG doPasteOn doCutFrom receiveInteraction receiveGo receiveKey receiveMessage receiveCondition doBroadcast doBroadcastAndWait getLastMessage doSend doWait doWaitUntil doForever doRepeat doUntil doFor doIf doIfElse reportIfElse doStopThis doRun fork evaluate doReport doCallCC reportCallCC doTellTo reportAskFor receiveOnClone createClone newClone removeClone doPauseAll doWarp reportTouchingObject reportTouchingColor reportColorIsTouchingColor reportAspect reportStackSize reportFrameCount reportYieldCount reportThreadCount doAsk reportLastAnswer getLastAnswer reportMouseX reportMouseY reportMouseDown reportKeyPressed reportRelationTo doResetTimer reportTimer getTimer reportAttributeOf reportObject reportURL doSetGlobalFlag reportGlobalFlag reportDate reportGet reportAudio doSetVideoTransparency reportVideo reportLessThan reportGreaterThan reportEquals reportAnd reportOr reportNot reportBoolean reportJoinWords reportTextSplit reportLetter reportStringSize reportUnicode reportUnicodeAsLetter reportIsA reportIsIdentical reportJSFunction reportRandom doSetVar doChangeVar doShowVar doHideVar doDeleteAttr doDeclareVariables reportNewList reportNumbers reportCONS reportListItem reportCDR reportListAttribute reportListIndex reportConcatenatedLists reportReshape reportListContainsItem reportListIsEmpty doForEach reportMap reportKeep reportFindFirst reportCombine doAddToList doDeleteFromList doInsertInList doReplaceInList receiveOnScene doSwitchToScene reifyScript reifyReporter reifyPredicate
    Takes a text string as input, and reports a new text string containing all but the last letter of the input.
    resulti1
    Takes a text string as input, and reports the last character in the string.
    0
    Reports the portion of the first input (string) starting at the position given by the second input (counting from 1, like LETTER n OF) and ending at the position given by the third input (also counting from 1). If the third input is empty, reports the portion from the first position to the end of the string. If a position number is negative, counts from the end backward, so -1 is the last character, -2 is the next to last, etc.
    pt:o texto de _ entre as posições _ e _ , inclusive
    55
    data:image/png;base64,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
    \ No newline at end of file +data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAAiVJREFUeF7t0sEJACAAAzHdf+gKLnGfdIHCkbttxxSIClwAo/JufwEAQUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrfOYAMpAUATPM7B5CBtACAaX7nADKQFgAwze8cQAbSAgCm+Z0DyEBaAMA0v3MAGUgLAJjmdw4gA2kBANP8zgFkIC0AYJrf+QOC496obByqTwAAAABJRU5ErkJggg== forward turn turnLeft setHeading doFaceTowards gotoXY doGotoObject doGlide changeXPosition setXPosition changeYPosition setYPosition bounceOffEdge xPosition yPosition direction doSwitchToCostume doWearNextCostume getCostumeIdx reportGetImageAttribute reportNewCostume reportNewCostumeStretched doSayFor bubble doThinkFor doThink changeEffect setEffect getEffect clearEffects changeScale setScale getScale show hide reportShown goToLayer goBack doScreenshot reportCostumes alert log playSound doPlaySoundUntilDone doPlaySoundAtRate doStopAllSounds reportGetSoundAttribute reportNewSoundFromSamples doRest doPlayNote doPlayFrequency doSetInstrument doChangeTempo doSetTempo getTempo changeVolume setVolume getVolume changePan setPan getPan playFreq stopFreq reportSounds clear down up getPenDown setColor setPenHSVA changePenHSVA getPenAttribute setBackgroundColor setBackgroundHSVA changeBackgroundHSVA changeSize setSize doStamp floodFill write reportPenTrailsAsCostume reportPentrailsAsSVG doPasteOn doCutFrom receiveInteraction receiveGo receiveKey receiveMessage receiveCondition doBroadcast doBroadcastAndWait getLastMessage doSend doWait doWaitUntil doForever doRepeat doUntil doFor doIf doIfElse reportIfElse doStopThis doRun fork evaluate doReport doCallCC reportCallCC doTellTo reportAskFor receiveOnClone createClone newClone removeClone doPauseAll doWarp reportTouchingObject reportTouchingColor reportColorIsTouchingColor reportAspect reportStackSize reportFrameCount reportYieldCount reportThreadCount doAsk reportLastAnswer getLastAnswer reportMouseX reportMouseY reportMouseDown reportKeyPressed reportRelationTo doResetTimer reportTimer getTimer reportAttributeOf reportObject reportURL doSetGlobalFlag reportGlobalFlag reportDate reportGet reportAudio doSetVideoTransparency reportVideo reportLessThan reportGreaterThan reportEquals reportAnd reportOr reportNot reportBoolean reportJoinWords reportTextSplit reportLetter reportStringSize reportUnicode reportUnicodeAsLetter reportIsA reportIsIdentical reportJSFunction reportRandom doSetVar doChangeVar doShowVar doHideVar doDeleteAttr doDeclareVariables reportNewList reportNumbers reportCONS reportListItem reportCDR reportListAttribute reportListIndex reportConcatenatedLists reportReshape reportListContainsItem reportListIsEmpty doForEach reportMap reportKeep reportFindFirst reportCombine doAddToList doDeleteFromList doInsertInList doReplaceInList receiveOnScene doSwitchToScene reifyScript reifyReporter reifyPredicate
    Takes a text string as input, and reports a new text string containing all but the last letter of the input.
    resulti1
    Takes a text string as input, and reports the last character in the string.
    0
    Reports the portion of the first input (string) starting at the position given by the second input (counting from 1, like LETTER n OF) and ending at the position given by the third input (also counting from 1). If the third input is empty, reports the portion from the first position to the end of the string. If a position number is negative, counts from the end backward, so -1 is the last character, -2 is the next to last, etc.
    pt:o texto de _ entre as posições _ e _ , inclusive
    55
    data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==
    \ No newline at end of file