lab_pipes/exercises.md

4.5 KiB

Exercises

Answer the following questions (or at least as many as you can figure out) in this document. For all the questions, use the 100k words. Give your answer for each exercise, and show the command you used to get it. Each question can be answered using a single Terminal command, though you might need to use a number of pipes.

If you want to be really stylish, put your code inside of backticks like this:

cat words_100k.txt | length | put 10 | equal | count

1. What is the longest word?

cat words_100k.txt | length | order 28 antidisestablishmentarianism also you can use cat words_100k.txt | length | order | tail

2. How many words have two u's in a row?

cat words_100k.txt | match "uu" | count 16 words that have two "u's" you can also use, but you have to count the lines cat words_100k.txt | match "uu"

3. How many words have the word "cat" in them?

cat words_100k.txt | match "cat" | count 893 words have the word "cat"

4. How many words have all five vowels (aeiou)?

cat words_100k.txt | match "a.*e.*i.*o.*u" | count 8 words have all five vowels (aeiou)

5. Which words have two l's in a row, two m's in a row, and two t's in a row? (they don't have to be in that order)

Corrected. Needed to use file, words_370k.txt cat words_370k.txt | match "ll" | match "tt" | match "mm" noncommittally

Used incorrect file, words_100k.txt. Nothing printed out, no error messages in terminal. cat words_100k.txt | match "l.+l.+m.+m.+t.+t" cat words_100k.txt | match "ll.+mm.+tt" cat words_100k.txt | match "l.*l.*m.*m.*t.*t" There are no words that have two l's, two m's, and two t's each in a row If using a match separately for each set of the "letters in a row," then a lot of words will match the criteria. cat words_100k.txt | match "ll" | match "mm" cat words_100k.txt | match "mm" cat words_100k.txt | match "tt" cat words_100k.txt | match "ll" | match "tt" cat words_100k.txt | match "ll" | match "tt" | match "mm"

6. How many words have sixteen or more letters?

cat words_100k.txt | length | order | put 16 | lessthan 0 1 -e | count 696 words have sixteen or more letters

?? How is the lessthan 0 1 -e" counting the order of 16 or more letters in a word?
It's considered less than or equal to? It looks like it's doing the opposite. Abstract.

Breaking down to simplier methods trying to solve the larger problem

cat words_100k.txt | length | order 1 1 word with: 28 letters max cat words_100k.txt | length | put 16 | equal | count 354 cat words_100k.txt | length | put 17 | equal | count 207 cat words_100k.txt | length | put 18 | equal | count 67 cat words_100k.txt | length | put 19 | equal | count 45 cat words_100k.txt | length | put 20 | equal | count 16 cat words_100k.txt | length | put 21 | equal | count 1 cat words_100k.txt | length | put 22 | equal | count 3 cat words_100k.txt | length | put 23 | equal | count 2 cat words_100k.txt | length | put 24 | equal | count 0 cat words_100k.txt | length | put 25 | equal | count 0 cat words_100k.txt | length | put 26 | equal | count 0 cat words_100k.txt | length | put 27 | equal | count 0 cat words_100k.txt | length | put 28 | equal | count 1

7. What's the most frequent 10-letter word?

cat words_100k.txt | length | put 10 | equal | count 9869

8. What's the longest word which doesn't have any repeated letters?

This is correct... cat words_100k.txt | length | unique 1 | length | equal 0 2 | order 13 abcdeilnprtuy 13 unpredictably 13 abceghiloprty 13 copyrightable 13 abceilmnoprtu 13 unproblematic 13 abegiklmnortu 13 troublemaking 13 acegilmnopsty 13 salpingectomy

9. What's the longest word which only uses four different letters?

Corrected cat words_100k.txt | unique |length |put 4 |equal |pluck 3 |length |order re-read this and write about it.. Prints out all unique letters with 4-letter words with the length in alphabetical order Note: pluck 3 - selects just the word at index 3

Tried this, error message. Thinking 4 unique letters How do I change the length to sort "4" unique letters? cat words_100k.txt | length | unique 1 | length | order -r | head Scrolled up to see longest word, elns, 13 senselessness cat words_100k.txt | length | unique 1 | length | order -r | head cat words_100k.txt | unique cat words_100k.txt | unique | length

10. If you rearrange the letters in "sidebar," what other words can you create?

cat words_100k.txt | match "s.*i.*d.*e.*b.*a.*r" sidebar sideboard sideboards