SlideShare a Scribd company logo
Starting Out with C++ from Control Structures to
Objects 8th Edition Gaddis Solutions Manual
download
https://testbankfan.com/product/starting-out-with-c-from-control-
structures-to-objects-8th-edition-gaddis-solutions-manual/
Find test banks or solution manuals at testbankfan.com today!
We have selected some products that you may be interested in
Click the link to download now or visit testbankfan.com
for more options!.
Starting Out with C++ from Control Structures to Objects
8th Edition Gaddis Test Bank
https://testbankfan.com/product/starting-out-with-c-from-control-
structures-to-objects-8th-edition-gaddis-test-bank/
Starting Out With C++ From Control Structures To Objects
9th Edition Gaddis Solutions Manual
https://testbankfan.com/product/starting-out-with-c-from-control-
structures-to-objects-9th-edition-gaddis-solutions-manual/
Starting Out With C++ From Control Structures To Objects
7th Edition Gaddis Solutions Manual
https://testbankfan.com/product/starting-out-with-c-from-control-
structures-to-objects-7th-edition-gaddis-solutions-manual/
Americas History Concise Edition Volume 2 9th Edition
Edwards Test Bank
https://testbankfan.com/product/americas-history-concise-edition-
volume-2-9th-edition-edwards-test-bank/
Chemistry 7th Edition McMurry Test Bank
https://testbankfan.com/product/chemistry-7th-edition-mcmurry-test-
bank/
Microeconomics 9th Edition Parkin Test Bank
https://testbankfan.com/product/microeconomics-9th-edition-parkin-
test-bank/
Business Ethics Ethical Decision Making and Cases 12th
Edition Ferrell Test Bank
https://testbankfan.com/product/business-ethics-ethical-decision-
making-and-cases-12th-edition-ferrell-test-bank/
Managerial Accounting 3rd Edition Braun Test Bank
https://testbankfan.com/product/managerial-accounting-3rd-edition-
braun-test-bank/
Principles of Microeconomics 8th Edition Mankiw Test Bank
https://testbankfan.com/product/principles-of-microeconomics-8th-
edition-mankiw-test-bank/
Environment The Science Behind the Stories 6th Edition
Withgott Test Bank
https://testbankfan.com/product/environment-the-science-behind-the-
stories-6th-edition-withgott-test-bank/
PURPOSE 1. To introduce and allow students to work with arrays
2. To introduce the typedef statement
3. To work with and manipulate multidimensional arrays
PROCEDURE 1. Students should read the Pre-lab Reading Assignment before coming to lab.
2. Students should complete the Pre-lab Writing Assignment before coming to lab.
3. In the lab, students should complete labs assigned to them by the instructor.
L E S S O N S E T
7 Arrays
Contents Pre-requisites
Approximate
completion
time
Page
number
Check
when
done
Pre-lab Reading Assignment 20 min. 114
Pre-lab Writing Assignment Pre-lab reading 10 min. 122
LESSON 7A
Lab 7.1
Working with One- Basic understanding of 30 min. 123
Dimensional Arrays one-dimensional arrays
Lab 7.2
Strings as Arrays of Basic understanding of 20 min. 126
Characters arrays of characters
LESSON 7B
Lab 7.3
Working with Two- Understanding of multi- 30 min. 129
Dimensional Arrays dimensional arrays
Lab 7.4
Student Generated Code Basic understanding 30 min. 134
Assignments of arrays
113
114 LESSON SET 7 Arrays
PRE-LAB READING ASSIGNMENT
One-Dimensional Arrays
So far we have talked about a variable as a single location in the computer’s
memory. It is possible to have a collection of memory locations, all of which
have the same data type, grouped together under one name. Such a collection
is called an array. Like every variable, an array must be defined so that the com-
puter can “reserve” the appropriate amount of memory. This amount is based upon
the type of data to be stored and the number of locations, i.e., size of the array,
each of which is given in the definition.
Example: Given a list of ages (from a file or input from the keyboard), find
and display the number of people for each age.
The programmer does not know the ages to be read but needs a space for the
total number of occurrences of each “legitimate age.” Assuming that ages 1,
2, . . . , 100 are possible, the following array definition can be used.
const int TOTALYEARS = 100;
int main()
{
int ageFrequency[TOTALYEARS]; //reserves memory for 100 ints
:
return 0;
}
Following the rules of variable definition, the data type (integer in this case) is
given first, followed by the name of the array (ageFrequency), and then the total
number of memory locations enclosed in brackets. The number of memory loca-
tions must be an integer expression greater than zero and can be given either as
a named constant (as shown in the above example) or as a literal constant (an
actual number such as 100).
Each element of an array, consisting of a particular memory location within
the group, is accessed by giving the name of the array and a position with the array
(subscript). In C++ the subscript, sometimes referred to as index, is enclosed in
square brackets. The numbering of the subscripts always begins at 0 and ends with
one less than the total number of locations. Thus the elements in the ageFrequency
array defined above are referenced as ageFrequency[0] through ageFrequency[99].
0 1 2 3 4 5 . . . . . . 97 98 99
If in our example we want ages from 1 to 100, the number of occurrences of
age 4 will be placed in subscript 3 since it is the “fourth” location in the array.
This odd way of numbering is often confusing to new programmers; however, it
quickly becomes routine.1
1
Some students actually add one more location and then ignore location 0, letting 1 be the
first location. In the above example such a process would use the following definition: int
agefrequency[101]; and use only the subscripts 1 through 100. Our examples will use
location 0. Your instructor will tell you which method to use.
Pre-lab Reading Assignment 115
Array Initialization
In our example, ageFrequency[0] keeps a count of how many 1s we read in,
ageFrequency[1] keeps count of how many 2s we read in, etc. Thus, keeping
track of how many people of a particular age exist in the data read in requires
reading each age and then adding one to the location holding the count for that
age. Of course it is important that all the counters start at 0. The following shows
the initialization of all the elements of our sample array to 0.
for (int pos = 0; pos < TOTALYEARS; pos++)
// pos acts as the array subscript
{
ageFrequency[pos] = 0;
}
A simple for loop will process the entire array, adding one to the subscript each
time through the loop. Notice that the subscript (pos) starts with 0. Why is the con-
dition pos < TOTALYEARS used instead of pos <= TOTALYEARS? Remember that
the last subscript is one less than the total number of elements in the array.
Hence the subscripts of this array go from 0 to 99.
Array Processing
Arrays are generally processed inside loops so that the input/output processing
of each element of the array can be performed with minimal statements. Our
age frequency program first needs to read in the ages from a file or from the key-
board. For each age read in, the “appropriate” element of the array (the one cor-
responding to that age) needs to be incremented by one. The following examples
show how this can be accomplished:
from a file using infile as a logical name from a keyboard with –99 as sentinel data
cout << "Please input an age from one"
<< "to 100. input -99 to stop"
<< endl;
infile >> currentAge; cin >> currentAge;
while (infile)
while (currentAge != -99)
{ {
ageFrequency[currentAge-1] = ageFrequency[currentAge-1] =
ageFrequency[currentAge-1] + 1; ageFrequency[currentAge-1] + 1;
infile >> currentAge; cout << "Please input an age from "
<< "one to 100. input -99 to stop"
<< endl;
cin >> currentAge;
} }
The while(infile) statement means that while there is more data in the file
infile, the loop will continue to process.
To read from a file or from the keyboard we prime the read,2
which means
the first value is read in before the test condition is checked to see if the loop
2
Priming the read for a while loop means having an input just before the loop condition
(just before the while) and having another one as the last statement in the loop.
4 0 14 5 0 6 1 0
116 LESSON SET 7 Arrays
should be executed. When we read an age, we increment the location in the
array that keeps track of the amount of people in the corresponding age group.
Since C++ array indices always start with 0, that location will be at the subscript
one value less than the age we read in.
0 1 2 3 4 5 . . . . . . 98 99
1 year 2 years 3 years 4 years 5 years 6 years 99 years 100 years
Each element of the array contains the number of people of a given age. The data
shown here is from a random sample run. In writing the information stored in the
array, we want to make sure that only those array elements that have values
greater than 0 are output. The following code will do this.
for (int ageCounter = 0; ageCounter < TOTALYEARS; ageCounter++)
if (ageFrequency[ageCounter] > 0)
cout << "The number of people " << ageCounter + 1 <<" years old is "
<< ageFrequency[ageCounter] << endl;
The for loop goes from 0 to one less than TOTALYEARS (0 to 99). This will test every
element of the array. If a given element has a value greater than 0, it will be
output. What does outputting ageCounter + 1 do? It gives the age we are deal-
ing with at any given time, while the value of ageFrequency[ageCounter] gives
the number of people in that age group.
The complete age frequency program will be given as one of the lab assign-
ments in Lab 7.4.
Arrays as Arguments
Arrays can be passed as arguments (parameters) to functions. Although variables
can be passed by value or reference, arrays are always passed by pointer, which
is similar to pass by reference, since it is not efficient to make a “copy” of all ele-
ments of the array. Pass by pointer is discussed further in Lesson Set 9. This
means that arrays, like pass by reference parameters, can be altered by the call-
ing function. However, they NEVER have the & symbol between the data type and
name, as pass by reference parameters do. Sample Program 7.1 illustrates how
arrays are passed as arguments to functions.
Sample Program 7.1:
// The grade average program
// This program illustrates how one-dimensional arrays are used and how
// they are passed as arguments to functions. It contains two functions.
// The first function is called to allow the user to input a set of grades and
// store them in an array. The second function is called to find the average
// grade.
#include <iostream>
using namespace std;
Pre-lab Reading Assignment 117
const int TOTALGRADES = 50; // TOTALGRADES is the maximum size of the array
// function prototypes
void getData(int array[], int& sizeOfArray);
// the procedure that will read values into the array
float findAverage(const int array[], int sizeOfArray);
// the procedure that will find the average of values
// stored in an array. The word const in front of the
// data type of the array prevents the function from
// altering the array
int main()
{
int grades[TOTALGRADES]; // defines an array that holds up to 50 ints
int numberOfGrades = 0; // the number of grades read in
float average; // the average of all grades read in
getData(grades, numberOfGrades); // getData is called to read the grades into
// the array and store how many grades there
// are in numberOfGrades
average = findAverage(grades, numberOfGrades);
cout << endl << "The average of the " << numberOfGrades
<< " grades read in is " << average << "." << endl << endl;
return 0;
}
//***********************************************************************
// getData
//
// task: This function inputs and stores data in the grades array.
// data in: none (the parameters contain no information needed by the
// getData function)
// data out: an array containing grades and the number of grades
//***********************************************************************
void getData(int array[], int& sizeOfArray)
{
int pos = 0; // array index which starts at 0
int grade; // holds each individual grade read in
cout << "Please input a grade or type -99 to stop: " << endl;
cin >> grade;
continues
118 LESSON SET 7 Arrays
while (grade != -99)
{
array[pos] = grade; // store grade read in to next array location
pos ++; // increment array index
cout << "Please input a grade or type -99 to stop: " << endl;
cin >> grade;
}
sizeOfArray = pos; // upon exiting the loop, pos holds the
// number of grades read in, which is sent
// back to the calling function
}
//****************************************************************************
// findAverage
//
// task: This function finds and returns the average of the values
//
// data in: the array containing grades and the array size
// data returned: the average of the grades contained in that array
//****************************************************************************
float findAverage (const int array[], int sizeOfArray)
{
int sum = 0; // holds the sum of all grades in the array
for (int pos = 0; pos < sizeOfArray; pos++)
{
sum = sum + array[pos];
// add grade in array position pos to sum
}
return float(sum)/sizeOfArray;
}
Notice that a set of empty brackets [ ] follows the parameter of an array which
indicates that the data type of this parameter is in fact an array. Notice also that
no brackets appear in the call to the functions that receive the array.
Since arrays in C++ are passed by pointer, which is similar to pass by reference,
it allows the original array to be altered, even though no & is used to designate
this. The getData function is thus able to store new values into the array. There
may be times when we do not want the function to alter the values of the array.
Inserting the word const before the data type on the formal parameter list pre-
vents the function from altering the array even though it is passed by pointer. This
is why in the preceding sample program the findAverage function and header
had the word const in front of the data type of the array.
float findAverage (const int array[], int sizeOfArray); // prototype
float findAverage (const int array[], int sizeOfArray) // function header
Pre-lab Reading Assignment 119
The variable numberOfGrades contains the number of elements in the array to
be processed. In most cases not every element of the array is used, which means
the size of the array given in its definition and the number of actual elements
used are rarely the same. For that reason we often pass the actual number of
ele- ments used in the array as a parameter to a procedure that uses the array.
The variable numberOfGrades is explicitly passed by reference (by using &) to
the getData function where its corresponding formal parameter is called
sizeOfArray.
Prototypes can be written without named parameters. Function headers must
include named parameters.
float findAverage (const int [], int); // prototype without named parameters
The use of brackets in function prototypes and headings can be avoided by
declaring a programmer defined data type. This is done in the global section
with a typedef statement.
Example: typedef int GradeType[50];
This declares a data type, called GradeType, that is an array containing 50 inte-
ger memory locations. Since GradeType is a data type, it can be used in defining
variables. The following defines grades as an integer array with 50 elements.
GradeType grades;
It has become a standard practice (although not a requirement) to use an upper-
case letter to begin the name of a data type. It is also helpful to include the word
“type” in the name to indicate that it is a data type and not a variable.
Sample Program 7.2 shows the revised code (in bold) of Sample Program 7.1 using
typedef.
Sample Program 7.2:
// Grade average program
// This program illustrates how one-dimensional arrays are used and how
// they are passed as arguments to functions. It contains two functions.
// The first function is called to input a set of grades and store them
// in an array. The second function is called to find the average grade.
#include <iostream>
using namespace std;
const int TOTALGRADES = 50; // maximum size of the array
// function prototypes
typedef int GradeType[TOTALGRADES]; // declaration of an integer array data type
// called GradeType
continues
120 LESSON SET 7 Arrays
void getData(GradeType array, int& sizeOfArray);
// the procedure that will read values into the array
float findAverage(const GradeType array, int sizeOfArray);
// the procedure that will find the average of values
// stored in an array. The word const in front of the
// data type of the array prevents the function from
// altering the array
int main()
{
GradeType grades; // defines an array that holds up to 50 ints
int numberOfGrades = 0; // the number of grades read in
float average; // the average of all grades read in
getData(grades, numberOfGrades);// getData is called to read the grades into
// the array and store how many grades there
// are in numberOfGrades
average = findAverage(grades, numberOfGrades);
cout << endl << "The average of the " << numberOfGrade
<< " grades read in is " << average << "." << endl << endl;
return 0;
}
//***********************************************************************
// getData
//
// task: This function inputs and stores data in the grades array.
// data in: none
// data out: an array containing grades and the number of grades
//***********************************************************************
void getData(GradeType array, int& sizeOfArray)
{
int pos = 0; // array index which starts at 0
int grade; // holds each individual grade read in
cout << "Please input a grade or type -99 to stop: " << endl;
cin >> grade;
while (grade != -99)
{
array[pos] = grade; // store grade read in to next array location
pos ++; // increment array index
cout << "Please input a grade or type -99 to stop: " << endl;
cin >> grade;
}
Pre-lab Reading Assignment 121
sizeOfArray = pos; // upon exiting the loop, pos holds the
// number of grades read in, which is sent
// back to the calling function
}
//****************************************************************************
// findAverage
//
// task: This function finds and returns the average of the values
//
// data in: the array containing grades and the array size
// data returned: the average of the grades contained in that array
//****************************************************************************
float findAverage (const GradeType array, int sizeOfArray)
{
int sum = 0; // holds the sum of all grades in the array
for (int pos = 0; pos < sizeOfArray; pos++)
{
sum = sum + array[pos];
// add grade in array position pos to sum
}
return float(sum)/sizeOfArray;
}
This method of using typedef to eliminate brackets in function prototypes and
headings is especially useful for multi-dimensional arrays such as those intro-
duced in the next section.
Two-Dimensional Arrays
Data is often contained in a table of rows and columns that can be implement-
ed with a two-dimensional array. Suppose we want to read data representing
profits (in thousands) for a particular year and quarter.
Quarter 1 Quarter 2 Quarter 3 Quarter 4
72 80 10 100
82 90 43 42
10 87 48 53
This can be done using a two-dimensional array.
Example:
const NO_OF_ROWS = 3;
const NO_OF_COLS = 4;
typedef float ProfitType[NO_OF_ROWS][NO_OF_COLS]; //declares a new data type
//which is a 2 dimensional
//array of floats
continues
122 LESSON SET 7 Arrays
int main()
{
ProfitType profit; // defines profit as a 2 dimensional array
for (int row_pos = 0; row_pos < NO_OF_ROWS; row_pos++)
for (int col_pos = 0; col_pos < NO_OF_COLS; col_pos++)
{
cout << "Please input a profit" << endl;
cin >> profit[row_pos][col_pos];
}
return 0;
}
A two dimensional array normally uses two loops (one nested inside the other)
to read, process, or output data.
How many times will the code above ask for a profit? It processes the inner
loop NO_OF_ROWS * NO_OF_COLS times, which is 12 times in this case.
Multi-Dimensional Arrays
C++ arrays can have any number of dimensions (although more than three is rarely
used). To input, process or output every item in an n-dimensional array, you
need n nested loops.
Arrays of Strings
Any variable defined as char holds only one character. To hold more than one
character in a single variable, that variable needs to be an array of characters. A
string (a group of characters that usually form meaningful names or words) is
really just an array of characters. A complete lesson on characters and strings
is given in Lesson Set 10.
PRE-LAB WRITING ASSIGNMENT
Fill-in-the-Blank Questions
1. The first subscript of every array in C++ is and the last is
less than the total number of locations in the array.
2. The amount of memory allocated to an array is based on the
and the of locations
or size of the array.
3. Array initialization and processing is usually done inside a
.
4. The statement can be used to declare an array type and
is often used for multidimensional array declarations so that when passing
arrays as parameters, brackets do not have to be used.
5. Multi-dimensional arrays are usually processed within
loops.
6. Arrays used as arguments are always passed by .
Lesson 7A 123
7. In passing an array as a parameter to a function that processes it, it is often
necessary to pass a parameter that holds the of
used in the array.
8. A string is an array of .
9. Upon exiting a loop that reads values into an array, the variable used as
a(n) to the array will contain the size of that array.
10. An n-dimensional array will be processed within nested
loops when accessing all members of the array.
LESSON 7A
LAB 7.1 Working with One-Dimensional Arrays
Retrieve program testscore.cpp from the Lab 7 folder. The code is as follows:
// This program will read in a group of test scores (positive integers from 1 to 100)
// from the keyboard and then calculate and output the average score
// as well as the highest and lowest score. There will be a maximum of 100 scores.
// PLACE YOUR NAME HERE
#include <iostream>
using namespace std;
typedef int GradeType[100]; // declares a new data type:
// an integer array of 100 elements
float findAverage (const GradeType, int); // finds average of all grades
int findHighest (const GradeType, int); // finds highest of all grades
int findLowest (const GradeType, int); // finds lowest of all grades
int main()
{
GradeType grades; // the array holding the grades.
int numberOfGrades; // the number of grades read.
int pos; // index to the array.
float avgOfGrades; // contains the average of the grades.
int highestGrade; // contains the highest grade.
int lowestGrade; // contains the lowest grade.
// Read in the values into the array
pos = 0;
cout << "Please input a grade from 1 to 100, (or -99 to stop)" << endl;
continues
124 LESSON SET 7 Arrays
cin >> grades[pos];
while (grades[pos] != -99)
{
// Fill in the code to read the grades
}
numberOfGrades = ; // Fill blank with appropriate identifier
// call to the function to find average
avgOfGrades = findAverage(grades, numberOfGrades);
cout << endl << "The average of all the grades is " << avgOfGrades << endl;
// Fill in the call to the function that calculates highest grade
cout << endl << "The highest grade is " << highestGrade << endl;
// Fill in the call to the function that calculates lowest grade
// Fill in code to write the lowest to the screen
return 0;
}
//********************************************************************************
// findAverage
//
// task: This function receives an array of integers and its size.
// It finds and returns the average of the numbers in the array
// data in: array of floating point numbers
// data returned: average of the numbers in the array
//
//********************************************************************************
float findAverage (const GradeType array, int size)
{
float sum = 0; // holds the sum of all the numbers
for (int pos = 0; pos < size; pos++)
sum = sum + array[pos];
return (sum / size); //returns the average
}
Lesson 7A 125
//****************************************************************************
// findHighest
//
// task: This function receives an array of integers and its size.
// It finds and returns the highest value of the numbers in the array
// data in: array of floating point numbers
// data returned: highest value of the numbers in the array
//
//****************************************************************************
int findHighest (const GradeType array, int size)
{
/ Fill in the code for this function
}
//****************************************************************************
// findLowest
//
// task: This function receives an array of integers and its size.
// It finds and returns the lowest value of the numbers in the array
// data in: array of floating point numbers
// data returned: lowest value of the numbers in the array
//
//****************************************************************************
int findLowest (const GradeType array, int size)
{
// Fill in the code for this function
}
Exercise 1: Complete this program as directed.
Exercise 2: Run the program with the following data: 90 45 73 62 -99
and record the output here:
Exercise 3: Modify your program from Exercise 1 so that it reads the informa-
tion from the gradfile.txt file, reading until the end of file is encoun-
tered. You will need to first retrieve this file from the Lab 7 folder and
place it in the same folder as your C++ source code. Run the program.
126 LESSON SET 7 Arrays
Lab 7.2 Strings as Arrays of Characters
Retrieve program student.cpp from the Lab 7 folder.
// This program will input an undetermined number of student names
// and a number of grades for each student. The number of grades is
// given by the user. The grades are stored in an array.
// Two functions are called for each student.
// One function will give the numeric average of their grades.
// The other function will give a letter grade to that average.
// Grades are assigned on a 10 point spread.
// 90-100 A 80-89 B 70-79 C 60-69 D Below 60 F
// PLACE YOUR NAME HERE
#include <iostream>
#include <iomanip>
using namespace std;
const int MAXGRADE = 25; // maximum number of grades per student
const int MAXCHAR = 30; // maximum characters used in a name
typedef char StringType30[MAXCHAR + 1];// character array data type for names
// having 30 characters or less.
typedef float GradeType[MAXGRADE]; // one dimensional integer array data type
float findGradeAvg(GradeType, int); // finds grade average by taking array of
// grades and number of grades as parameters
char findLetterGrade(float); // finds letter grade from average given
// to it as a parameter
int main()
{
StringType30 firstname, lastname;// two arrays of characters defined
int numOfGrades; // holds the number of grades
GradeType grades; // grades defined as a one dimensional array
float average; // holds the average of a student's grade
char moreInput; // determines if there is more input
cout << setprecision(2) << fixed << showpoint;
// Input the number of grades for each student
cout << "Please input the number of grades each student will receive." << endl
<< "This must be a number between 1 and " << MAXGRADE << " inclusive”
<< endl;
cin >> numOfGrades;
Lesson 7A 127
while (numOfGrades > MAXGRADE || numOfGrades < 1)
{
cout << "Please input the number of grades for each student." << endl
<< "This must be a number between 1 and " << MAXGRADE
<< " inclusiven";
cin >> numOfGrades;
}
// Input names and grades for each student
cout << "Please input a y if you want to input more students"
<< " any other character will stop the input" << endl;
cin >> moreInput;
while (moreInput == 'y' || moreInput == 'Y')
{
cout << "Please input the first name of the student" << endl;
cin >> firstname;
cout << endl << "Please input the last name of the student" << endl;
cin >> lastname;
for (int count = 0; count < numOfGrades; count++)
{
cout << endl << "Please input a grade" << endl;
// Fill in the input statement to place grade in the array
}
cout << firstname << " " << lastname << " has an average of ";
// Fill in code to get and print average of student to screen
// Fill in call to get and print letter grade of student to screen
cout << endl << endl << endl;
cout << "Please input a y if you want to input more students"
<< " any other character will stop the input" << endl;
cin >> moreInput;
}
return 0;
}
continues
Random documents with unrelated
content Scribd suggests to you:
THE HORNED SERPENT.
This is a magical underwater creature with the
power to transform itself into the form of a
human warrior. The Thunder Spirit wages war
against the whole tribe of Horned Serpents and
tries to kill them by lightning. This is one of Jesse
Cornplanter’s finest drawings.
The next day the girl worked very hard making a new dress and
spent much time putting black porcupine quills upon it as an
ornamentation. It was her plan to have a dress that would match her
lover’s suit. Upon the third day she finished her work and went to
bed early. Her apartment was at the right side of the door and it was
covered by a curtain of buffalo skin that hung all the way down.
Hi’´non
again called upon her, taking a light and seating himself
back of the curtain. “I am willing to marry you,” he said. “When will
you become my wife?”
“Not yet,” she replied. “I am not ready now to marry.”
“I think you are deceiving me,” answered Hi’´non
, “for you have on
your new dress and have not removed your moccasins.”
“You may go,” the girl told him, and he went away.
Soon there came the stranger and he too took a little torch and
went behind the curtain. Soon the two came out together and ran
down the path to the river.
“I shall take you now to my own tribe,” said the lover. “We live
only a short way from here. We must go over the hill.”
So onward they went to their home, at length arriving at the high
rocky shores of a lake. They stood on the edge of the cliff and looked
down at the water.
“I see no village and no house,” complained the girl. “Where shall
we go now? I am sure that we are pursued by the Thunderer.”
As she said this the Thunderer and the girl’s father appeared
running toward them.
“It is dark down there,” said the lover. “We will now descend and
find our house.”
So saying he took the girl by the waist and crawled down the cliff,
suddenly diving with a splash into the lake. Down they went until
they reached the foot of the cliff, when an opening appeared into
which he swam with her. Quickly he swam upward and soon they
were in a dimly lighted lodge. It was a strange place and filled with
numerous fine things. All along the wall there were different suits of
clothing.
“Look at all the suits,” said the lover, “when you have found one
put it on.”
That night the couple were married and the next day the husband
went away. “I shall return in three days,” he announced. “Examine
the fine things here, and when you find a dress that you like put it
on.”
For a long time the girl looked at the things in the lodge, but she
was afraid to put on anything for everything had such a fishy smell.
There was one dress, however, that attracted the girl and she was
tempted to put it on. It was very long and had a train. It was covered
all over with decorations that looked like small porcupine quills
flattened out. There was a hood fastened to it and to the hood was
fastened long branching antlers. She looked at this dress longingly
but hung it up again with a sigh, for it smelled like fish and she was
afraid.
In due time her husband returned and asked her if she had
selected a suit. “I have found one that I admire greatly,” said she.
“But I am afraid that I will not like it after I put it on. It has a peculiar
fishy smell and I am afraid that it may bring evil upon me if I wear
it.”
“Oh no!” exclaimed her husband, “If you wear that suit I will be
greatly pleased. It is the very suit that I hoped you would select. Put
it on, my wife, put it on, for then I shall be greatly pleased. When I
return from my next trip I hope you will wear it for me.”
The next day the husband went away, again promising soon to
return. Again the girl busied herself with looking at the trophies
hanging in the lodge. She noticed that there were many suits like the
one she had admired. Carefully she examined each and then it
dawned upon her that these garments were the clothing of great
serpents. She was horrified at the discovery and resolved to escape.
As she went to the door she was swept back by a wave. She tried the
back door but was forced into the lodge again by the water. Finally
mustering all her courage she ran out of the door and jumped
upward. She knew that she had been in a house under water. Soon
she came to the surface but it was dark and there were thunder
clouds in the sky. A great storm was coming up. Then she heard a
great splashing and through the water she saw a monster serpent
plowing his way toward her. Its eyes were fiercely blazing and there
were horns upon its head. As it came toward her she scrambled in
dismay up the dark slippery rocks to escape it. As the lightning
flashed she looked sharply at the creature and saw that its eyes were
those of her husband. She noticed in particular a certain mark on his
eyes that had before strangely fascinated her. Then she realized that
this was her husband and that he was a great horned serpent.
She screamed and sought to scale the cliff with redoubled vigor,
but the monster was upon her with a great hiss. His huge bulk coiled
to embrace her, when there was a terrific peal of thunder, a blinding
flash, and the serpent fell dead, stricken by one of Hi’´non
’s arrows.
The girl was about to fall when a strong arm grasped her and bore
her away in the darkness. Soon she was back at her father’s lodge.
The Thunderer had rescued her.
“I wanted to save you,” he said, “but the great horned serpent kept
me away by his magic. He stole you and took you to his home. It is
important that you answer me one question: did you ever put on any
dress that he gave you? If you did you are no longer a woman but a
serpent.”
“I resisted the desire to put on the garment,” she told him.
“Then,” said he, “you must go to a sweat lodge and be purified.”
The girl went to the women’s sweat lodge and they prepared her
for the purification. When she had sweat and been purged with
herbs, she gave a scream and all the women screamed for she had
expelled two young serpents, and they ran down and slipped off her
feet. The Thunderer outside killed them with a loud noise.
After a while the young woman recovered and told all about her
adventure, and after a time the Thunderer came to her lodge and
said, “I would like to take you now.”
“I will give you some bread,” she answered, meaning that she
wished to marry him. So she gave him some bread which he ate and
then they were married.
The people of the village were now all afraid that the lake would be
visited by horned serpents seeking revenge but the Thunderer
showed them a medicine bag filled with black scales, and he gave
every warrior who would learn his song one scale, and it was a scale
from the back of the horned serpent. He told them that if they wore
this scale, the serpent could not harm them. So, there are those
scales in medicine bundles to this day.
27. THE GREAT SERPENT AND THE YOUNG
WIFE.
There was a certain young man who married a young woman. Now
the young man had three sisters who were very jealous of the young
wife, because of her beauty and skill, and because of their brother’s
affection for her. And so it was that the trio resolved to devise a plot
and destroy the young wife.
It was the season when huckleberries are ripe and the sisters had
invited the wife to take a canoe trip with them to a small island that
arose from the middle of a large lake. Huckleberries were reported to
grow there in abundance. Suspecting nothing, the wife mended her
baskets and started to prepare food for the excursion.
“Oh no food is needed!” exclaimed the older sister. “We do not
need a lunch where so many berries grow. Our baskets will soon be
filled and we will return long before our hunger comes, meanwhile
we can feast on berries.”
The four women entered their canoe and paddled to the island far
out in the lake. When at last they had beached their canoe and
turned to look about, they found the island covered with bushes
laden with berries. The sisters seemed anxious to go farther inland
but the wife said that she deemed it wiser to stop where they were
and pick, thus making it unnecessary to carry heavy baskets a greater
distance to the canoe. So, stooping over she commenced to strip the
berries from the bushes. This is exactly what the sisters wished as it
gave them an opportunity to leave her behind, and, grumbling at her
laziness, they disappeared in the bushes.
The wife worked diligently and soon had her large pack basket full
to the brim. Lifting it to her back and throwing the burden strap
(gŭsha´ā‘) over her forehead, she walked slowly back to the shore
expecting to find her sisters-in-law waiting for her. To her horror,
however, though she searched in every direction, there was no sign of
canoe or women. The situation then dawned upon her, and
discouraged beyond all measure, she sat down on the sand and gave
vent to her emotions by a burst of tears.
She was alone, a solitary human creature upon a far-away isle. She
knew not what evil ghost might be lurking there to transform her to a
crow or a wolf. Perhaps he might destroy her in the darkness and
feast upon the body. These and other fearful thoughts tortured her
mind until at last, as the sun sank low, she lay down exhausted by
grieving, and slept. Far into the night she slumbered. Time sped by
and she was awakened by a whoop upon the waters. Sitting up she
looked out over the lake where she heard a clamor of voices and a
multitude of dancing lights. Soon the lights appeared upon the shore
and shortly were arranged in a circle on the island.
Creeping up to a log that lay close to the circle of lights, she saw a
company of creatures gathered in council. The beings seemed like
men and yet more like animals. Sometimes when she looked they
were beasts and then again men. One began to speak.
He said, “Now this woman has been deceived by her sisters-in-law
and we are met to plan how to save her. She must be taken from this
island for the berries are poisoned and if she dies not from them the
sĕgowĕnota (singing wizard) will enchant her.”
For some time the speaker talked and finally asked, “Who now will
carry her basket to the land?”
A large tall being with a deep bass voice answered quickly, “I will!”
“No, you may not, your pride is before your courage,” said the chief
speaker.
A huge bulky creature arose and called out, “I will save her!”
“No, you are too terrible in form and would frighten her,” was the
reply.
Several more volunteered but all were rejected until a very tall
slender being arose and in a clear ringing voice said he would use his
utmost power to save the unfortunate young wife if only permitted.
“You are the chosen one!” exclaimed the chief. “You are one close
to the (knowledge of) people.”
The council adjourned, the voices gradually died away and the lake
was dotted again with flickering lights. The young wife crept back to
her bed, half afraid and yet hopeful of the morrow.
Before sunrise a voice called from the water, and, starting up the
young woman ran to the beach and saw what at first appeared to be a
monstrous canoe, but looking again she saw a great serpent from
whose head arose proud curving horns like a buffalo’s.
The creature lifted his head from the waters and called.
“I have come to rescue you. Trust me and make your seat upon my
head between my ‘feathers.’ But first break twelve osiers and use
them upon me should I lag in my swimming.”
The girl took her seat upon the creature’s head and laid her whips
in her lap. With an undulating motion his long glistening body
moved through the ripples but the wife sat high and not a drop of
water spattered upon her.
As her mysterious rescuer journeyed his way he told her that he
must hasten with all speed as he belonged to the race of underwater
people whom the mighty He’´non
hates.[35]
Even now the scouts
(small black clouds) might have spied him and be scudding through
the sky bringing after them a host of thunder clouds. Nor was his an
idle surmise, for scarcely had he spoken when a small black cloud
appeared and sped with great rapidity toward them. Instantly the
wind commenced to blow and the great serpent called back to his
charge, “Whip me, Oh whip me! He’´non
has discovered us and is
driving onward his warriors!”
The frightened girl lashed the monster with all her strength until
nearly all her withes were broken. In the distance the thunder began
to roll and soon again in loud claps. The dark clouds piled thicker
and came faster. The great serpent in his wild speed was lashing the
black waters into a foam that flew through the wind and covered the
lake. There was an ear-splitting crash. The Thunder Spirit was
coming nearer. The gleaming arrow he had thrown had riven a
floating oak tree. The young woman trembled beneath the dark
cloud-banked sky and feared. The rumble of thunder was deafening.
He’´non
was casting his javelins faster. A great sheet of fire flashed
from the heavens and lit up the lake and the shore. The thunder
crashed and cracked and rumbled. In the awful fury of the tempest
the great serpent cried in terror: “Oh use your lashes! Oh spur me
onward! My strength is failing! Scourge me! I must save you and if I
do, oh will you not burn tobacco upon the shore twice each year for
me? Oh lash me more!”
A blinding flash of fire shot from the rumbling clouds and buried
itself in the water at the side of the serpent.
“Jump now!” cried the creature, “He’´non
has his range and I must
dive.”
Hope faded from the young wife’s heart. How much better would
death have been in the midst of the waters or by the lightning’s
stroke than within sight of the shore. With a cry of agonized despair
she slid from the head of her rescuer and sank into the turbulent
waters. The horned monster with a booming sound plunged beneath
the lake and disappeared.
The light broke through the clouds and the storm began to retreat.
The young woman struggled with the swirling waters. Her esteem for
her would-be-deliverer sank to a bitter hatred for he had abandoned
her to perish. Her tired limbs could no longer battle with the lake.
Her feet sank but to her unspeakable surprise they fell firm on the
sand. Wading forward in the semi-darkness she came safely out on
the shore. Walking inland she sat down beneath a tree to recover
from exhaustion and fright.
The storm sped away growling that it had failed to slay Djodi
´kwado‘ the monster serpent.
The young wife arose, wet and bedraggled, but happy that she was
safe again. Now her heart was full of gratitude to her hard-pressed
deliverer.
Ahead of her, wandering aimlessly, with hanging head and
melancholy mien, was a man. His body was drenched with rain and
his spirit with heavy sorrow.
The woman neared him and called, “Husband, Oh husband, is it
truly you?”
The man turned with a shout of joy and answered, “Wife, oh wife,
returned living, is it you?”
The drenched and storm-bruised couple joyfully turned
homeward. The three sisters were there. “Begone now and forever,”
said the husband.
Then were the couple happy, and envy and jealousy found no place
with them. So here the story ends and so it is spoken.
Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Solutions Manual
28. BUSHY HEAD THE BEWITCHED
WARRIOR RESCUES TWO LOST
DAUGHTERS AND WINS THEM AS WIVES.
[36]
The daughters of a woman who was a clan matron and name-
holder disappeared. She grieved greatly, but her husband who was
chief of another clan said nothing. He was a bad man and was chief
because he had lied about his brother Donya´dassi.
Now Donya´dassi had once been a skillful hunter but his hunting
charms had been stolen, and so with his wife, Gawīsas, he lived away
from the village in a poor bark hut.
The mother of the lost daughters, whose children should some day
be in the sachemship line, offered large rewards for their recovery
and continually urged the young men to hunt for the girls, promising
them as wives to the successful finder. They were most beautiful
young women and there were many searchers, but when winter
came, all returned without news.
Now, it happened that Gawīsas, the poor woman, was boiling corn
over the fire in her lodge and thinking very intently about the lost
daughters of her sister-in-law. She thought that their father, jealous
of them, might have cast a spell over them and hidden them away.
While thus thinking she heard a strange sound outside, a sound so
unusual that it alarmed her. Her husband was absent on one of his
not always profitable hunts. Soon someone knocked at the door, but
Gawīsas failing to respond, a strange creature entered, looked into
her face, and then advanced to the fire. This being was Bushy Head, a
dwarf with an enormous bushy head. Upon its chin was a long white
beard that dragged upon the floor. He seemed to be all head. The
snow and ice had so caught and frozen in its beard that as he walked
it dragged behind him like a log. Bushy Head stood before the fire,
reeled up his beard and thawed out the ice. Gawīsas could not speak
because she was so frightened, so she sat on her bed. The monster
looked at her and then ran his cane into the fire, stirring up the
ashes. The sparks flew upward and fell into the soup. Again the being
looked at Gawīsas but she only stared blankly back. Grasping a ladle
he filled it with ashes and threw them in the soup, and turning, eyed
the frightened woman again but she did not move or speak. He kept
looking at the woman until he had filled the kettle with ashes and
then departed. After his departure Gawīsas recovered in a measure
from her fright and dragging the kettle out of doors emptied and
scoured it. To her dismay the creature, whom she had named
Sogogo, returned on the next day and for six consecutive days, each
time behaving as before and Gawīsas remaining silent to all
proceedings. At last on the seventh day her husband, Donya´dassi,
returned and she told him of all the strange happenings.
“Well, what did you say to him?” he asked, and when she replied,
“Nothing,” he bade her speak the next time the Sogogo came. “He
wants to tell you something,” he said. “So ask him what he wishes.”
Having given this advice Donya´dassi departed on another hunting
excursion, for he had come home empty-handed. He was a chief also,
but could not rule, because his wife’s uncle was his enemy.
Sogogo returned soon afterward and peered into the face of
Gawīsas who could only summon up enough courage to say, “Ä-ä-ä-
ä-ä.”
“Ä-ä-ä-ä-ä,” replied Sogogo, and filled up the kettle with ashes
again.
The next day passed with the same results, but on the third day
Gawīsas tremblingly asked, “What do you wish, Sogogo?”
“At last,” he answered, you have spoken. “I can only speak as I am
spoken to, and hoped, since you would not greet me, you would chide
me when I spoiled your soup. Now let me tell you that I know where
the chief’s daughters are and have chosen you and your husband as
the ones to claim the reward. You are poor and plenty of wampum
will make you powerful. Now tell your husband, and if he is willing to
aid me bid him hang half the liver and half the lights of every animal
he kills upon a low branch of the nearest tree. For a sign that I am
telling the truth, let him chop down the big tree before your lodge
and within it will be a bear.”
Sogogo departed and when Donya´dassi came back from his hunt,
successful this time, he was told the news. He felled the tree as
directed by his wife, killed the bear and hung half the liver and half
the lights on the branches on the nearest tree.
The wife was cutting some choice pieces of bear meat to cook for
the afternoon meal when in walked Sogogo, and greeting Gawīsas
and her husband, sat down and began talking to the man. He
explained his plan for rescuing the lost daughters of the chief. Donya
´dassi was to go to the top of a certain mound and seat himself in a
large basket which he found there. This basket would rest on
Sogogo’s head and would bear him to the inside of the mound, where
the chief’s daughters had been hidden.
Accordingly the next day Donya´dassi seated himself in the large
basket which he found on the mound and sank down under the
earth.
Arrived there, Sogogo lifted the basket from his head and
proceeded to instruct Donya´dassi how he must rescue the
daughters.
“Go to the first lodge on the right hand side of the trail,” he said.
“There you will see one of the girls. Tell her you are her rescuer. Bid
her sweep the floor as soon as she hears her captor approaching and
continue to sweep until you depart with her. Her captor, who wishes
to become her husband, has seven heads. You must kill the creature
in order to gain the girl. He will ask you to drink berry juice with
him. Poison will be in your cup but when he winks change the cups.
Then he will want to fight. When you fight him use this short crooked
knife, and rushing toward him thrust it between his seven heads and
cut off the middle one. Previously instruct the girl to sweep it in the
fire so that the flames will burn his eyebrows and lashes. That will
destroy his power and all seven heads will die. When you have done
all this return to me with the girl so you may know what to do next.”
Taking the sharp bent knife that Sogogo held toward him, Donya
´dassi thrust it in his pouch and ran down the trail until he saw a
large bark house at the right. Entering it he saluted the young woman
whom he recognized as the eldest of the chief’s stolen daughters. He
instructed her, as bidden, and had scarcely finished when the seven-
headed man entered and spying the stranger he cried, “Kwē! Come,
let us drink a little strawberry juice.” He placed two gourd cups on a
bench and said, “Now drink.” Just as he winked Donya´dassi
transposed the cups and when the monster lifted the berry juice to
his lips and tasted it he exclaimed, “Ho ho!” meaning, his power was
lessened.
“Come, let us fight now,” he cried. “Here are the clubs; take your
choice. How does that fine new one suit you?”
“No, I’ll take that old one,” said Donya´dassi pointing to a half
decayed stick. “I’ll fight you left-handed,” he continued, “So ready!”
The daughter began to sweep and the men to fight. Rushing upon
the monster so close that no club could hit him he thrust his knife
between the heads and with a quick jerk of his arm cut off the middle
one. The girl swept it into the fire and when the eyelashes and brows
had been singed the swaying body and six howling heads crashed to
the floor. The girl dropped her broom and followed Donya´dassi as
he ran out and down the trail.
Sogogo was waiting for them and after listening to the story of the
successful fight said, “On the left hand side, the fourth lodge down, is
another lodge. Go there and rescue the other daughter. A seven-
headed monster is keeping her prisoner. Instruct the girl as the first.
The monster will enter and ask you to eat. When he winks change the
spoons, for there is poison in the wood. Then he will challenge you as
the first. Chop off his ear with your knife and when the daughter
sweeps it into the fire the creature will begin to die.”
Donya´dassi obeyed and events occurred exactly as Sogogo had
predicted. When in the fight Sogogo had cut off the left ear from the
seven-headed man and the ear had been swept into the fire, all seven
heads began to whine and the middle one said, “You have plotted to
kill me! You have been unfair! The woman has planned it. Oh you
wicked woman, you have been a traitor to me.”
“It is untrue,” shouted Donya´dassi. “Your own rule has been to
fight all who enter your door and now you are defeated. Before our
fight you boasted you would grind me in your mortar and
commanded me to do the same with you and feed your body to the
birds.”
“Agē, agē, agē!” moaned the monster and died.
“Shall I smash his body?” said Donya´dassi, but the maiden did
not know. “Go, then,” said he, “and ask Sogogo.”
When she returned she told him to grind the body to a pulp in the
corn mortar and hasten back to Sogogo who awaited him. Donya
´dassi pounded the monster heads and flung the mass to the big
crows that already had clustered about the lodge.
Running up the trail, with the girl following him, Donya´dassi
found Sogogo waiting. The two girls and Donya´dassi seated
themselves in the basket, Sogogo lifted it upon his head and in a
short time they emerged from the top of the mound and breathed the
outside air once again.
Sogogo led the three to his lodge far back in the forest where he
told all his history and then bade Donya´dassi run to the lodge of the
great chief and tell him to call a great council at which important
news would be revealed and presents given.
When the chief had listened to Donya´dassi he asked, “What news
can you bring and what presents can you give?”
“I have luck now,” was the answer.
The feast day came and people flocked from distant villages to hear
the news and receive the presents.
Donya´dassi arose and said, “I have come to tell our great chief
that his daughters have been found and are now safe and near here
and shall be restored on one condition, that he remove his spell from
a certain young man whom he has conjured.”
The chief was greatly angered that any condition should be given
and refused to grant it.
Meanwhile Donya´dassi was arranging long strings of wampum
and piles of skins in piles on the council house floor, one for each
person present.
“These cannot be distributed until our chief grants my condition,”
he said.
The chief remained obdurate. The people were anxious for their
feast and gifts. The chief’s wife begged him to consent and regain his
lost children. So, fearing the anger of his people and fury of his wife,
he at last asked that the young man who rested under the spell be
brought to him. Sogogo entered. The chief looked ashamed and then
frowned in anger. “Come,” he said and led the way to a small dome-
shaped lodge, pushed Sogogo in and then entered himself. Heating
some round stones he threw a handful of magical herbs upon them.
Then taking his rattle chanted a song. The smoke from the herbs
enveloped Sogogo and when the song ended he had become a
handsome young warrior. The chief and the transformed Sogogo
reëntered the council.
“Where are the daughters!” shouted the people.
Drawing out a red bark box from his pouch he opened it and out
fell the two girls. There was a great shout and the chief’s wife rushed
forward and embraced her children.
Donya´dassi distributed his presents.
Donya´dassi then advanced to the chief who gave him the reward,
but so small was it in comparison with Donya´dassi’s liberal gifts
that it seemed a mere trifle.
The chief soon lost his influence but Donya´dassi, who had grown
rich and successful, succeeded him in the hearts of the people but
Sogogo, the transformed, was happy with his two wives, the chief’s
daughters. He took both, that was all right in those days.
29. THE FLINT CHIP THROWER.
Long ago Tĕg´wandă’[37]
married a beautiful maiden and went far
away with her to his hunting grounds.
Tĕg´wandă’ was famous as a successful hunter but his wife’s family
had “dry bones”,[38]
so her elder sister and mother took council
together and said, “Come, let us go and live with Tĕg´wandă’ and we
shall ever be filled.” The prospect of a never failing supply of venison
and bear was tempting to those who had long subsisted on tubers
and maize.
The wife of Tĕg´wandă’ was kind and never questioned his actions.
He never went long from the house, yet he ever had game in
abundance and skins piled high in his stores. This made her marvel,
but she never made inquiries. The lodge was divided in two
compartments but the couple lived only in one. The other was almost
empty, but Tĕg´wandă’ often went there. She would hear him singing
alone in the room, then there would come a crash like a splintering
tree and soon afterward Tĕg´wandă’ would bring in a new pelt and
the carcass of some beast. This made her marvel but she never
questioned.
The young couple lived contentedly and never quarreled. No
trouble or sorrow came to mar their happiness until one day,
unheralded, came two women to the door of the lodge. These were
the wife’s mother and sister. When the unbidden guests had eaten
their fill of good and mealy nut pudding they began to seek the
excuse for complaint. Then, oh the railing, the endless rebukes, the
sneers and sarcasm! At last the matters turned from the lodge to the
couple themselves.
“How does Tĕg´wandă’ obtain his meat? Surely he must be a
wizard and likely to eat all of us women when his charms fail. He is
evil, he is lazy! Let us drive him away.” These and other things the
mother said to her daughter. So it came to pass that the sister
insisted she must go with the husband wherever he went and learn
something of his habits.
“If you must go,” said the wife, “obey him implicitly, else evil will
occur.”
The husband was downcast but would not yield to his fear of the
woman. Taking a basket of salt he sprinkled the white crystals upon a
flat rock and entered the closed room with the woman.
“Do not move or touch a thing,” he commanded. “Let no fear, let
no surprise cause you to stir!”
Then he commenced to sing. The woman looked about critically.
In one corner was a pile of quarry flakes, beside them a bench and in
a heap before it was a pile of keen edged flint chips. A sudden sound
drew her attention from the lodge. Tĕg´wandă’ ceased singing.
Outside some creature was snorting, “swe-i-i-i-sh, swe-i-i-i-sh!”
Picking up a handful of flint chips the man flung them with all his
strength against the wall nearest the flat rock. The woman was now
curious to find what was outside and pushed aside the curtain to get
a glimpse of the mysterious things. Instantly the entire door curtain
was torn from its fastenings and a monstrous elk rushed in and
trampled upon Tĕg´wandă’. Then tossing him upon its antlers,
bounded out and fled through the forest. The frightened woman ran
after the elk, but fell back dispairing. Moaning she crept back to the
lodge and confessed to the wife.
The wife burst into tears and then bitterly chided her sister for her
meddlesome ways. Throwing on her robes she hastened to rescue her
husband. Carefully she tracked the elk and after many days journey
she heard a low trembling song. She knew her husband was near, so
cautiously advancing she came to a spot where she could see a herd
of elks feeding in an open. A deer was grazing near by. Gently she
whispered. “Come, good brother, lend me your coat. You can do me
good service thereby.” “Certainly,” responded the deer with alacrity,
and, walking inconspicuously into the bushes, she removed her coat
and threw it upon the woman. In her new habiliments the wife
bounded off into the midst of the elks. In the middle and surrounded
by the rest was a large reclining elk whose antlers held the emaciated
form of Tĕg´wandă’. In a feeble whisper the husband sang.
Walking toward the elk she made a sudden dash and inserting her
horns beneath her husband’s body lifted him off and dashed away
before the astonished animals could remonstrate, and indeed, they
were too frightened to do so. Galloping breathlessly into the thicket
she set down her husband, removed the deer’s skin and gave it back
with expressions of gratitude. Then lifting her husband upon her
shoulders, she carried him homeward.
On her journey she pondered how she could restore him. He was
exhausted and covered with bruises and wounds, his body had
wasted away to a skeleton covered with skin and his mind was turned
with his sufferings. Sitting down upon a hollow log she pondered. A
sudden inspiration came. Quickly she pushed her husband into a
hollow log and gave him a shove with her foot that sent him sliding
through. When he emerged from the other end he was completely
restored.
Together they tramped back home happy to be together once
more. Entering the lodge the husband cast out the inquisitive sister
and quarrelsome mother and sent them running down the trail.
“One woman is sufficient female company for any man,” he said.
“More in one house make great trouble.”
VII.
HORROR TALES OF CANNIBALS AND
SORCERERS
HADUI MASK OF THE
FALSE FACE
COMPANY.
30. THE DUEL OF THE DREAM TEST
BETWEEN UNCLE AND NEPHEW.
There was a great long house built of poles and bark. This long
house was in a secluded place where men were not accustomed to
come, but there were sorcerers who knew its location, but shunned
it, for there lived Shogon
‘´gwā‘s and his nephew Djoñiaik. The
nephew was young when the uncle assumed charge of him, and he
had no real regard for the boy, for he had slain by sorcery all his near
relatives, and knew that he must some day overcome the orenda
(magic) that had accrued to the boy, or he himself would be undone.
Djoñiaik was carefully reared, for the uncle wished to make him
suffer at the end and cry out his weakness, thereby more greatly
enjoying the triumph over him.
When the boy had grown to the age just before he became eligible
for his dream fast, the uncle said, “Now my nephew, the time has
come when you should hunt for yourself without me. Go into the
forest and bring me meat.”
Thereupon Djoñiaik took his small bow and after a time found a
partridge which he shot. Bringing it to the lodge of his uncle he
presented it to the elder man. “Oh now, my nephew,” said
Shogon
gwas, “what is the name of this thing?”
“Oh my uncle,” replied the boy, “I have never known the name of
this kind of a thing.”
“Ho!” exclaimed the uncle, “How then do you expect to be able to
eat it?”
The boy then was given the task of cleaning the bird for soup, and
when it was ready the older man put it in a clay kettle and boiled it
with a gruel of corn meal. Then he lifted out the meat and placed it
with the fat gravy in a bark bowl which he laid aside for himself.
Taking another bowl he filled it with the thin soup from the middle of
the kettle and handed it over the fire to the boy. The boy reached
from his seat, stretching his arms and finally grasped the bowl, but as
he did so the uncle pulled on the bowl and the boy fell face forward
into the fire, scorching his chest and burning his hands. At this the
uncle roared and called him clumsy, asking moreover, “Where is
your soup? You have tried to put out the fire with it!”
With great gusto the uncle devoured the partridge, picking the
bones clean and casting them into the fire. Djoñiaik had nothing for
his meal and was very hungry. Wearily he wandered out into the
thicket, coming at length to an unfamiliar spot where there was a low
mound, as if a mud hut had fallen down and become overgrown. As
he looked at the spot he heard a sound, “Ketcuta, ketcuta!” Peering
more closely in the snow-covered moss he saw the face of a tcis´gä
(skull) looking at his with open mouth.
“I am your uncle,” said the skull. “Give me tobacco.”
Djoñiaik obeyed, and when the skull had smoked a pipeful, it
coughed and said, “I am your uncle, bewitched by my brother who
has stolen you in order to work vengeance on you for the power you
inherit from your relatives who have been killed by sorcery. You
must remember the names of the animals you kill and the next one
you shall find will be a raccoon. Remember its name and when your
guardian asks you its name tell him ‘raccoon’.”
In time the boy went hunting again and finding a raccoon shot it.
Greatly excited he began to repeat the name raccoon over and over.
“Raccoon, raccoon, raccoon, raccoon,” he shouted as he bore it to his
uncle’s lodge. But so rapidly was he running that he fell over the
door-sill and sprawled into the lodge.
“Oh now nephew, what have you this time?” inquired the uncle,
but so excited and chagrined was the boy that he totally forgot the
name. “Wa!” exclaimed the old man, “If you cannot speak the name
of this thing you shall not eat of it. Dress it for me and I will cook it
as a soup.”
When the raccoon was cooked the old man skimmed off the fat
and poured out some thin soup for Djoñiaik, who by this time was
very hungry. Uncle and nephew sat on seats opposite each other with
the lodge fire between. Passing over the bowl of soup the uncle gave a
quick jerk as the boy grasped the rim and again pulled him into the
fire.
“Oh nephew, I am sorry,” said he, laughing, “I am always in a
hurry.” But Djoñiaik was sadly burned about the face and made no
reply. With hungry eyes he watched his uncle stow away the uneaten
portion of the raccoon. He had not a mouthful.
That afternoon he again visited his skeletal uncle and related all
that had happened. He was thoroughly afraid now for his uncle was
most ugly. But the skull, when it had smoked, only advised him to
remember the names of the animals killed. “Today, I believe, you will
shoot a turkey. Remember the name and begin to use your power to
retaliate,” said the skull.
After watching quietly Djoñiaik saw a turkey,—a very large and fat
turkey, which he shot. Tying its feet together he held it to his back by
a burden strap and lugged it home, rushing into the lodge saying,
“Turkey, turkey, turkey, turkey.”
This time the uncle asked no questions, but with a frown watched
his nephew pluck the turkey and prepare it.
“This time I shall prepare a roast of meat,” said the boy. “I shall
not make soup as my uncle does.” So he cooked the turkey in a pot
and when done he divided the meat in two portions, putting each in a
bark bowl. “Now come eat, Uncle,” said the boy handing the bowl
over the fire to his uncle.
As the old man’s hand grasped the bowl, Djoñiaik gave it a quick
pull, overbalancing his uncle and pulling him into the fire.
“Oh nephew!” exclaimed the uncle. “You have purposely abused
me and burned my face and stomach. My hair is on fire. You have
distressed me.” But the boy said only, “Oh I was in such a hurry.”
And then he fell to eating the turkey, putting the uneaten portion on
the shelf over his bed. This time the old man ate nothing.
The next morning very early the boy said, “I shall now arise and
hunt game which comes to feed early in the morning.” So saying he
arose, dressed and took his bow and went out. The old man was
awake and looked very angry.
So Djoñiaik went directly to the skull and gave it tobacco. When it
had smoked it said, “You shall hunt today and shoot a deer, but when
you go back to the lodge your uncle will say, ‘It will be a cold night
and I will gather large logs for a night fire.’ He will awaken at
midnight with a dream and you must hit him on the head to awaken
him, when he will relate his desire, it being to barter meat for fat bear
casings. You must prepare yourself by taking a grape vine and
transforming it as desired.” So instructed the boy went upon his hunt
and killed a deer, bringing it home saying, “I have furnished a deer
for the larder.” That night after they had eaten of the deer, the old
man looked very angry.
“This will be a very cold night, I think,” said the old man. “I shall
gather logs to burn during the night.” And so saying he made a
roaring fire and went to bed.
Cautiously the nephew arranged his buffalo skin coverlet so that he
had a peep-hole through a worn spot. At midnight the uncle arose
and walking on his knees to the fire began to utter a worried sound,
“Eñh, enh, enh, enh!” Then he threw one of the burning logs upon
Djoñiaik, his nephew. Immediately the boy leaped up, being awake,
and threw the log back into the fireplace, at the same time crying,
“What is your dream, my uncle?” and then tapping the old man on
the head with a club.
“It has now ceased,” answered the uncle, rubbing his head and
becoming awake.
“The roof must be removed,” said the uncle, meaning that he had
dreamed that the two must engage in a duel of wits. “Tomorrow we
must barter, and I shall give, and you, Oh nephew, shall repay me
with that which I must not tell you, but which you must guess, and
failing great calamity will befall us.”
“That is very easy,” answered the boy. “Go to sleep; in the morning
I will be ready.”
Morning came and the old man began to sing. “Yoh heh, yoh heh,
yoh heh, I shall trade with my nephew Djoñiaik, and he shall give me
my desire.” So did he sing continually.
It was a song that only a sorcerer would sing and its sound traveled
far, so much so that all the wizards heard it and said, “Shogon
‘´gwā’s
is singing again and this time has chosen his own nephew as a
victim.” So they all came and perched about in the house, being
invisible, to watch the duel of orendas (magic powers).
Djoñiaik was bidden sit at the end of the long house, and it was
very long indeed, there being many abandoned fireplaces in it. Far at
the end he sat on the far side of an old fire bed. His uncle began to
sing again, and walked forward with a bark tray in which were pieces
of meat. “I offer these to you,” he said. “You shall give me what I am
thinking about.”
“Only give me a clue, uncle,” begged the boy. “How can I divine
what is in your mind?”
“Torture by fire awaits you if you guess not by mid-sun,” sang the
old man still holding out the meat, while the boy pretended to be
thinking deeply.
“Oh, uncle,” said the boy, “you desire raccoon meat.”
“No, not raccoon meat. Oh nephew, you must divine my word.”
“Oh uncle, you want turkey.”
“No not turkey. Oh nephew, you must divine my word.”
“Oh uncle, you want partridge.”
“No not partridge. Oh nephew you must divine my word.”
Again the boy sought to evade his uncle by exclaiming, “How can
you expect me to guess your dream unless you give me some clue to
your desire?”
Again the uncle fell to singing the charm song that conjures up
flames, and suddenly they burst forth from the ground with a loud
sound enveloping the poor nephew who wrestling with them, cried,
“Oh uncle your desire is for the bear casings enclosed in deep fat.”
“Niio‘!” exclaimed the uncle, and the flames died down,
whereupon Djoñiaik brought forth his grape stalk which he had
conjured to look like the casings of a bear. Then was the uncle
satisfied.
That afternoon the boy retired to the forest and sought his skeletal
advisor, telling him all that had happened.
“Once more,” said the skull, “your uncle will make a demand and
all the circumstances will be similar. This time he will desire a bear’s
liver. Go to a log in the swamp, pluck a red tree fungus and rub it
with your hands until it becomes a liver.”
So instructed the boy was ready for his wizard uncle. As before the
logs were gathered and a great fire made, and in the middle of the
night the old man flung fire upon the boy again.
When the dialogue was over the boy found that once more a test
was to come. “It is nothing,” said he. “Go to sleep.”
Morning came and the old wizard sang his charm song. The boy
took his seat as before and when pressed by the flame he cried out,
“You wish a liver of a bear, Oh uncle.”
The uncle was not at all pleased with his nephew’s power for he
wished to consume him with fire, after the manner prescribed for
torture, but he could not.
Reporting the event to the skull, the boy asked for further help.
“Tonight you must dream, and when your guardian has struck you
with a club to awaken you, you must crave the guessing of your word,
which shall be one of the squashes that grow in a sand box under
your uncle’s bed. It is a great prize. Have no mercy but get what you
demand.”
That night the boy gathered firewood, remarking that he expected
the night to be very cold and wanted to warm the lodge. The uncle
only scowled.
Midnight came, and the invisible wizards and sorcerers were
watching. Stealthily the boy arose, and creeping on his knees, he
approached the fire, grasping a blazing log and throwing it upon his
uncle, as sleeping persons do. Then he began to grunt, “Eñh, enh,
enh, enh,” as if in distress.
The uncle awoke, being severely scorched and his bed set afire.
“Oh nephew,” he called as he gave the boy a knock on the head to
awaken him. “What do you wish?”
“It has now ceased,” said the boy. “Oh uncle, I have dreamed that
you and I must exchange gifts, and that you must give me what I
desire.”
“It shall so be,” answered the uncle. “This is nothing.”
The two then retired and early in the morning the boy awoke and
took his seat. In a tray he had some turkey meat.
Commencing his song he called out, “I am trading a gift with
Shogon
‘´gwa‘s, my uncle. He shall give me in exchange what I most
desire.” So saying he sang the charm song that conjures flames from
the earth.
The old man took his seat and when approached said,
“I shall divine your word if you will give me a clue.”
“Any clue would spoil the intention of the dream, uncle.”
“Then tell me at once what you wish,—be quick about it!”
“To utter one word would be fatal to my desire.”
“Then the word is deer meat.”
“No not deer meat, uncle. Hurry for I shall sing.”
“Then you wish moose meat.”
“No not moose meat, uncle. Hurry or I shall sing.”
“Then you wish my coonskin robe.”
“No not your coonskin robe. I now commence to sing.”
“Then you wish my otterskin robe,” hastened the uncle, naming
one of his prized possessions.
“No uncle, not your otterskin robe. I now sing.”
With a burst of the conjurer’s song, the boy began to sing, “Yoh
heh, yoh heh, yoh heh. My uncle and I are exchanging. He shall give
me what I most desire.” As he sang his flames leaped from the
ground, for Djoñiaik was now an adept in magic. Surrounding the
uncle the flames began to singe him. With a shriek he leaped to the
platform above his bed, but the flames followed, until he called out,
“Oh nephew I yield!”
Descending he said, “You desire the squash beneath my bed,” and
the boy exclaimed, “It is so.”
With great reluctance the old wizard opened the bed, lifting up the
bottom boards like the top of a chest. Beneath in boxes of sand were
vines with squashes growing upon them, though it was winter
outside. Taking a look at the largest, the old man shut down the
cover and exclaimed:
“Oh nephew, it is the custom to simulate what is desired in a
dream. I shall now carve you from wood a squash that you may
preserve as a charm.”
“Only the real object desired shall satisfy me,” answered the boy.
“Must I sing again?” And he started his song which brought forth
flames that enshrouded the old man, causing him to cry out, “Oh
nephew, I yield!”
This time the boy obtained the squash and with it the injunction to
take care of it, for it was a great prize.
Reporting the episode to the skull, the boy received further
instruction. He was to dream again and was to demand as the
satisfying word, his hidden sister who was concealed in a bark case
beneath the wizard’s bed. This was a great surprise to the boy, for he
had not dreamed that he had a sister concealed, this being the
treatment given children born with a caul. They were hidden by day
and only allowed to go out by night.
“The wizard hopes to keep the child,” said the skull. “It is his
greatest prize and unless you are very firm he will cause you to err,
thereby escaping your demand. Have no pity but push him to the
uttermost with your demand.”
Again the boy built the lodge fire and as midnight came, he crept
from his coverings and crawled along the floor of the great cavernous
lodge. Slowly creeping to the fire he seized a blazing log and with a
cry flung it upon his sleeping uncle, at the same time grunting, “Enh,
enh, enh, enh,” as if in distress.
With a whack of his club the old man awakened the boy, who
called out, “It has ceased,” meaning the vision.
“Oh uncle,” he said. “I have dreamed that you must give me
something in exchange for the gift I shall offer you tomorrow.”
“It shall be done,” answered the uncle with a dark frown.
Morning came and with it the test. Long the old man sought to
cause the boy to make one small slip in the custom but he failed.
Mid-day came and as the sun beat down through the smoke hole the
boy began his charm song, causing flames to arise as torture for the
old wizard.
After much haggling the old man opened his bed once more and
revealed a bark case beautifully decorated. He removed this and
placed it on a mat, after which he opened the case and unwrapped a
small woman, beautifully white, and perfect in form, though only as
long as a man’s arm.
“Oh nephew,” said the uncle, “Now that you have seen your sister,
I will replace her and give you what is customary in such instances, a
carved imitation. You will be greatly pleased with the doll I give you.”
In reply the boy gave his charm song and again the magic flames
circled about the uncle like a clinging garment. “Oh nephew, I yield,”
he cried and handed over the case.
After much haggling the old man opened his bed once assured that
success would come if he withstood one more test,—that of bodily
torture by cold. “Your uncle will dream tonight and his word will be
satisfied only by causing you to be divested of all clothing and tied to
a bark toboggan and dragged ten times around the long house where
you dwell. I know not that you will endure, for your magic is equal.”
As predicted the old man dreamed that his nephew strip the next
morning, though the weather was extremely cold. “I must drag you
around the lodge ten times,” said the uncle, but first I must bind you
securely with thongs.”
“It will be very easy,” said the boy. “Really, it is nothing at all.”
Emerging from the door the boy stood in the intense cold and
stripped himself, throwing his garments back into the lodge. “Now I
am ready,” said he, and his uncle then bound him tightly with
thongs, placing him on the bark toboggan.
After the first trip around the uncle called out, “Oh nephew, are
you still alive?” And the boy answered, “Yes, uncle,” in his loudest
tones.
For a second time the uncle made a circuit of the long house,
which was the longest in the world, and again called out, “Oh
nephew, are you alive?” receiving an answer just a bit fainter, “Yes,
uncle.”
Each time around the uncle asked the same question and each
time the answer was fainter until the ninth time his nephew’s voice
was scarcely audible. So he made another circuit, thinking as he
made it, “This time he is frozen as stiff as an icicle.”
So when he had completed his tenth round he spoke again, “Oh
nephew, are you alive?” And to his great surprise the boy called in
the most sprightly tones, “Yes uncle,” whereupon he was released of
the cords and entered the lodge.
All this the boy reported to the skull who said, “On this night you
shall dream, and you shall demand that your wizard uncle submit to
the same ordeal. Allow him no mercy, for if he gains in one point all
is lost.”
Midnight came and with it the episode of the dream demand. The
old man weakly yielded and then both slept until morning. The test
then began, but the old man begged, saying, “I am old and if you will
allow me to retain my clothing you will be satisfied.” But the nephew
answered, “Oh no, uncle, I must be satisfied according to my desires.
What you say has nothing to do with the event.”
“Then do not bind me, for the cords will cut my flesh and this is
not a part of the demand.”
Nevertheless the boy bound his uncle and threw him on his
toboggan. With the completion of each circuit he would ask his uncle
if he were alive, and each time would be assured that he was. Upon
finishing the ninth trip he again asked, “Uncle, are you alive?” but
there was no reply and drawing the toboggan to the door he felt of
his uncle and found him frozen as stiff as an icicle.
He thereupon, lifted the toboggan high, and his uncle was upon it.
With a mighty fling he threw it afar and when it came down with a
crash his uncle broke into bits like an image of ice.
Reporting the event to the skull he was praised for his endurance.
“Now we shall all live again and those who have been overcome by
magic will be set free,” said the skull. “Cover me with a bear skin and
when I call lift me from the ground.” Soon he called and Djoñiaik
grasped the skull and lifted it from the earth and with it the cramped
body of the tcisga. Rubbing it with his hands and anointing it he
restored it to the form of a normal man.
“I am your uncle, restored,” said the former skeleton. “Let us now
search for your father and mother.” Together they set off and found
another mound from which they conjured the skeletons of a man and
a woman, and restored them by rubbing and by oil.
All with great joy returned to the long house where they attended
to the little sister, Djoñiaik rubbing her as was his custom and
restoring her to a full grown maiden.
Everyone was now happy, and the roosting wizards silently
departed, leaving the great long house habitable for the restored
family, and soon more men and women and children came to live in
the long house and it became a dwelling where all were happy.
31. THE VAMPIRE SIRENS WHO WERE
OVERCOME BY THE BOY WHOSE UNCLE
POSSESSED A MAGIC FLUTE.
There was a long bark lodge, alone by itself in a small clearing.
Here dwelt an elderly man and his nephew. Hadno’´sĕn
, the uncle,
possessed a marvelous flute, which he kept in his war bundle,
wherein also were all his charms for luck in warfare and in hunting.
The flute possessed great power, and it was the oracle most
consulted by the old man. Misfortune had befallen the people
through the machinations of certain sorcerers, and the flute
remained the only potent charm left by which the old man might
foretell events.
As the uncle grew older he began to worry about the future, for he
was reaching the age when men cease to go on hunting excursions.
Now his nephew, Hauñwan
´dĕn
’, was at the age when it was
considered that a boy is not yet ready for the rigors of the chase.
Therefore, the old uncle was perplexed.
On a certain night the old man came home to the great empty bark
lodge and threw down a deer. “This is my last hunt,” he exclaimed.
“My nephew, you must soon learn to shoot.”
“Oh I can shoot as well as any one,” said the boy with great
assurance, and so the old man gave him his bow and an arrow.
“Shoot the spot where I have hit that stump with an arrow,” said the
old man, and the boy taking the big bow and long arrow, pulled the
cord back and shot. His arrow struck the very spot where his uncle
had pointed out an arrow mark. “Tcă‘, tcă‘!” exclaimed the old man.
“You are now able to shoot. Tomorrow you may go hunting, but first
wait, I will tell you what animal you will be able to kill.”
So saying the uncle took his flute from its bundle and examined it.
Then he blew a few notes of a charm song upon it. In another
moment the flute itself uttered notes though nobody blew upon it.
“This indicates that you will kill a deer,” announced the uncle.
The next day Hauñwandeh went into the forest alone and shot a
deer, which he brought home to his uncle. “This is good,” said the
uncle. “Now let me consult my flute again.”
Once again he blew the notes of the charm song upon his flute,
waited a moment and then heard it call out, “Two deer shall be killed
tomorrow.”
“Now, my nephew,” said the uncle looking very grave, “I must tell
you that while you must in the future hunt for both of us, you must
never go south. Listen to what I say, never go south.”
On the morrow the boy returned dragging two deer and threw
them on the ground outside his uncle’s doorway. Again the uncle
expressed his satisfaction, and again he consulted his flute. “My
nephew,” he announced after listening to the oracle, “tomorrow you
shall kill a deer and a fat bear. Again I warn you never to go south.”
The boy that night had troubled dreams and through his mind the
question was repeated over and over, “Why may I not go south, Oh
why may I not go south?”
The hunting continued each day as before, but the boy was greatly
troubled about his uncle’s command. Nevertheless he obeyed until
he saw that the lodge was well supplied with meat which hung in the
smoke from every rafter, curing for winter’s use. Then he thought
that come what might to him he would go south, and if he died his
uncle would have plenty to eat for a long time.
So resolved he went on his hunt, and by taking a circuitous route,
he went from east to south. Soon he found the trail of an elk which he
followed southward for a very long ways. Greatly fatigued by the
chase he still kept up the pursuit, until he came to a little open place
in the forest, where to his great surprise he saw a young woman
sitting on a log at the side of the trail. She looked up at him with a
bewitching smile and said, “Come sit on the log with me, you look
tired.”
Hauñwandeh looked at her, found her pleasing, and so went to the
log and sat down, saying nothing. Soon the girl spoke again. “It is not
customary,” said she, “for young people to sit so far apart when they
meet as we have done. Draw close to me and rest your head on my
lap, for you are very tired.”
MAGIC
WHIST
LE.
This
whistle,
used in
shaman
istic
ceremo
nies, is
made
from an
eagle’s
wing
bone.
The boy therefore sat closely to her and then placed his
head in her lap. Thereupon the girl fell to stroking his hair
and scratching his head, looking the while for wood lice. As
she did this the boy began to feel sleepy and fearing
something of evil might befall him tied one of his hairs to a
root beneath the log, which act the girl did not notice. Then
he fell into a deep sleep.
When the young woman saw that he was fully asleep she
began to pat his body with her hand, and the boy shrunk in
size with every pat until he was so small that the young
woman placed him with ease in the basket she carried. Then
she leaped into the air and flew away, as witches do. In a
short time, however, she came to a halt and was slowly
drawn back to the log from which she had started. The hair
had stretched its limit and drew her back. She took the boy
out of the basket and struck him with a small paddle and he
became restored. “I will fix him next time,” thought she.
Hauñwandeh was now in the power of the witch-girl and
stayed all day with her, until he became sleepy again, when
she stroked his head once more, putting him to sleep.
Making him small by patting, she again placed him in her
basket and flew through the air to a river bank. Taking him
out she asked, “Do you know where you are?” Hoping to
destroy her magic he answered, “Oh yes, I know where I am.
This is the place where my uncle and I catch our fish.” So
she put him in her basket and flew to an island in a large
lake. Taking him out she questioned him further, “Do you
know this place?” Still hoping to deceive her he answered, “Oh this is
the place where my uncle and I come with our canoe.”
Angry that she could not take him to an unfamiliar spot the witch-
girl replaced him in her basket and leaped high in the air, this time
taking him to a far distant place. Descending she alighted on the edge
of a great precipice, so deep that the tops of the trees below were only
faintly visible. She gave a shriek and threw the basket over the cliff.
Now Hauñwandeh, being attacked by the powers of witchcraft,
began to develop his own magic power, and when he went over the
cliff and felt himself falling, he desired to fall as an autumn leaf, and
so he fluttered down to the bottom without injury. He tumbled out of
Welcome to our website – the perfect destination for book lovers and
knowledge seekers. We believe that every book holds a new world,
offering opportunities for learning, discovery, and personal growth.
That’s why we are dedicated to bringing you a diverse collection of
books, ranging from classic literature and specialized publications to
self-development guides and children's books.
More than just a book-buying platform, we strive to be a bridge
connecting you with timeless cultural and intellectual values. With an
elegant, user-friendly interface and a smart search system, you can
quickly find the books that best suit your interests. Additionally,
our special promotions and home delivery services help you save time
and fully enjoy the joy of reading.
Join us on a journey of knowledge exploration, passion nurturing, and
personal growth every day!
testbankfan.com

More Related Content

PDF
Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis S...
PPTX
Array 1D.................................pptx
PPTX
Lecture-5_Arrays.pptx FOR EDUCATIONAL PURPOSE
PPTX
C_Arrays(3)bzxhgvxgxg.xhjvxugvxuxuxuxvxugvx.pptx
PPT
02 c++ Array Pointer
PPTX
Lecture 5Arrays on c++ for Beginner.pptx
PPTX
Arrays_in_c++.pptx
PPTX
Data structure array
Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis S...
Array 1D.................................pptx
Lecture-5_Arrays.pptx FOR EDUCATIONAL PURPOSE
C_Arrays(3)bzxhgvxgxg.xhjvxugvxuxuxuxvxugvx.pptx
02 c++ Array Pointer
Lecture 5Arrays on c++ for Beginner.pptx
Arrays_in_c++.pptx
Data structure array

Similar to Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Solutions Manual (20)

PPTX
5 ARRAYS AND STRINGSjiuojhiooioiiouioi.pptx
PPT
Computer Programming- Lecture 8
PPTX
CSCI 238 Chapter 08 Arrays Textbook Slides
PPT
Lecture#8 introduction to array with examples c++
PPT
Fp201 unit4
PPTX
Data structure.pptx
PPT
Lecture#5-Arrays-oral patholohu hfFoP.ppt
DOCX
Array assignment
PPT
2DArrays.ppt
PPT
2621008 - C++ 4
PPTX
Arrays
PDF
05_Arrays C plus Programming language22.pdf
PPTX
Chapter-Five.pptx
PPT
9781423902096_PPT_ch09.ppt
PDF
Chapter12 array-single-dimension
PPT
CHAPTER-5.ppt
PPTX
Arrays matrix 2020 ab
PPTX
Arrays_and_Strings_in_C_Programming.pptx
PPTX
Structured data type
PPT
9781285852744 ppt ch08
5 ARRAYS AND STRINGSjiuojhiooioiiouioi.pptx
Computer Programming- Lecture 8
CSCI 238 Chapter 08 Arrays Textbook Slides
Lecture#8 introduction to array with examples c++
Fp201 unit4
Data structure.pptx
Lecture#5-Arrays-oral patholohu hfFoP.ppt
Array assignment
2DArrays.ppt
2621008 - C++ 4
Arrays
05_Arrays C plus Programming language22.pdf
Chapter-Five.pptx
9781423902096_PPT_ch09.ppt
Chapter12 array-single-dimension
CHAPTER-5.ppt
Arrays matrix 2020 ab
Arrays_and_Strings_in_C_Programming.pptx
Structured data type
9781285852744 ppt ch08
Ad

Recently uploaded (20)

PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Computing-Curriculum for Schools in Ghana
PPTX
Presentation on HIE in infants and its manifestations
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
RMMM.pdf make it easy to upload and study
PDF
01-Introduction-to-Information-Management.pdf
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PPTX
GDM (1) (1).pptx small presentation for students
PPTX
Institutional Correction lecture only . . .
PPTX
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
PPTX
Cell Types and Its function , kingdom of life
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PPTX
Final Presentation General Medicine 03-08-2024.pptx
Microbial disease of the cardiovascular and lymphatic systems
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Chinmaya Tiranga quiz Grand Finale.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
O5-L3 Freight Transport Ops (International) V1.pdf
Computing-Curriculum for Schools in Ghana
Presentation on HIE in infants and its manifestations
FourierSeries-QuestionsWithAnswers(Part-A).pdf
RMMM.pdf make it easy to upload and study
01-Introduction-to-Information-Management.pdf
STATICS OF THE RIGID BODIES Hibbelers.pdf
GDM (1) (1).pptx small presentation for students
Institutional Correction lecture only . . .
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
Cell Types and Its function , kingdom of life
O7-L3 Supply Chain Operations - ICLT Program
Anesthesia in Laparoscopic Surgery in India
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Final Presentation General Medicine 03-08-2024.pptx
Ad

Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Solutions Manual

  • 1. Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Solutions Manual download https://testbankfan.com/product/starting-out-with-c-from-control- structures-to-objects-8th-edition-gaddis-solutions-manual/ Find test banks or solution manuals at testbankfan.com today!
  • 2. We have selected some products that you may be interested in Click the link to download now or visit testbankfan.com for more options!. Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Test Bank https://testbankfan.com/product/starting-out-with-c-from-control- structures-to-objects-8th-edition-gaddis-test-bank/ Starting Out With C++ From Control Structures To Objects 9th Edition Gaddis Solutions Manual https://testbankfan.com/product/starting-out-with-c-from-control- structures-to-objects-9th-edition-gaddis-solutions-manual/ Starting Out With C++ From Control Structures To Objects 7th Edition Gaddis Solutions Manual https://testbankfan.com/product/starting-out-with-c-from-control- structures-to-objects-7th-edition-gaddis-solutions-manual/ Americas History Concise Edition Volume 2 9th Edition Edwards Test Bank https://testbankfan.com/product/americas-history-concise-edition- volume-2-9th-edition-edwards-test-bank/
  • 3. Chemistry 7th Edition McMurry Test Bank https://testbankfan.com/product/chemistry-7th-edition-mcmurry-test- bank/ Microeconomics 9th Edition Parkin Test Bank https://testbankfan.com/product/microeconomics-9th-edition-parkin- test-bank/ Business Ethics Ethical Decision Making and Cases 12th Edition Ferrell Test Bank https://testbankfan.com/product/business-ethics-ethical-decision- making-and-cases-12th-edition-ferrell-test-bank/ Managerial Accounting 3rd Edition Braun Test Bank https://testbankfan.com/product/managerial-accounting-3rd-edition- braun-test-bank/ Principles of Microeconomics 8th Edition Mankiw Test Bank https://testbankfan.com/product/principles-of-microeconomics-8th- edition-mankiw-test-bank/
  • 4. Environment The Science Behind the Stories 6th Edition Withgott Test Bank https://testbankfan.com/product/environment-the-science-behind-the- stories-6th-edition-withgott-test-bank/
  • 5. PURPOSE 1. To introduce and allow students to work with arrays 2. To introduce the typedef statement 3. To work with and manipulate multidimensional arrays PROCEDURE 1. Students should read the Pre-lab Reading Assignment before coming to lab. 2. Students should complete the Pre-lab Writing Assignment before coming to lab. 3. In the lab, students should complete labs assigned to them by the instructor. L E S S O N S E T 7 Arrays Contents Pre-requisites Approximate completion time Page number Check when done Pre-lab Reading Assignment 20 min. 114 Pre-lab Writing Assignment Pre-lab reading 10 min. 122 LESSON 7A Lab 7.1 Working with One- Basic understanding of 30 min. 123 Dimensional Arrays one-dimensional arrays Lab 7.2 Strings as Arrays of Basic understanding of 20 min. 126 Characters arrays of characters LESSON 7B Lab 7.3 Working with Two- Understanding of multi- 30 min. 129 Dimensional Arrays dimensional arrays Lab 7.4 Student Generated Code Basic understanding 30 min. 134 Assignments of arrays 113
  • 6. 114 LESSON SET 7 Arrays PRE-LAB READING ASSIGNMENT One-Dimensional Arrays So far we have talked about a variable as a single location in the computer’s memory. It is possible to have a collection of memory locations, all of which have the same data type, grouped together under one name. Such a collection is called an array. Like every variable, an array must be defined so that the com- puter can “reserve” the appropriate amount of memory. This amount is based upon the type of data to be stored and the number of locations, i.e., size of the array, each of which is given in the definition. Example: Given a list of ages (from a file or input from the keyboard), find and display the number of people for each age. The programmer does not know the ages to be read but needs a space for the total number of occurrences of each “legitimate age.” Assuming that ages 1, 2, . . . , 100 are possible, the following array definition can be used. const int TOTALYEARS = 100; int main() { int ageFrequency[TOTALYEARS]; //reserves memory for 100 ints : return 0; } Following the rules of variable definition, the data type (integer in this case) is given first, followed by the name of the array (ageFrequency), and then the total number of memory locations enclosed in brackets. The number of memory loca- tions must be an integer expression greater than zero and can be given either as a named constant (as shown in the above example) or as a literal constant (an actual number such as 100). Each element of an array, consisting of a particular memory location within the group, is accessed by giving the name of the array and a position with the array (subscript). In C++ the subscript, sometimes referred to as index, is enclosed in square brackets. The numbering of the subscripts always begins at 0 and ends with one less than the total number of locations. Thus the elements in the ageFrequency array defined above are referenced as ageFrequency[0] through ageFrequency[99]. 0 1 2 3 4 5 . . . . . . 97 98 99 If in our example we want ages from 1 to 100, the number of occurrences of age 4 will be placed in subscript 3 since it is the “fourth” location in the array. This odd way of numbering is often confusing to new programmers; however, it quickly becomes routine.1 1 Some students actually add one more location and then ignore location 0, letting 1 be the first location. In the above example such a process would use the following definition: int agefrequency[101]; and use only the subscripts 1 through 100. Our examples will use location 0. Your instructor will tell you which method to use.
  • 7. Pre-lab Reading Assignment 115 Array Initialization In our example, ageFrequency[0] keeps a count of how many 1s we read in, ageFrequency[1] keeps count of how many 2s we read in, etc. Thus, keeping track of how many people of a particular age exist in the data read in requires reading each age and then adding one to the location holding the count for that age. Of course it is important that all the counters start at 0. The following shows the initialization of all the elements of our sample array to 0. for (int pos = 0; pos < TOTALYEARS; pos++) // pos acts as the array subscript { ageFrequency[pos] = 0; } A simple for loop will process the entire array, adding one to the subscript each time through the loop. Notice that the subscript (pos) starts with 0. Why is the con- dition pos < TOTALYEARS used instead of pos <= TOTALYEARS? Remember that the last subscript is one less than the total number of elements in the array. Hence the subscripts of this array go from 0 to 99. Array Processing Arrays are generally processed inside loops so that the input/output processing of each element of the array can be performed with minimal statements. Our age frequency program first needs to read in the ages from a file or from the key- board. For each age read in, the “appropriate” element of the array (the one cor- responding to that age) needs to be incremented by one. The following examples show how this can be accomplished: from a file using infile as a logical name from a keyboard with –99 as sentinel data cout << "Please input an age from one" << "to 100. input -99 to stop" << endl; infile >> currentAge; cin >> currentAge; while (infile) while (currentAge != -99) { { ageFrequency[currentAge-1] = ageFrequency[currentAge-1] = ageFrequency[currentAge-1] + 1; ageFrequency[currentAge-1] + 1; infile >> currentAge; cout << "Please input an age from " << "one to 100. input -99 to stop" << endl; cin >> currentAge; } } The while(infile) statement means that while there is more data in the file infile, the loop will continue to process. To read from a file or from the keyboard we prime the read,2 which means the first value is read in before the test condition is checked to see if the loop 2 Priming the read for a while loop means having an input just before the loop condition (just before the while) and having another one as the last statement in the loop.
  • 8. 4 0 14 5 0 6 1 0 116 LESSON SET 7 Arrays should be executed. When we read an age, we increment the location in the array that keeps track of the amount of people in the corresponding age group. Since C++ array indices always start with 0, that location will be at the subscript one value less than the age we read in. 0 1 2 3 4 5 . . . . . . 98 99 1 year 2 years 3 years 4 years 5 years 6 years 99 years 100 years Each element of the array contains the number of people of a given age. The data shown here is from a random sample run. In writing the information stored in the array, we want to make sure that only those array elements that have values greater than 0 are output. The following code will do this. for (int ageCounter = 0; ageCounter < TOTALYEARS; ageCounter++) if (ageFrequency[ageCounter] > 0) cout << "The number of people " << ageCounter + 1 <<" years old is " << ageFrequency[ageCounter] << endl; The for loop goes from 0 to one less than TOTALYEARS (0 to 99). This will test every element of the array. If a given element has a value greater than 0, it will be output. What does outputting ageCounter + 1 do? It gives the age we are deal- ing with at any given time, while the value of ageFrequency[ageCounter] gives the number of people in that age group. The complete age frequency program will be given as one of the lab assign- ments in Lab 7.4. Arrays as Arguments Arrays can be passed as arguments (parameters) to functions. Although variables can be passed by value or reference, arrays are always passed by pointer, which is similar to pass by reference, since it is not efficient to make a “copy” of all ele- ments of the array. Pass by pointer is discussed further in Lesson Set 9. This means that arrays, like pass by reference parameters, can be altered by the call- ing function. However, they NEVER have the & symbol between the data type and name, as pass by reference parameters do. Sample Program 7.1 illustrates how arrays are passed as arguments to functions. Sample Program 7.1: // The grade average program // This program illustrates how one-dimensional arrays are used and how // they are passed as arguments to functions. It contains two functions. // The first function is called to allow the user to input a set of grades and // store them in an array. The second function is called to find the average // grade. #include <iostream> using namespace std;
  • 9. Pre-lab Reading Assignment 117 const int TOTALGRADES = 50; // TOTALGRADES is the maximum size of the array // function prototypes void getData(int array[], int& sizeOfArray); // the procedure that will read values into the array float findAverage(const int array[], int sizeOfArray); // the procedure that will find the average of values // stored in an array. The word const in front of the // data type of the array prevents the function from // altering the array int main() { int grades[TOTALGRADES]; // defines an array that holds up to 50 ints int numberOfGrades = 0; // the number of grades read in float average; // the average of all grades read in getData(grades, numberOfGrades); // getData is called to read the grades into // the array and store how many grades there // are in numberOfGrades average = findAverage(grades, numberOfGrades); cout << endl << "The average of the " << numberOfGrades << " grades read in is " << average << "." << endl << endl; return 0; } //*********************************************************************** // getData // // task: This function inputs and stores data in the grades array. // data in: none (the parameters contain no information needed by the // getData function) // data out: an array containing grades and the number of grades //*********************************************************************** void getData(int array[], int& sizeOfArray) { int pos = 0; // array index which starts at 0 int grade; // holds each individual grade read in cout << "Please input a grade or type -99 to stop: " << endl; cin >> grade; continues
  • 10. 118 LESSON SET 7 Arrays while (grade != -99) { array[pos] = grade; // store grade read in to next array location pos ++; // increment array index cout << "Please input a grade or type -99 to stop: " << endl; cin >> grade; } sizeOfArray = pos; // upon exiting the loop, pos holds the // number of grades read in, which is sent // back to the calling function } //**************************************************************************** // findAverage // // task: This function finds and returns the average of the values // // data in: the array containing grades and the array size // data returned: the average of the grades contained in that array //**************************************************************************** float findAverage (const int array[], int sizeOfArray) { int sum = 0; // holds the sum of all grades in the array for (int pos = 0; pos < sizeOfArray; pos++) { sum = sum + array[pos]; // add grade in array position pos to sum } return float(sum)/sizeOfArray; } Notice that a set of empty brackets [ ] follows the parameter of an array which indicates that the data type of this parameter is in fact an array. Notice also that no brackets appear in the call to the functions that receive the array. Since arrays in C++ are passed by pointer, which is similar to pass by reference, it allows the original array to be altered, even though no & is used to designate this. The getData function is thus able to store new values into the array. There may be times when we do not want the function to alter the values of the array. Inserting the word const before the data type on the formal parameter list pre- vents the function from altering the array even though it is passed by pointer. This is why in the preceding sample program the findAverage function and header had the word const in front of the data type of the array. float findAverage (const int array[], int sizeOfArray); // prototype float findAverage (const int array[], int sizeOfArray) // function header
  • 11. Pre-lab Reading Assignment 119 The variable numberOfGrades contains the number of elements in the array to be processed. In most cases not every element of the array is used, which means the size of the array given in its definition and the number of actual elements used are rarely the same. For that reason we often pass the actual number of ele- ments used in the array as a parameter to a procedure that uses the array. The variable numberOfGrades is explicitly passed by reference (by using &) to the getData function where its corresponding formal parameter is called sizeOfArray. Prototypes can be written without named parameters. Function headers must include named parameters. float findAverage (const int [], int); // prototype without named parameters The use of brackets in function prototypes and headings can be avoided by declaring a programmer defined data type. This is done in the global section with a typedef statement. Example: typedef int GradeType[50]; This declares a data type, called GradeType, that is an array containing 50 inte- ger memory locations. Since GradeType is a data type, it can be used in defining variables. The following defines grades as an integer array with 50 elements. GradeType grades; It has become a standard practice (although not a requirement) to use an upper- case letter to begin the name of a data type. It is also helpful to include the word “type” in the name to indicate that it is a data type and not a variable. Sample Program 7.2 shows the revised code (in bold) of Sample Program 7.1 using typedef. Sample Program 7.2: // Grade average program // This program illustrates how one-dimensional arrays are used and how // they are passed as arguments to functions. It contains two functions. // The first function is called to input a set of grades and store them // in an array. The second function is called to find the average grade. #include <iostream> using namespace std; const int TOTALGRADES = 50; // maximum size of the array // function prototypes typedef int GradeType[TOTALGRADES]; // declaration of an integer array data type // called GradeType continues
  • 12. 120 LESSON SET 7 Arrays void getData(GradeType array, int& sizeOfArray); // the procedure that will read values into the array float findAverage(const GradeType array, int sizeOfArray); // the procedure that will find the average of values // stored in an array. The word const in front of the // data type of the array prevents the function from // altering the array int main() { GradeType grades; // defines an array that holds up to 50 ints int numberOfGrades = 0; // the number of grades read in float average; // the average of all grades read in getData(grades, numberOfGrades);// getData is called to read the grades into // the array and store how many grades there // are in numberOfGrades average = findAverage(grades, numberOfGrades); cout << endl << "The average of the " << numberOfGrade << " grades read in is " << average << "." << endl << endl; return 0; } //*********************************************************************** // getData // // task: This function inputs and stores data in the grades array. // data in: none // data out: an array containing grades and the number of grades //*********************************************************************** void getData(GradeType array, int& sizeOfArray) { int pos = 0; // array index which starts at 0 int grade; // holds each individual grade read in cout << "Please input a grade or type -99 to stop: " << endl; cin >> grade; while (grade != -99) { array[pos] = grade; // store grade read in to next array location pos ++; // increment array index cout << "Please input a grade or type -99 to stop: " << endl; cin >> grade; }
  • 13. Pre-lab Reading Assignment 121 sizeOfArray = pos; // upon exiting the loop, pos holds the // number of grades read in, which is sent // back to the calling function } //**************************************************************************** // findAverage // // task: This function finds and returns the average of the values // // data in: the array containing grades and the array size // data returned: the average of the grades contained in that array //**************************************************************************** float findAverage (const GradeType array, int sizeOfArray) { int sum = 0; // holds the sum of all grades in the array for (int pos = 0; pos < sizeOfArray; pos++) { sum = sum + array[pos]; // add grade in array position pos to sum } return float(sum)/sizeOfArray; } This method of using typedef to eliminate brackets in function prototypes and headings is especially useful for multi-dimensional arrays such as those intro- duced in the next section. Two-Dimensional Arrays Data is often contained in a table of rows and columns that can be implement- ed with a two-dimensional array. Suppose we want to read data representing profits (in thousands) for a particular year and quarter. Quarter 1 Quarter 2 Quarter 3 Quarter 4 72 80 10 100 82 90 43 42 10 87 48 53 This can be done using a two-dimensional array. Example: const NO_OF_ROWS = 3; const NO_OF_COLS = 4; typedef float ProfitType[NO_OF_ROWS][NO_OF_COLS]; //declares a new data type //which is a 2 dimensional //array of floats continues
  • 14. 122 LESSON SET 7 Arrays int main() { ProfitType profit; // defines profit as a 2 dimensional array for (int row_pos = 0; row_pos < NO_OF_ROWS; row_pos++) for (int col_pos = 0; col_pos < NO_OF_COLS; col_pos++) { cout << "Please input a profit" << endl; cin >> profit[row_pos][col_pos]; } return 0; } A two dimensional array normally uses two loops (one nested inside the other) to read, process, or output data. How many times will the code above ask for a profit? It processes the inner loop NO_OF_ROWS * NO_OF_COLS times, which is 12 times in this case. Multi-Dimensional Arrays C++ arrays can have any number of dimensions (although more than three is rarely used). To input, process or output every item in an n-dimensional array, you need n nested loops. Arrays of Strings Any variable defined as char holds only one character. To hold more than one character in a single variable, that variable needs to be an array of characters. A string (a group of characters that usually form meaningful names or words) is really just an array of characters. A complete lesson on characters and strings is given in Lesson Set 10. PRE-LAB WRITING ASSIGNMENT Fill-in-the-Blank Questions 1. The first subscript of every array in C++ is and the last is less than the total number of locations in the array. 2. The amount of memory allocated to an array is based on the and the of locations or size of the array. 3. Array initialization and processing is usually done inside a . 4. The statement can be used to declare an array type and is often used for multidimensional array declarations so that when passing arrays as parameters, brackets do not have to be used. 5. Multi-dimensional arrays are usually processed within loops. 6. Arrays used as arguments are always passed by .
  • 15. Lesson 7A 123 7. In passing an array as a parameter to a function that processes it, it is often necessary to pass a parameter that holds the of used in the array. 8. A string is an array of . 9. Upon exiting a loop that reads values into an array, the variable used as a(n) to the array will contain the size of that array. 10. An n-dimensional array will be processed within nested loops when accessing all members of the array. LESSON 7A LAB 7.1 Working with One-Dimensional Arrays Retrieve program testscore.cpp from the Lab 7 folder. The code is as follows: // This program will read in a group of test scores (positive integers from 1 to 100) // from the keyboard and then calculate and output the average score // as well as the highest and lowest score. There will be a maximum of 100 scores. // PLACE YOUR NAME HERE #include <iostream> using namespace std; typedef int GradeType[100]; // declares a new data type: // an integer array of 100 elements float findAverage (const GradeType, int); // finds average of all grades int findHighest (const GradeType, int); // finds highest of all grades int findLowest (const GradeType, int); // finds lowest of all grades int main() { GradeType grades; // the array holding the grades. int numberOfGrades; // the number of grades read. int pos; // index to the array. float avgOfGrades; // contains the average of the grades. int highestGrade; // contains the highest grade. int lowestGrade; // contains the lowest grade. // Read in the values into the array pos = 0; cout << "Please input a grade from 1 to 100, (or -99 to stop)" << endl; continues
  • 16. 124 LESSON SET 7 Arrays cin >> grades[pos]; while (grades[pos] != -99) { // Fill in the code to read the grades } numberOfGrades = ; // Fill blank with appropriate identifier // call to the function to find average avgOfGrades = findAverage(grades, numberOfGrades); cout << endl << "The average of all the grades is " << avgOfGrades << endl; // Fill in the call to the function that calculates highest grade cout << endl << "The highest grade is " << highestGrade << endl; // Fill in the call to the function that calculates lowest grade // Fill in code to write the lowest to the screen return 0; } //******************************************************************************** // findAverage // // task: This function receives an array of integers and its size. // It finds and returns the average of the numbers in the array // data in: array of floating point numbers // data returned: average of the numbers in the array // //******************************************************************************** float findAverage (const GradeType array, int size) { float sum = 0; // holds the sum of all the numbers for (int pos = 0; pos < size; pos++) sum = sum + array[pos]; return (sum / size); //returns the average }
  • 17. Lesson 7A 125 //**************************************************************************** // findHighest // // task: This function receives an array of integers and its size. // It finds and returns the highest value of the numbers in the array // data in: array of floating point numbers // data returned: highest value of the numbers in the array // //**************************************************************************** int findHighest (const GradeType array, int size) { / Fill in the code for this function } //**************************************************************************** // findLowest // // task: This function receives an array of integers and its size. // It finds and returns the lowest value of the numbers in the array // data in: array of floating point numbers // data returned: lowest value of the numbers in the array // //**************************************************************************** int findLowest (const GradeType array, int size) { // Fill in the code for this function } Exercise 1: Complete this program as directed. Exercise 2: Run the program with the following data: 90 45 73 62 -99 and record the output here: Exercise 3: Modify your program from Exercise 1 so that it reads the informa- tion from the gradfile.txt file, reading until the end of file is encoun- tered. You will need to first retrieve this file from the Lab 7 folder and place it in the same folder as your C++ source code. Run the program.
  • 18. 126 LESSON SET 7 Arrays Lab 7.2 Strings as Arrays of Characters Retrieve program student.cpp from the Lab 7 folder. // This program will input an undetermined number of student names // and a number of grades for each student. The number of grades is // given by the user. The grades are stored in an array. // Two functions are called for each student. // One function will give the numeric average of their grades. // The other function will give a letter grade to that average. // Grades are assigned on a 10 point spread. // 90-100 A 80-89 B 70-79 C 60-69 D Below 60 F // PLACE YOUR NAME HERE #include <iostream> #include <iomanip> using namespace std; const int MAXGRADE = 25; // maximum number of grades per student const int MAXCHAR = 30; // maximum characters used in a name typedef char StringType30[MAXCHAR + 1];// character array data type for names // having 30 characters or less. typedef float GradeType[MAXGRADE]; // one dimensional integer array data type float findGradeAvg(GradeType, int); // finds grade average by taking array of // grades and number of grades as parameters char findLetterGrade(float); // finds letter grade from average given // to it as a parameter int main() { StringType30 firstname, lastname;// two arrays of characters defined int numOfGrades; // holds the number of grades GradeType grades; // grades defined as a one dimensional array float average; // holds the average of a student's grade char moreInput; // determines if there is more input cout << setprecision(2) << fixed << showpoint; // Input the number of grades for each student cout << "Please input the number of grades each student will receive." << endl << "This must be a number between 1 and " << MAXGRADE << " inclusive” << endl; cin >> numOfGrades;
  • 19. Lesson 7A 127 while (numOfGrades > MAXGRADE || numOfGrades < 1) { cout << "Please input the number of grades for each student." << endl << "This must be a number between 1 and " << MAXGRADE << " inclusiven"; cin >> numOfGrades; } // Input names and grades for each student cout << "Please input a y if you want to input more students" << " any other character will stop the input" << endl; cin >> moreInput; while (moreInput == 'y' || moreInput == 'Y') { cout << "Please input the first name of the student" << endl; cin >> firstname; cout << endl << "Please input the last name of the student" << endl; cin >> lastname; for (int count = 0; count < numOfGrades; count++) { cout << endl << "Please input a grade" << endl; // Fill in the input statement to place grade in the array } cout << firstname << " " << lastname << " has an average of "; // Fill in code to get and print average of student to screen // Fill in call to get and print letter grade of student to screen cout << endl << endl << endl; cout << "Please input a y if you want to input more students" << " any other character will stop the input" << endl; cin >> moreInput; } return 0; } continues
  • 20. Random documents with unrelated content Scribd suggests to you:
  • 21. THE HORNED SERPENT. This is a magical underwater creature with the power to transform itself into the form of a human warrior. The Thunder Spirit wages war against the whole tribe of Horned Serpents and tries to kill them by lightning. This is one of Jesse Cornplanter’s finest drawings. The next day the girl worked very hard making a new dress and spent much time putting black porcupine quills upon it as an ornamentation. It was her plan to have a dress that would match her lover’s suit. Upon the third day she finished her work and went to bed early. Her apartment was at the right side of the door and it was covered by a curtain of buffalo skin that hung all the way down. Hi’´non again called upon her, taking a light and seating himself back of the curtain. “I am willing to marry you,” he said. “When will you become my wife?” “Not yet,” she replied. “I am not ready now to marry.” “I think you are deceiving me,” answered Hi’´non , “for you have on your new dress and have not removed your moccasins.” “You may go,” the girl told him, and he went away. Soon there came the stranger and he too took a little torch and went behind the curtain. Soon the two came out together and ran down the path to the river.
  • 22. “I shall take you now to my own tribe,” said the lover. “We live only a short way from here. We must go over the hill.” So onward they went to their home, at length arriving at the high rocky shores of a lake. They stood on the edge of the cliff and looked down at the water. “I see no village and no house,” complained the girl. “Where shall we go now? I am sure that we are pursued by the Thunderer.” As she said this the Thunderer and the girl’s father appeared running toward them. “It is dark down there,” said the lover. “We will now descend and find our house.” So saying he took the girl by the waist and crawled down the cliff, suddenly diving with a splash into the lake. Down they went until they reached the foot of the cliff, when an opening appeared into which he swam with her. Quickly he swam upward and soon they were in a dimly lighted lodge. It was a strange place and filled with numerous fine things. All along the wall there were different suits of clothing. “Look at all the suits,” said the lover, “when you have found one put it on.” That night the couple were married and the next day the husband went away. “I shall return in three days,” he announced. “Examine the fine things here, and when you find a dress that you like put it on.” For a long time the girl looked at the things in the lodge, but she was afraid to put on anything for everything had such a fishy smell. There was one dress, however, that attracted the girl and she was tempted to put it on. It was very long and had a train. It was covered all over with decorations that looked like small porcupine quills flattened out. There was a hood fastened to it and to the hood was fastened long branching antlers. She looked at this dress longingly but hung it up again with a sigh, for it smelled like fish and she was afraid. In due time her husband returned and asked her if she had selected a suit. “I have found one that I admire greatly,” said she. “But I am afraid that I will not like it after I put it on. It has a peculiar
  • 23. fishy smell and I am afraid that it may bring evil upon me if I wear it.” “Oh no!” exclaimed her husband, “If you wear that suit I will be greatly pleased. It is the very suit that I hoped you would select. Put it on, my wife, put it on, for then I shall be greatly pleased. When I return from my next trip I hope you will wear it for me.” The next day the husband went away, again promising soon to return. Again the girl busied herself with looking at the trophies hanging in the lodge. She noticed that there were many suits like the one she had admired. Carefully she examined each and then it dawned upon her that these garments were the clothing of great serpents. She was horrified at the discovery and resolved to escape. As she went to the door she was swept back by a wave. She tried the back door but was forced into the lodge again by the water. Finally mustering all her courage she ran out of the door and jumped upward. She knew that she had been in a house under water. Soon she came to the surface but it was dark and there were thunder clouds in the sky. A great storm was coming up. Then she heard a great splashing and through the water she saw a monster serpent plowing his way toward her. Its eyes were fiercely blazing and there were horns upon its head. As it came toward her she scrambled in dismay up the dark slippery rocks to escape it. As the lightning flashed she looked sharply at the creature and saw that its eyes were those of her husband. She noticed in particular a certain mark on his eyes that had before strangely fascinated her. Then she realized that this was her husband and that he was a great horned serpent. She screamed and sought to scale the cliff with redoubled vigor, but the monster was upon her with a great hiss. His huge bulk coiled to embrace her, when there was a terrific peal of thunder, a blinding flash, and the serpent fell dead, stricken by one of Hi’´non ’s arrows. The girl was about to fall when a strong arm grasped her and bore her away in the darkness. Soon she was back at her father’s lodge. The Thunderer had rescued her. “I wanted to save you,” he said, “but the great horned serpent kept me away by his magic. He stole you and took you to his home. It is important that you answer me one question: did you ever put on any dress that he gave you? If you did you are no longer a woman but a serpent.”
  • 24. “I resisted the desire to put on the garment,” she told him. “Then,” said he, “you must go to a sweat lodge and be purified.” The girl went to the women’s sweat lodge and they prepared her for the purification. When she had sweat and been purged with herbs, she gave a scream and all the women screamed for she had expelled two young serpents, and they ran down and slipped off her feet. The Thunderer outside killed them with a loud noise. After a while the young woman recovered and told all about her adventure, and after a time the Thunderer came to her lodge and said, “I would like to take you now.” “I will give you some bread,” she answered, meaning that she wished to marry him. So she gave him some bread which he ate and then they were married. The people of the village were now all afraid that the lake would be visited by horned serpents seeking revenge but the Thunderer showed them a medicine bag filled with black scales, and he gave every warrior who would learn his song one scale, and it was a scale from the back of the horned serpent. He told them that if they wore this scale, the serpent could not harm them. So, there are those scales in medicine bundles to this day.
  • 25. 27. THE GREAT SERPENT AND THE YOUNG WIFE. There was a certain young man who married a young woman. Now the young man had three sisters who were very jealous of the young wife, because of her beauty and skill, and because of their brother’s affection for her. And so it was that the trio resolved to devise a plot and destroy the young wife. It was the season when huckleberries are ripe and the sisters had invited the wife to take a canoe trip with them to a small island that arose from the middle of a large lake. Huckleberries were reported to grow there in abundance. Suspecting nothing, the wife mended her baskets and started to prepare food for the excursion. “Oh no food is needed!” exclaimed the older sister. “We do not need a lunch where so many berries grow. Our baskets will soon be filled and we will return long before our hunger comes, meanwhile we can feast on berries.” The four women entered their canoe and paddled to the island far out in the lake. When at last they had beached their canoe and turned to look about, they found the island covered with bushes laden with berries. The sisters seemed anxious to go farther inland but the wife said that she deemed it wiser to stop where they were and pick, thus making it unnecessary to carry heavy baskets a greater distance to the canoe. So, stooping over she commenced to strip the berries from the bushes. This is exactly what the sisters wished as it gave them an opportunity to leave her behind, and, grumbling at her laziness, they disappeared in the bushes. The wife worked diligently and soon had her large pack basket full to the brim. Lifting it to her back and throwing the burden strap (gŭsha´ā‘) over her forehead, she walked slowly back to the shore expecting to find her sisters-in-law waiting for her. To her horror, however, though she searched in every direction, there was no sign of canoe or women. The situation then dawned upon her, and discouraged beyond all measure, she sat down on the sand and gave vent to her emotions by a burst of tears.
  • 26. She was alone, a solitary human creature upon a far-away isle. She knew not what evil ghost might be lurking there to transform her to a crow or a wolf. Perhaps he might destroy her in the darkness and feast upon the body. These and other fearful thoughts tortured her mind until at last, as the sun sank low, she lay down exhausted by grieving, and slept. Far into the night she slumbered. Time sped by and she was awakened by a whoop upon the waters. Sitting up she looked out over the lake where she heard a clamor of voices and a multitude of dancing lights. Soon the lights appeared upon the shore and shortly were arranged in a circle on the island. Creeping up to a log that lay close to the circle of lights, she saw a company of creatures gathered in council. The beings seemed like men and yet more like animals. Sometimes when she looked they were beasts and then again men. One began to speak. He said, “Now this woman has been deceived by her sisters-in-law and we are met to plan how to save her. She must be taken from this island for the berries are poisoned and if she dies not from them the sĕgowĕnota (singing wizard) will enchant her.” For some time the speaker talked and finally asked, “Who now will carry her basket to the land?” A large tall being with a deep bass voice answered quickly, “I will!” “No, you may not, your pride is before your courage,” said the chief speaker. A huge bulky creature arose and called out, “I will save her!” “No, you are too terrible in form and would frighten her,” was the reply. Several more volunteered but all were rejected until a very tall slender being arose and in a clear ringing voice said he would use his utmost power to save the unfortunate young wife if only permitted. “You are the chosen one!” exclaimed the chief. “You are one close to the (knowledge of) people.” The council adjourned, the voices gradually died away and the lake was dotted again with flickering lights. The young wife crept back to her bed, half afraid and yet hopeful of the morrow. Before sunrise a voice called from the water, and, starting up the young woman ran to the beach and saw what at first appeared to be a
  • 27. monstrous canoe, but looking again she saw a great serpent from whose head arose proud curving horns like a buffalo’s. The creature lifted his head from the waters and called. “I have come to rescue you. Trust me and make your seat upon my head between my ‘feathers.’ But first break twelve osiers and use them upon me should I lag in my swimming.” The girl took her seat upon the creature’s head and laid her whips in her lap. With an undulating motion his long glistening body moved through the ripples but the wife sat high and not a drop of water spattered upon her. As her mysterious rescuer journeyed his way he told her that he must hasten with all speed as he belonged to the race of underwater people whom the mighty He’´non hates.[35] Even now the scouts (small black clouds) might have spied him and be scudding through the sky bringing after them a host of thunder clouds. Nor was his an idle surmise, for scarcely had he spoken when a small black cloud appeared and sped with great rapidity toward them. Instantly the wind commenced to blow and the great serpent called back to his charge, “Whip me, Oh whip me! He’´non has discovered us and is driving onward his warriors!” The frightened girl lashed the monster with all her strength until nearly all her withes were broken. In the distance the thunder began to roll and soon again in loud claps. The dark clouds piled thicker and came faster. The great serpent in his wild speed was lashing the black waters into a foam that flew through the wind and covered the lake. There was an ear-splitting crash. The Thunder Spirit was coming nearer. The gleaming arrow he had thrown had riven a floating oak tree. The young woman trembled beneath the dark cloud-banked sky and feared. The rumble of thunder was deafening. He’´non was casting his javelins faster. A great sheet of fire flashed from the heavens and lit up the lake and the shore. The thunder crashed and cracked and rumbled. In the awful fury of the tempest the great serpent cried in terror: “Oh use your lashes! Oh spur me onward! My strength is failing! Scourge me! I must save you and if I do, oh will you not burn tobacco upon the shore twice each year for me? Oh lash me more!”
  • 28. A blinding flash of fire shot from the rumbling clouds and buried itself in the water at the side of the serpent. “Jump now!” cried the creature, “He’´non has his range and I must dive.” Hope faded from the young wife’s heart. How much better would death have been in the midst of the waters or by the lightning’s stroke than within sight of the shore. With a cry of agonized despair she slid from the head of her rescuer and sank into the turbulent waters. The horned monster with a booming sound plunged beneath the lake and disappeared. The light broke through the clouds and the storm began to retreat. The young woman struggled with the swirling waters. Her esteem for her would-be-deliverer sank to a bitter hatred for he had abandoned her to perish. Her tired limbs could no longer battle with the lake. Her feet sank but to her unspeakable surprise they fell firm on the sand. Wading forward in the semi-darkness she came safely out on the shore. Walking inland she sat down beneath a tree to recover from exhaustion and fright. The storm sped away growling that it had failed to slay Djodi ´kwado‘ the monster serpent. The young wife arose, wet and bedraggled, but happy that she was safe again. Now her heart was full of gratitude to her hard-pressed deliverer. Ahead of her, wandering aimlessly, with hanging head and melancholy mien, was a man. His body was drenched with rain and his spirit with heavy sorrow. The woman neared him and called, “Husband, Oh husband, is it truly you?” The man turned with a shout of joy and answered, “Wife, oh wife, returned living, is it you?” The drenched and storm-bruised couple joyfully turned homeward. The three sisters were there. “Begone now and forever,” said the husband. Then were the couple happy, and envy and jealousy found no place with them. So here the story ends and so it is spoken.
  • 30. 28. BUSHY HEAD THE BEWITCHED WARRIOR RESCUES TWO LOST DAUGHTERS AND WINS THEM AS WIVES. [36] The daughters of a woman who was a clan matron and name- holder disappeared. She grieved greatly, but her husband who was chief of another clan said nothing. He was a bad man and was chief because he had lied about his brother Donya´dassi. Now Donya´dassi had once been a skillful hunter but his hunting charms had been stolen, and so with his wife, Gawīsas, he lived away from the village in a poor bark hut. The mother of the lost daughters, whose children should some day be in the sachemship line, offered large rewards for their recovery and continually urged the young men to hunt for the girls, promising them as wives to the successful finder. They were most beautiful young women and there were many searchers, but when winter came, all returned without news. Now, it happened that Gawīsas, the poor woman, was boiling corn over the fire in her lodge and thinking very intently about the lost daughters of her sister-in-law. She thought that their father, jealous of them, might have cast a spell over them and hidden them away. While thus thinking she heard a strange sound outside, a sound so unusual that it alarmed her. Her husband was absent on one of his not always profitable hunts. Soon someone knocked at the door, but Gawīsas failing to respond, a strange creature entered, looked into her face, and then advanced to the fire. This being was Bushy Head, a dwarf with an enormous bushy head. Upon its chin was a long white beard that dragged upon the floor. He seemed to be all head. The snow and ice had so caught and frozen in its beard that as he walked it dragged behind him like a log. Bushy Head stood before the fire, reeled up his beard and thawed out the ice. Gawīsas could not speak because she was so frightened, so she sat on her bed. The monster looked at her and then ran his cane into the fire, stirring up the ashes. The sparks flew upward and fell into the soup. Again the being looked at Gawīsas but she only stared blankly back. Grasping a ladle
  • 31. he filled it with ashes and threw them in the soup, and turning, eyed the frightened woman again but she did not move or speak. He kept looking at the woman until he had filled the kettle with ashes and then departed. After his departure Gawīsas recovered in a measure from her fright and dragging the kettle out of doors emptied and scoured it. To her dismay the creature, whom she had named Sogogo, returned on the next day and for six consecutive days, each time behaving as before and Gawīsas remaining silent to all proceedings. At last on the seventh day her husband, Donya´dassi, returned and she told him of all the strange happenings. “Well, what did you say to him?” he asked, and when she replied, “Nothing,” he bade her speak the next time the Sogogo came. “He wants to tell you something,” he said. “So ask him what he wishes.” Having given this advice Donya´dassi departed on another hunting excursion, for he had come home empty-handed. He was a chief also, but could not rule, because his wife’s uncle was his enemy. Sogogo returned soon afterward and peered into the face of Gawīsas who could only summon up enough courage to say, “Ä-ä-ä- ä-ä.” “Ä-ä-ä-ä-ä,” replied Sogogo, and filled up the kettle with ashes again. The next day passed with the same results, but on the third day Gawīsas tremblingly asked, “What do you wish, Sogogo?” “At last,” he answered, you have spoken. “I can only speak as I am spoken to, and hoped, since you would not greet me, you would chide me when I spoiled your soup. Now let me tell you that I know where the chief’s daughters are and have chosen you and your husband as the ones to claim the reward. You are poor and plenty of wampum will make you powerful. Now tell your husband, and if he is willing to aid me bid him hang half the liver and half the lights of every animal he kills upon a low branch of the nearest tree. For a sign that I am telling the truth, let him chop down the big tree before your lodge and within it will be a bear.” Sogogo departed and when Donya´dassi came back from his hunt, successful this time, he was told the news. He felled the tree as directed by his wife, killed the bear and hung half the liver and half the lights on the branches on the nearest tree.
  • 32. The wife was cutting some choice pieces of bear meat to cook for the afternoon meal when in walked Sogogo, and greeting Gawīsas and her husband, sat down and began talking to the man. He explained his plan for rescuing the lost daughters of the chief. Donya ´dassi was to go to the top of a certain mound and seat himself in a large basket which he found there. This basket would rest on Sogogo’s head and would bear him to the inside of the mound, where the chief’s daughters had been hidden. Accordingly the next day Donya´dassi seated himself in the large basket which he found on the mound and sank down under the earth. Arrived there, Sogogo lifted the basket from his head and proceeded to instruct Donya´dassi how he must rescue the daughters. “Go to the first lodge on the right hand side of the trail,” he said. “There you will see one of the girls. Tell her you are her rescuer. Bid her sweep the floor as soon as she hears her captor approaching and continue to sweep until you depart with her. Her captor, who wishes to become her husband, has seven heads. You must kill the creature in order to gain the girl. He will ask you to drink berry juice with him. Poison will be in your cup but when he winks change the cups. Then he will want to fight. When you fight him use this short crooked knife, and rushing toward him thrust it between his seven heads and cut off the middle one. Previously instruct the girl to sweep it in the fire so that the flames will burn his eyebrows and lashes. That will destroy his power and all seven heads will die. When you have done all this return to me with the girl so you may know what to do next.” Taking the sharp bent knife that Sogogo held toward him, Donya ´dassi thrust it in his pouch and ran down the trail until he saw a large bark house at the right. Entering it he saluted the young woman whom he recognized as the eldest of the chief’s stolen daughters. He instructed her, as bidden, and had scarcely finished when the seven- headed man entered and spying the stranger he cried, “Kwē! Come, let us drink a little strawberry juice.” He placed two gourd cups on a bench and said, “Now drink.” Just as he winked Donya´dassi transposed the cups and when the monster lifted the berry juice to his lips and tasted it he exclaimed, “Ho ho!” meaning, his power was lessened.
  • 33. “Come, let us fight now,” he cried. “Here are the clubs; take your choice. How does that fine new one suit you?” “No, I’ll take that old one,” said Donya´dassi pointing to a half decayed stick. “I’ll fight you left-handed,” he continued, “So ready!” The daughter began to sweep and the men to fight. Rushing upon the monster so close that no club could hit him he thrust his knife between the heads and with a quick jerk of his arm cut off the middle one. The girl swept it into the fire and when the eyelashes and brows had been singed the swaying body and six howling heads crashed to the floor. The girl dropped her broom and followed Donya´dassi as he ran out and down the trail. Sogogo was waiting for them and after listening to the story of the successful fight said, “On the left hand side, the fourth lodge down, is another lodge. Go there and rescue the other daughter. A seven- headed monster is keeping her prisoner. Instruct the girl as the first. The monster will enter and ask you to eat. When he winks change the spoons, for there is poison in the wood. Then he will challenge you as the first. Chop off his ear with your knife and when the daughter sweeps it into the fire the creature will begin to die.” Donya´dassi obeyed and events occurred exactly as Sogogo had predicted. When in the fight Sogogo had cut off the left ear from the seven-headed man and the ear had been swept into the fire, all seven heads began to whine and the middle one said, “You have plotted to kill me! You have been unfair! The woman has planned it. Oh you wicked woman, you have been a traitor to me.” “It is untrue,” shouted Donya´dassi. “Your own rule has been to fight all who enter your door and now you are defeated. Before our fight you boasted you would grind me in your mortar and commanded me to do the same with you and feed your body to the birds.” “Agē, agē, agē!” moaned the monster and died. “Shall I smash his body?” said Donya´dassi, but the maiden did not know. “Go, then,” said he, “and ask Sogogo.” When she returned she told him to grind the body to a pulp in the corn mortar and hasten back to Sogogo who awaited him. Donya ´dassi pounded the monster heads and flung the mass to the big crows that already had clustered about the lodge.
  • 34. Running up the trail, with the girl following him, Donya´dassi found Sogogo waiting. The two girls and Donya´dassi seated themselves in the basket, Sogogo lifted it upon his head and in a short time they emerged from the top of the mound and breathed the outside air once again. Sogogo led the three to his lodge far back in the forest where he told all his history and then bade Donya´dassi run to the lodge of the great chief and tell him to call a great council at which important news would be revealed and presents given. When the chief had listened to Donya´dassi he asked, “What news can you bring and what presents can you give?” “I have luck now,” was the answer. The feast day came and people flocked from distant villages to hear the news and receive the presents. Donya´dassi arose and said, “I have come to tell our great chief that his daughters have been found and are now safe and near here and shall be restored on one condition, that he remove his spell from a certain young man whom he has conjured.” The chief was greatly angered that any condition should be given and refused to grant it. Meanwhile Donya´dassi was arranging long strings of wampum and piles of skins in piles on the council house floor, one for each person present. “These cannot be distributed until our chief grants my condition,” he said. The chief remained obdurate. The people were anxious for their feast and gifts. The chief’s wife begged him to consent and regain his lost children. So, fearing the anger of his people and fury of his wife, he at last asked that the young man who rested under the spell be brought to him. Sogogo entered. The chief looked ashamed and then frowned in anger. “Come,” he said and led the way to a small dome- shaped lodge, pushed Sogogo in and then entered himself. Heating some round stones he threw a handful of magical herbs upon them. Then taking his rattle chanted a song. The smoke from the herbs enveloped Sogogo and when the song ended he had become a handsome young warrior. The chief and the transformed Sogogo reëntered the council.
  • 35. “Where are the daughters!” shouted the people. Drawing out a red bark box from his pouch he opened it and out fell the two girls. There was a great shout and the chief’s wife rushed forward and embraced her children. Donya´dassi distributed his presents. Donya´dassi then advanced to the chief who gave him the reward, but so small was it in comparison with Donya´dassi’s liberal gifts that it seemed a mere trifle. The chief soon lost his influence but Donya´dassi, who had grown rich and successful, succeeded him in the hearts of the people but Sogogo, the transformed, was happy with his two wives, the chief’s daughters. He took both, that was all right in those days.
  • 36. 29. THE FLINT CHIP THROWER. Long ago Tĕg´wandă’[37] married a beautiful maiden and went far away with her to his hunting grounds. Tĕg´wandă’ was famous as a successful hunter but his wife’s family had “dry bones”,[38] so her elder sister and mother took council together and said, “Come, let us go and live with Tĕg´wandă’ and we shall ever be filled.” The prospect of a never failing supply of venison and bear was tempting to those who had long subsisted on tubers and maize. The wife of Tĕg´wandă’ was kind and never questioned his actions. He never went long from the house, yet he ever had game in abundance and skins piled high in his stores. This made her marvel, but she never made inquiries. The lodge was divided in two compartments but the couple lived only in one. The other was almost empty, but Tĕg´wandă’ often went there. She would hear him singing alone in the room, then there would come a crash like a splintering tree and soon afterward Tĕg´wandă’ would bring in a new pelt and the carcass of some beast. This made her marvel but she never questioned. The young couple lived contentedly and never quarreled. No trouble or sorrow came to mar their happiness until one day, unheralded, came two women to the door of the lodge. These were the wife’s mother and sister. When the unbidden guests had eaten their fill of good and mealy nut pudding they began to seek the excuse for complaint. Then, oh the railing, the endless rebukes, the sneers and sarcasm! At last the matters turned from the lodge to the couple themselves. “How does Tĕg´wandă’ obtain his meat? Surely he must be a wizard and likely to eat all of us women when his charms fail. He is evil, he is lazy! Let us drive him away.” These and other things the mother said to her daughter. So it came to pass that the sister insisted she must go with the husband wherever he went and learn something of his habits.
  • 37. “If you must go,” said the wife, “obey him implicitly, else evil will occur.” The husband was downcast but would not yield to his fear of the woman. Taking a basket of salt he sprinkled the white crystals upon a flat rock and entered the closed room with the woman. “Do not move or touch a thing,” he commanded. “Let no fear, let no surprise cause you to stir!” Then he commenced to sing. The woman looked about critically. In one corner was a pile of quarry flakes, beside them a bench and in a heap before it was a pile of keen edged flint chips. A sudden sound drew her attention from the lodge. Tĕg´wandă’ ceased singing. Outside some creature was snorting, “swe-i-i-i-sh, swe-i-i-i-sh!” Picking up a handful of flint chips the man flung them with all his strength against the wall nearest the flat rock. The woman was now curious to find what was outside and pushed aside the curtain to get a glimpse of the mysterious things. Instantly the entire door curtain was torn from its fastenings and a monstrous elk rushed in and trampled upon Tĕg´wandă’. Then tossing him upon its antlers, bounded out and fled through the forest. The frightened woman ran after the elk, but fell back dispairing. Moaning she crept back to the lodge and confessed to the wife. The wife burst into tears and then bitterly chided her sister for her meddlesome ways. Throwing on her robes she hastened to rescue her husband. Carefully she tracked the elk and after many days journey she heard a low trembling song. She knew her husband was near, so cautiously advancing she came to a spot where she could see a herd of elks feeding in an open. A deer was grazing near by. Gently she whispered. “Come, good brother, lend me your coat. You can do me good service thereby.” “Certainly,” responded the deer with alacrity, and, walking inconspicuously into the bushes, she removed her coat and threw it upon the woman. In her new habiliments the wife bounded off into the midst of the elks. In the middle and surrounded by the rest was a large reclining elk whose antlers held the emaciated form of Tĕg´wandă’. In a feeble whisper the husband sang. Walking toward the elk she made a sudden dash and inserting her horns beneath her husband’s body lifted him off and dashed away before the astonished animals could remonstrate, and indeed, they
  • 38. were too frightened to do so. Galloping breathlessly into the thicket she set down her husband, removed the deer’s skin and gave it back with expressions of gratitude. Then lifting her husband upon her shoulders, she carried him homeward. On her journey she pondered how she could restore him. He was exhausted and covered with bruises and wounds, his body had wasted away to a skeleton covered with skin and his mind was turned with his sufferings. Sitting down upon a hollow log she pondered. A sudden inspiration came. Quickly she pushed her husband into a hollow log and gave him a shove with her foot that sent him sliding through. When he emerged from the other end he was completely restored. Together they tramped back home happy to be together once more. Entering the lodge the husband cast out the inquisitive sister and quarrelsome mother and sent them running down the trail. “One woman is sufficient female company for any man,” he said. “More in one house make great trouble.”
  • 39. VII. HORROR TALES OF CANNIBALS AND SORCERERS HADUI MASK OF THE FALSE FACE COMPANY.
  • 40. 30. THE DUEL OF THE DREAM TEST BETWEEN UNCLE AND NEPHEW. There was a great long house built of poles and bark. This long house was in a secluded place where men were not accustomed to come, but there were sorcerers who knew its location, but shunned it, for there lived Shogon ‘´gwā‘s and his nephew Djoñiaik. The nephew was young when the uncle assumed charge of him, and he had no real regard for the boy, for he had slain by sorcery all his near relatives, and knew that he must some day overcome the orenda (magic) that had accrued to the boy, or he himself would be undone. Djoñiaik was carefully reared, for the uncle wished to make him suffer at the end and cry out his weakness, thereby more greatly enjoying the triumph over him. When the boy had grown to the age just before he became eligible for his dream fast, the uncle said, “Now my nephew, the time has come when you should hunt for yourself without me. Go into the forest and bring me meat.” Thereupon Djoñiaik took his small bow and after a time found a partridge which he shot. Bringing it to the lodge of his uncle he presented it to the elder man. “Oh now, my nephew,” said Shogon gwas, “what is the name of this thing?” “Oh my uncle,” replied the boy, “I have never known the name of this kind of a thing.” “Ho!” exclaimed the uncle, “How then do you expect to be able to eat it?” The boy then was given the task of cleaning the bird for soup, and when it was ready the older man put it in a clay kettle and boiled it with a gruel of corn meal. Then he lifted out the meat and placed it with the fat gravy in a bark bowl which he laid aside for himself. Taking another bowl he filled it with the thin soup from the middle of the kettle and handed it over the fire to the boy. The boy reached from his seat, stretching his arms and finally grasped the bowl, but as he did so the uncle pulled on the bowl and the boy fell face forward
  • 41. into the fire, scorching his chest and burning his hands. At this the uncle roared and called him clumsy, asking moreover, “Where is your soup? You have tried to put out the fire with it!” With great gusto the uncle devoured the partridge, picking the bones clean and casting them into the fire. Djoñiaik had nothing for his meal and was very hungry. Wearily he wandered out into the thicket, coming at length to an unfamiliar spot where there was a low mound, as if a mud hut had fallen down and become overgrown. As he looked at the spot he heard a sound, “Ketcuta, ketcuta!” Peering more closely in the snow-covered moss he saw the face of a tcis´gä (skull) looking at his with open mouth. “I am your uncle,” said the skull. “Give me tobacco.” Djoñiaik obeyed, and when the skull had smoked a pipeful, it coughed and said, “I am your uncle, bewitched by my brother who has stolen you in order to work vengeance on you for the power you inherit from your relatives who have been killed by sorcery. You must remember the names of the animals you kill and the next one you shall find will be a raccoon. Remember its name and when your guardian asks you its name tell him ‘raccoon’.” In time the boy went hunting again and finding a raccoon shot it. Greatly excited he began to repeat the name raccoon over and over. “Raccoon, raccoon, raccoon, raccoon,” he shouted as he bore it to his uncle’s lodge. But so rapidly was he running that he fell over the door-sill and sprawled into the lodge. “Oh now nephew, what have you this time?” inquired the uncle, but so excited and chagrined was the boy that he totally forgot the name. “Wa!” exclaimed the old man, “If you cannot speak the name of this thing you shall not eat of it. Dress it for me and I will cook it as a soup.” When the raccoon was cooked the old man skimmed off the fat and poured out some thin soup for Djoñiaik, who by this time was very hungry. Uncle and nephew sat on seats opposite each other with the lodge fire between. Passing over the bowl of soup the uncle gave a quick jerk as the boy grasped the rim and again pulled him into the fire. “Oh nephew, I am sorry,” said he, laughing, “I am always in a hurry.” But Djoñiaik was sadly burned about the face and made no
  • 42. reply. With hungry eyes he watched his uncle stow away the uneaten portion of the raccoon. He had not a mouthful. That afternoon he again visited his skeletal uncle and related all that had happened. He was thoroughly afraid now for his uncle was most ugly. But the skull, when it had smoked, only advised him to remember the names of the animals killed. “Today, I believe, you will shoot a turkey. Remember the name and begin to use your power to retaliate,” said the skull. After watching quietly Djoñiaik saw a turkey,—a very large and fat turkey, which he shot. Tying its feet together he held it to his back by a burden strap and lugged it home, rushing into the lodge saying, “Turkey, turkey, turkey, turkey.” This time the uncle asked no questions, but with a frown watched his nephew pluck the turkey and prepare it. “This time I shall prepare a roast of meat,” said the boy. “I shall not make soup as my uncle does.” So he cooked the turkey in a pot and when done he divided the meat in two portions, putting each in a bark bowl. “Now come eat, Uncle,” said the boy handing the bowl over the fire to his uncle. As the old man’s hand grasped the bowl, Djoñiaik gave it a quick pull, overbalancing his uncle and pulling him into the fire. “Oh nephew!” exclaimed the uncle. “You have purposely abused me and burned my face and stomach. My hair is on fire. You have distressed me.” But the boy said only, “Oh I was in such a hurry.” And then he fell to eating the turkey, putting the uneaten portion on the shelf over his bed. This time the old man ate nothing. The next morning very early the boy said, “I shall now arise and hunt game which comes to feed early in the morning.” So saying he arose, dressed and took his bow and went out. The old man was awake and looked very angry. So Djoñiaik went directly to the skull and gave it tobacco. When it had smoked it said, “You shall hunt today and shoot a deer, but when you go back to the lodge your uncle will say, ‘It will be a cold night and I will gather large logs for a night fire.’ He will awaken at midnight with a dream and you must hit him on the head to awaken him, when he will relate his desire, it being to barter meat for fat bear casings. You must prepare yourself by taking a grape vine and
  • 43. transforming it as desired.” So instructed the boy went upon his hunt and killed a deer, bringing it home saying, “I have furnished a deer for the larder.” That night after they had eaten of the deer, the old man looked very angry. “This will be a very cold night, I think,” said the old man. “I shall gather logs to burn during the night.” And so saying he made a roaring fire and went to bed. Cautiously the nephew arranged his buffalo skin coverlet so that he had a peep-hole through a worn spot. At midnight the uncle arose and walking on his knees to the fire began to utter a worried sound, “Eñh, enh, enh, enh!” Then he threw one of the burning logs upon Djoñiaik, his nephew. Immediately the boy leaped up, being awake, and threw the log back into the fireplace, at the same time crying, “What is your dream, my uncle?” and then tapping the old man on the head with a club. “It has now ceased,” answered the uncle, rubbing his head and becoming awake. “The roof must be removed,” said the uncle, meaning that he had dreamed that the two must engage in a duel of wits. “Tomorrow we must barter, and I shall give, and you, Oh nephew, shall repay me with that which I must not tell you, but which you must guess, and failing great calamity will befall us.” “That is very easy,” answered the boy. “Go to sleep; in the morning I will be ready.” Morning came and the old man began to sing. “Yoh heh, yoh heh, yoh heh, I shall trade with my nephew Djoñiaik, and he shall give me my desire.” So did he sing continually. It was a song that only a sorcerer would sing and its sound traveled far, so much so that all the wizards heard it and said, “Shogon ‘´gwā’s is singing again and this time has chosen his own nephew as a victim.” So they all came and perched about in the house, being invisible, to watch the duel of orendas (magic powers). Djoñiaik was bidden sit at the end of the long house, and it was very long indeed, there being many abandoned fireplaces in it. Far at the end he sat on the far side of an old fire bed. His uncle began to sing again, and walked forward with a bark tray in which were pieces
  • 44. of meat. “I offer these to you,” he said. “You shall give me what I am thinking about.” “Only give me a clue, uncle,” begged the boy. “How can I divine what is in your mind?” “Torture by fire awaits you if you guess not by mid-sun,” sang the old man still holding out the meat, while the boy pretended to be thinking deeply. “Oh, uncle,” said the boy, “you desire raccoon meat.” “No, not raccoon meat. Oh nephew, you must divine my word.” “Oh uncle, you want turkey.” “No not turkey. Oh nephew, you must divine my word.” “Oh uncle, you want partridge.” “No not partridge. Oh nephew you must divine my word.” Again the boy sought to evade his uncle by exclaiming, “How can you expect me to guess your dream unless you give me some clue to your desire?” Again the uncle fell to singing the charm song that conjures up flames, and suddenly they burst forth from the ground with a loud sound enveloping the poor nephew who wrestling with them, cried, “Oh uncle your desire is for the bear casings enclosed in deep fat.” “Niio‘!” exclaimed the uncle, and the flames died down, whereupon Djoñiaik brought forth his grape stalk which he had conjured to look like the casings of a bear. Then was the uncle satisfied. That afternoon the boy retired to the forest and sought his skeletal advisor, telling him all that had happened. “Once more,” said the skull, “your uncle will make a demand and all the circumstances will be similar. This time he will desire a bear’s liver. Go to a log in the swamp, pluck a red tree fungus and rub it with your hands until it becomes a liver.” So instructed the boy was ready for his wizard uncle. As before the logs were gathered and a great fire made, and in the middle of the night the old man flung fire upon the boy again. When the dialogue was over the boy found that once more a test was to come. “It is nothing,” said he. “Go to sleep.”
  • 45. Morning came and the old wizard sang his charm song. The boy took his seat as before and when pressed by the flame he cried out, “You wish a liver of a bear, Oh uncle.” The uncle was not at all pleased with his nephew’s power for he wished to consume him with fire, after the manner prescribed for torture, but he could not. Reporting the event to the skull, the boy asked for further help. “Tonight you must dream, and when your guardian has struck you with a club to awaken you, you must crave the guessing of your word, which shall be one of the squashes that grow in a sand box under your uncle’s bed. It is a great prize. Have no mercy but get what you demand.” That night the boy gathered firewood, remarking that he expected the night to be very cold and wanted to warm the lodge. The uncle only scowled. Midnight came, and the invisible wizards and sorcerers were watching. Stealthily the boy arose, and creeping on his knees, he approached the fire, grasping a blazing log and throwing it upon his uncle, as sleeping persons do. Then he began to grunt, “Eñh, enh, enh, enh,” as if in distress. The uncle awoke, being severely scorched and his bed set afire. “Oh nephew,” he called as he gave the boy a knock on the head to awaken him. “What do you wish?” “It has now ceased,” said the boy. “Oh uncle, I have dreamed that you and I must exchange gifts, and that you must give me what I desire.” “It shall so be,” answered the uncle. “This is nothing.” The two then retired and early in the morning the boy awoke and took his seat. In a tray he had some turkey meat. Commencing his song he called out, “I am trading a gift with Shogon ‘´gwa‘s, my uncle. He shall give me in exchange what I most desire.” So saying he sang the charm song that conjures flames from the earth. The old man took his seat and when approached said, “I shall divine your word if you will give me a clue.” “Any clue would spoil the intention of the dream, uncle.”
  • 46. “Then tell me at once what you wish,—be quick about it!” “To utter one word would be fatal to my desire.” “Then the word is deer meat.” “No not deer meat, uncle. Hurry for I shall sing.” “Then you wish moose meat.” “No not moose meat, uncle. Hurry or I shall sing.” “Then you wish my coonskin robe.” “No not your coonskin robe. I now commence to sing.” “Then you wish my otterskin robe,” hastened the uncle, naming one of his prized possessions. “No uncle, not your otterskin robe. I now sing.” With a burst of the conjurer’s song, the boy began to sing, “Yoh heh, yoh heh, yoh heh. My uncle and I are exchanging. He shall give me what I most desire.” As he sang his flames leaped from the ground, for Djoñiaik was now an adept in magic. Surrounding the uncle the flames began to singe him. With a shriek he leaped to the platform above his bed, but the flames followed, until he called out, “Oh nephew I yield!” Descending he said, “You desire the squash beneath my bed,” and the boy exclaimed, “It is so.” With great reluctance the old wizard opened the bed, lifting up the bottom boards like the top of a chest. Beneath in boxes of sand were vines with squashes growing upon them, though it was winter outside. Taking a look at the largest, the old man shut down the cover and exclaimed: “Oh nephew, it is the custom to simulate what is desired in a dream. I shall now carve you from wood a squash that you may preserve as a charm.” “Only the real object desired shall satisfy me,” answered the boy. “Must I sing again?” And he started his song which brought forth flames that enshrouded the old man, causing him to cry out, “Oh nephew, I yield!” This time the boy obtained the squash and with it the injunction to take care of it, for it was a great prize.
  • 47. Reporting the episode to the skull, the boy received further instruction. He was to dream again and was to demand as the satisfying word, his hidden sister who was concealed in a bark case beneath the wizard’s bed. This was a great surprise to the boy, for he had not dreamed that he had a sister concealed, this being the treatment given children born with a caul. They were hidden by day and only allowed to go out by night. “The wizard hopes to keep the child,” said the skull. “It is his greatest prize and unless you are very firm he will cause you to err, thereby escaping your demand. Have no pity but push him to the uttermost with your demand.” Again the boy built the lodge fire and as midnight came, he crept from his coverings and crawled along the floor of the great cavernous lodge. Slowly creeping to the fire he seized a blazing log and with a cry flung it upon his sleeping uncle, at the same time grunting, “Enh, enh, enh, enh,” as if in distress. With a whack of his club the old man awakened the boy, who called out, “It has ceased,” meaning the vision. “Oh uncle,” he said. “I have dreamed that you must give me something in exchange for the gift I shall offer you tomorrow.” “It shall be done,” answered the uncle with a dark frown. Morning came and with it the test. Long the old man sought to cause the boy to make one small slip in the custom but he failed. Mid-day came and as the sun beat down through the smoke hole the boy began his charm song, causing flames to arise as torture for the old wizard. After much haggling the old man opened his bed once more and revealed a bark case beautifully decorated. He removed this and placed it on a mat, after which he opened the case and unwrapped a small woman, beautifully white, and perfect in form, though only as long as a man’s arm. “Oh nephew,” said the uncle, “Now that you have seen your sister, I will replace her and give you what is customary in such instances, a carved imitation. You will be greatly pleased with the doll I give you.” In reply the boy gave his charm song and again the magic flames circled about the uncle like a clinging garment. “Oh nephew, I yield,” he cried and handed over the case.
  • 48. After much haggling the old man opened his bed once assured that success would come if he withstood one more test,—that of bodily torture by cold. “Your uncle will dream tonight and his word will be satisfied only by causing you to be divested of all clothing and tied to a bark toboggan and dragged ten times around the long house where you dwell. I know not that you will endure, for your magic is equal.” As predicted the old man dreamed that his nephew strip the next morning, though the weather was extremely cold. “I must drag you around the lodge ten times,” said the uncle, but first I must bind you securely with thongs.” “It will be very easy,” said the boy. “Really, it is nothing at all.” Emerging from the door the boy stood in the intense cold and stripped himself, throwing his garments back into the lodge. “Now I am ready,” said he, and his uncle then bound him tightly with thongs, placing him on the bark toboggan. After the first trip around the uncle called out, “Oh nephew, are you still alive?” And the boy answered, “Yes, uncle,” in his loudest tones. For a second time the uncle made a circuit of the long house, which was the longest in the world, and again called out, “Oh nephew, are you alive?” receiving an answer just a bit fainter, “Yes, uncle.” Each time around the uncle asked the same question and each time the answer was fainter until the ninth time his nephew’s voice was scarcely audible. So he made another circuit, thinking as he made it, “This time he is frozen as stiff as an icicle.” So when he had completed his tenth round he spoke again, “Oh nephew, are you alive?” And to his great surprise the boy called in the most sprightly tones, “Yes uncle,” whereupon he was released of the cords and entered the lodge. All this the boy reported to the skull who said, “On this night you shall dream, and you shall demand that your wizard uncle submit to the same ordeal. Allow him no mercy, for if he gains in one point all is lost.” Midnight came and with it the episode of the dream demand. The old man weakly yielded and then both slept until morning. The test then began, but the old man begged, saying, “I am old and if you will
  • 49. allow me to retain my clothing you will be satisfied.” But the nephew answered, “Oh no, uncle, I must be satisfied according to my desires. What you say has nothing to do with the event.” “Then do not bind me, for the cords will cut my flesh and this is not a part of the demand.” Nevertheless the boy bound his uncle and threw him on his toboggan. With the completion of each circuit he would ask his uncle if he were alive, and each time would be assured that he was. Upon finishing the ninth trip he again asked, “Uncle, are you alive?” but there was no reply and drawing the toboggan to the door he felt of his uncle and found him frozen as stiff as an icicle. He thereupon, lifted the toboggan high, and his uncle was upon it. With a mighty fling he threw it afar and when it came down with a crash his uncle broke into bits like an image of ice. Reporting the event to the skull he was praised for his endurance. “Now we shall all live again and those who have been overcome by magic will be set free,” said the skull. “Cover me with a bear skin and when I call lift me from the ground.” Soon he called and Djoñiaik grasped the skull and lifted it from the earth and with it the cramped body of the tcisga. Rubbing it with his hands and anointing it he restored it to the form of a normal man. “I am your uncle, restored,” said the former skeleton. “Let us now search for your father and mother.” Together they set off and found another mound from which they conjured the skeletons of a man and a woman, and restored them by rubbing and by oil. All with great joy returned to the long house where they attended to the little sister, Djoñiaik rubbing her as was his custom and restoring her to a full grown maiden. Everyone was now happy, and the roosting wizards silently departed, leaving the great long house habitable for the restored family, and soon more men and women and children came to live in the long house and it became a dwelling where all were happy.
  • 50. 31. THE VAMPIRE SIRENS WHO WERE OVERCOME BY THE BOY WHOSE UNCLE POSSESSED A MAGIC FLUTE. There was a long bark lodge, alone by itself in a small clearing. Here dwelt an elderly man and his nephew. Hadno’´sĕn , the uncle, possessed a marvelous flute, which he kept in his war bundle, wherein also were all his charms for luck in warfare and in hunting. The flute possessed great power, and it was the oracle most consulted by the old man. Misfortune had befallen the people through the machinations of certain sorcerers, and the flute remained the only potent charm left by which the old man might foretell events. As the uncle grew older he began to worry about the future, for he was reaching the age when men cease to go on hunting excursions. Now his nephew, Hauñwan ´dĕn ’, was at the age when it was considered that a boy is not yet ready for the rigors of the chase. Therefore, the old uncle was perplexed. On a certain night the old man came home to the great empty bark lodge and threw down a deer. “This is my last hunt,” he exclaimed. “My nephew, you must soon learn to shoot.” “Oh I can shoot as well as any one,” said the boy with great assurance, and so the old man gave him his bow and an arrow. “Shoot the spot where I have hit that stump with an arrow,” said the old man, and the boy taking the big bow and long arrow, pulled the cord back and shot. His arrow struck the very spot where his uncle had pointed out an arrow mark. “Tcă‘, tcă‘!” exclaimed the old man. “You are now able to shoot. Tomorrow you may go hunting, but first wait, I will tell you what animal you will be able to kill.” So saying the uncle took his flute from its bundle and examined it. Then he blew a few notes of a charm song upon it. In another moment the flute itself uttered notes though nobody blew upon it. “This indicates that you will kill a deer,” announced the uncle.
  • 51. The next day Hauñwandeh went into the forest alone and shot a deer, which he brought home to his uncle. “This is good,” said the uncle. “Now let me consult my flute again.” Once again he blew the notes of the charm song upon his flute, waited a moment and then heard it call out, “Two deer shall be killed tomorrow.” “Now, my nephew,” said the uncle looking very grave, “I must tell you that while you must in the future hunt for both of us, you must never go south. Listen to what I say, never go south.” On the morrow the boy returned dragging two deer and threw them on the ground outside his uncle’s doorway. Again the uncle expressed his satisfaction, and again he consulted his flute. “My nephew,” he announced after listening to the oracle, “tomorrow you shall kill a deer and a fat bear. Again I warn you never to go south.” The boy that night had troubled dreams and through his mind the question was repeated over and over, “Why may I not go south, Oh why may I not go south?” The hunting continued each day as before, but the boy was greatly troubled about his uncle’s command. Nevertheless he obeyed until he saw that the lodge was well supplied with meat which hung in the smoke from every rafter, curing for winter’s use. Then he thought that come what might to him he would go south, and if he died his uncle would have plenty to eat for a long time. So resolved he went on his hunt, and by taking a circuitous route, he went from east to south. Soon he found the trail of an elk which he followed southward for a very long ways. Greatly fatigued by the chase he still kept up the pursuit, until he came to a little open place in the forest, where to his great surprise he saw a young woman sitting on a log at the side of the trail. She looked up at him with a bewitching smile and said, “Come sit on the log with me, you look tired.” Hauñwandeh looked at her, found her pleasing, and so went to the log and sat down, saying nothing. Soon the girl spoke again. “It is not customary,” said she, “for young people to sit so far apart when they meet as we have done. Draw close to me and rest your head on my lap, for you are very tired.”
  • 52. MAGIC WHIST LE. This whistle, used in shaman istic ceremo nies, is made from an eagle’s wing bone. The boy therefore sat closely to her and then placed his head in her lap. Thereupon the girl fell to stroking his hair and scratching his head, looking the while for wood lice. As she did this the boy began to feel sleepy and fearing something of evil might befall him tied one of his hairs to a root beneath the log, which act the girl did not notice. Then he fell into a deep sleep. When the young woman saw that he was fully asleep she began to pat his body with her hand, and the boy shrunk in size with every pat until he was so small that the young woman placed him with ease in the basket she carried. Then she leaped into the air and flew away, as witches do. In a short time, however, she came to a halt and was slowly drawn back to the log from which she had started. The hair had stretched its limit and drew her back. She took the boy out of the basket and struck him with a small paddle and he became restored. “I will fix him next time,” thought she. Hauñwandeh was now in the power of the witch-girl and stayed all day with her, until he became sleepy again, when she stroked his head once more, putting him to sleep. Making him small by patting, she again placed him in her basket and flew through the air to a river bank. Taking him out she asked, “Do you know where you are?” Hoping to destroy her magic he answered, “Oh yes, I know where I am. This is the place where my uncle and I catch our fish.” So she put him in her basket and flew to an island in a large lake. Taking him out she questioned him further, “Do you know this place?” Still hoping to deceive her he answered, “Oh this is the place where my uncle and I come with our canoe.” Angry that she could not take him to an unfamiliar spot the witch- girl replaced him in her basket and leaped high in the air, this time taking him to a far distant place. Descending she alighted on the edge of a great precipice, so deep that the tops of the trees below were only faintly visible. She gave a shriek and threw the basket over the cliff. Now Hauñwandeh, being attacked by the powers of witchcraft, began to develop his own magic power, and when he went over the cliff and felt himself falling, he desired to fall as an autumn leaf, and so he fluttered down to the bottom without injury. He tumbled out of
  • 53. Welcome to our website – the perfect destination for book lovers and knowledge seekers. We believe that every book holds a new world, offering opportunities for learning, discovery, and personal growth. That’s why we are dedicated to bringing you a diverse collection of books, ranging from classic literature and specialized publications to self-development guides and children's books. More than just a book-buying platform, we strive to be a bridge connecting you with timeless cultural and intellectual values. With an elegant, user-friendly interface and a smart search system, you can quickly find the books that best suit your interests. Additionally, our special promotions and home delivery services help you save time and fully enjoy the joy of reading. Join us on a journey of knowledge exploration, passion nurturing, and personal growth every day! testbankfan.com