100% found this document useful (2 votes)
15 views

Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Solutions Manual 2024 scribd download full chapters

The document provides information on downloading various test banks and solution manuals for textbooks, particularly focusing on 'Starting Out with C++ from Control Structures to Objects' by Gaddis. It includes links to download the solutions manual and test bank for different editions of the book, as well as other related educational resources. Additionally, it outlines a lesson plan on arrays in C++, including pre-lab assignments and procedures for working with one-dimensional and multidimensional arrays.

Uploaded by

asadorcajbon82
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
15 views

Starting Out with C++ from Control Structures to Objects 8th Edition Gaddis Solutions Manual 2024 scribd download full chapters

The document provides information on downloading various test banks and solution manuals for textbooks, particularly focusing on 'Starting Out with C++ from Control Structures to Objects' by Gaddis. It includes links to download the solutions manual and test bank for different editions of the book, as well as other related educational resources. Additionally, it outlines a lesson plan on arrays in C++, including pre-lab assignments and procedures for working with one-dimensional and multidimensional arrays.

Uploaded by

asadorcajbon82
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Visit https://testbankfan.

com to download the full version and


explore more testbank or solution manual

Starting Out with C++ from Control Structures to


Objects 8th Edition Gaddis Solutions Manual

_____ Click the link below to download _____


https://testbankfan.com/product/starting-out-with-c-
from-control-structures-to-objects-8th-edition-gaddis-
solutions-manual/

Explore and download more testbank at testbankfan


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

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/

testbankbell.com

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/

testbankbell.com

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/

testbankbell.com

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/

testbankbell.com
Chemistry 7th Edition McMurry Test Bank

https://testbankfan.com/product/chemistry-7th-edition-mcmurry-test-
bank/

testbankbell.com

Microeconomics 9th Edition Parkin Test Bank

https://testbankfan.com/product/microeconomics-9th-edition-parkin-
test-bank/

testbankbell.com

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/

testbankbell.com

Managerial Accounting 3rd Edition Braun Test Bank

https://testbankfan.com/product/managerial-accounting-3rd-edition-
braun-test-bank/

testbankbell.com

Principles of Microeconomics 8th Edition Mankiw Test Bank

https://testbankfan.com/product/principles-of-microeconomics-8th-
edition-mankiw-test-bank/

testbankbell.com
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/

testbankbell.com
LESSO N S E T

7 Arrays

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.

Approximate Check
completion Page when
Contents Pre-requisites time number 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 - L AB RE A D I N G AS S I GNMEN T
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.
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.

4 0 14 5 0 6 1 0
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 - L AB W RI TI N G AS S I GNMEN T

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 .
Visit https://testbankbell.com
now to explore a rich
collection of testbank,
solution manual and enjoy
exciting offers!
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.

L ES S ON 7 A

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
<< " inclusive\n";

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
Other documents randomly have
different content
This challenge shall stand good for three months, unless
sooner accepted.
G. F. HERTZER.
Tiffin, O., January, 1882.

To which the “American Tailor” replied in the December number of


1883, in the following sarcastic style:

“THE CHAMPION CUTTER OF AMERICA.”


“According to the rules which govern sporting matters, the
town of Tiffin, Ohio, has the proud distinction of being the
abiding place of the champion cutter of America. Mr. G. F.
Hertzer, the gentleman to whom we refer, issued a challenge
some two years ago to all the cutters in the town of Tiffin in
particular, and those who might be scattered here and there
through the rest of the world, in general, to compete with
him in a cutting match under certain conditions calculated to
insure fairness. As the challenge was not accepted, Mr.
Hertzer is, as we understand it, entitled to the proud
appellation of champion cutter of America. It is in full
accordance with the eternal fitness of things, that the
championship should be located in Ohio, and in the liberality
of our heart we are perfectly willing that it should remain
there. As Mr. Hertzer’s challenge was published in a local
paper, it is within the range of possibility that it may not have
been seen by several cutters, whose fault or misfortune it
may be, to dwell outside of the precincts of the town of Tiffin.
But, however, this may be, we are prepared to admit that it is
not likely any cutter in this country, outside of New Jersey,
would have had the temerity to have accepted it. Mr. Hertzer
is, therefore, fully warranted in asserting that, ‘this challenge
has not been accepted by any one, and now I claim that
there is not a cutter or tailor inside or outside of Tiffin, who
can accept and beat me, until he has my book on cutting,
which, in due time will be published.’ About the only
suggestion that we are able to offer the profession, by way of
consolation, is that when Mr. Hertzer’s book shall be published
they may be enabled, by purchasing and studying it, to
compete with the author with some faint hope of success.
Meanwhile, Mr. Hertzer wears, by virtue of the non-
acceptance of his challenge, the sonorous title of the
champion cutter of Tif—no, of America. We take off our hat.”

MODELS.
AS THE COLLAR SHOULD BE PRESSED

When I sent the principle of Diagrams XXII and XXIII, I enclosed


the following advertisement, and other questions, which are
explained in the answer:

“Be Diligent to Gain Knowledge for Knowledge is Power.”

SEVEN POWERFUL REASONS


Why I claim that I cannot be beat

In fitting gents’ and boy’s garments and why I claim that I


can beat any cutter in fitting large waisted men or boys, and
persons with low shoulders or long necks.
1. I have spent more time, more money and more brains on
the science of gents’ and boys’ garment cutting than any
other cutter; and I can prove it.
2. I know more about cutting and fitting gents’ and boys’
garments than any other cutter, and I challenge any one
to disprove that fact.
3. During the last four years I have challenged any cutter or
tailor to go with me in a cutting match and I have had no
response.
4. I can alter and refit any misfitting garment which your
tailor may have sponged on you as long as there is cloth
enough to do it with and the victim is willing to pay for it.
5. I furnish the material for garments cheaper than any other
merchant tailor and charge no more for my work than
those who cannot make the above claims.
6. Selling from samples, it is my interest to sell first-class
material only.
7. I work and sell for cash.
The above reasons should induce everybody to entrust
their next order of clothing to your obedient servant,
G. F. HERTZER.

SHOULDERS.
(From a circular of Wanamaker & Brown.)

POCKETS.

(From a circular of Wanamaker & Brown.)

The following sledge hammer blows followed:

From the “American Tailor” of Nov. 1886, page 98.


ANSWER TO CORRESPONDENTS.
Mr. G. F. Hertzer, of Tiffin, Ohio, asks us in a recent letter, to
give a combination of a frock and sack, having the same
shoulders and explain the difference in the seams and
account for the stretch, or shrinkage of the frock coat waist
seam, which can not be effected on a sack. We are by no
means certain that we understand what our correspondent
means, but we think, that in the May and June numbers of
this Journal for 1884 we gave the desired information. We
cannot afford the time to enter into lengthy explanations of a
problem unless it is clearly stated, and of general interest. Mr.
Hertzer also asks the following questions:
1st. Why we give Fine Trade Designs without sleeves?
2d. What we mean by “half scye.” “I asked,” he writes, “the
opinion of several cutters. One said it meant the half measure
of the armhole, and another that it meant half the measure
around the arm. Is either right? If so, can you find two
cutters who would not make one or two inches difference in
that measure?”
In reply to the first question we would say that we have but
twice given a “Fine Trade Design” without a sleeve draft. In
one case we said that the sleeve should be drafted as taught
in “Theory and Practice,” but in the other omitted to do so,
thinking, perhaps unwisely, that our readers would
understand that it should be so drafted.
In reply to the second question, we desire to say that by
“half scye” we mean half scye, not half knee, nor half waist,
nor half anything else. The armhole of a coat is the scye, but
a man’s arm is not, therefore it is absurd to suppose we could
mean the measure around the arm.
If, as our correspondent suggests, there is a cutter living
who cannot measure the scye twice without a variation of one
or two inches, or if there is a cutter who cannot measure it
fifty times with less than one-eighth inch difference, that
cutter should devote his mind and muscle to hod carrying.
Our correspondent sends us, in his letter, small drafts of
two trousers which look unlike each other, and asks us to tell
him how they differ, and if each will fit the same man?
There seems to be no difference in the drafts, except in the
location of the seams. But whether there is or not is of little
consequence. Life is too short for us to draft the patterns to
full size and devote an hour or so to the solution of a problem
of no importance.
Mr. Hertzer concludes his letter as follows: “Since the
foregoing was written, I have received the ‘American Tailor’ for
this month and I see that others make the same request
about frock and sack coats.
As far as I know the diagram on page 77 may be suitable
to others, but I am not smart enough to derive any benefit
from it, for it is not complete—frock coat skirt is not in full,
nor are the fitting points given on the front shoulder, and
minus sleeve.
Should I use my own pattern and fail to make a good sack,
you would say that my patterns are not correct, or that I did
not follow your instructions. It leaves too many holes for you
to slip out of. Now if you would give all the fitting points, then
we would have a fair chance to try it. This is plain talk, but
you always solicit the opinion of your subscribers, and here is
mine without coloring.”
This “plain talk” is about as silly as anything we ever read.
The draft referred to is an illustration of how to cut a sack by
a frock coat pattern, and does clearly illustrate it. It was not a
coat system, and the skirt of a frock coat has no more to do
with it, than a box of matches. “If a cutter drafts a sack as we
explained by a poor frock coat pattern, he will produce a poor
sack, but if he uses a good model, he will make a success of
it.” We don’t “slip out” of anything, as our correspondent
intimates, and certainly have wisdom enough to prevent our
making ourselves ridiculous by endeavoring to get down to
his intellectual level.
In an advertisement which was enclosed in the letter under
discussion, Mr. Hertzer says: “I have spent more time, more
money, and more brains on the science of gents’ and boys’
garment cutting than any other cutter. And I can prove it.”
Possibly if he had spent less brains, he would have on hand
a more liberal supply, than he seems to have in stock at
present.
So far the columns of the “American Tailor.”
The following local appeared in the Tiffin “Tribune” of Dec. 9th,
1886:

TALK ABOUT A TAILOR.


If You Step on a Man’s Corns He Will Howl.
This seems to be the case with the editor of the American
Tailor. The November number, 1886, of that journal contains
over a column of red hot shot against our townsman, G. F.
Hertzer, for having an opinion of his own, and claiming that
he has spent more “brains” over the science of gentlemen’s
and boys’ garment cutting than any other cutter. If the
American Tailor wants to prove that G. F. Hertzer is “silly” and
with “not much brains left,” he ought to come out and accept
his challenge for a cutting match, and beat him on his own
ground. Ridiculing him will not amount to anything as long as
Mr. Hertzer turns out such nice fitting garments as he does at
present.

A copy of which was sent to the editor of the American Tailor, and
later I have enclosed a clipping of it, in every letter which I have
sent to that office, but the editor being so far above my intellectual
level, never answered, so far as I know.
Now I have a Christian spirit in me, even if I do not come up to be
a good Christian, for it is my misfortune to be always below the
level, but having received enough slaps to make one cheek sore, I
do now, as a true Christian, offer the other side, by asking more
questions.
1st. Why did you use a poor frock coat pattern, for illustration, as
you indicate, by saying: “If a cutter drafts a sack as we explained by
a poor frock coat pattern,” etc.?
2d. Will not the diagram on page 77 in the October number of
1886, to which I alluded, produce the half sack coat nearly ½ inch
larger than the frock, by sewing one seam less on the sack?
3d. Will not the sack coat armhole be nearly ½ inch longer over
the back for the same cause?
4th. Will not the whole side of the back of the sack coat be nearly
½ inch longer than the frock for the same reason again?

SEAMLESS BODY.

The coat, as represented by the above front and back


views, I have on hand and intend to keep it, and anyone
can examine it and satisfy himself that it is not
misrepresented. My intention of making it, and
representing it in this book, was to illustrate what a hot
iron and a skilfull workman can do with a straight piece of
woolen.
5th. Will not nearly ½ inch more width, and nearly ½ inch more
length, in a sack coat back, produce the sack coat too large over the
blade?
6th. Will not the extra length of nearly ½ inch in the sack back
armhole produce too much under sleeve behind?
7th. Must not all armholes of both frock and sack coats be the
same, if one is to fit as good as the other?
8th. When was Miss Scye born? In what dictionary did she live in
1886? Where is her headquarters now? Is she single, or is she
married to Mr. Arm?

Note.—Fig. I and Fig. and Dia. XV, and Dia. II, X, XIV, XV, XIX,
XX, XXI, XXII, XXIII, were drawn and finished in ink by
myself, and they are in my own writing. All others were
made by regular artists, as they claimed to be, after my
pencil drawings. But the above mentioned had so many
mistakes that I had to throw them away and make new
drawings. All Dia. in the Supplement are my own
drawing. It may be that my lines and figures are not so
nicely drawn, but I know that they are correct and that
they are plain. It may also be, that in the opinion of
some, I have drawn too many lines and put on too many
numbers, but this book is not written for professors
alone, but for students and new beginners in cutting, as
well as for tailors, and can not be made too plain.
Under Sack Coats.
For a three seamed under sack, Dia. III and VIII answer all
purposes. The parts of Dia. III place the height of back at 13½. A
five-seamed sack is to be made, for three reasons: 1st. In order to
put in more waist proportion in the side of the waist. 2d. To fit the
over-erect form. 3d. To make an overcoat. The normal form can be
fitted with a three-seamed under sack from the smaller sizes up to
size 38, but the larger sizes out to be cut as five-seamed, because
they usually require more waist. It is true smaller sizes have
sometimes very large waists, but from one-half to three-fourths
addition to the side at line 17½ will cover it. Boys usually wear sack
coats; and, guided by this work, the breast measure for a boy should
not be taken looser than that for a man, because the scale of one-
half breast and 2½ in. will provide for that, to the full extent.
To make a five-seamed garment over Dia. VIII, for the purpose of
giving more waist proportion, simply enlarge the square, say 1 inch,
and cut out the surplus thus obtained from under the arm, or still
better, leave it on the coat as an outlet but allow the seam on the
under arm cut. I wish to add, however, that it is easy to stretch the
side-piece on the under arm cut when it is sewed up, and it tends to
improve the side if properly done; but if it is stretched at all, it must
be done so upward, and whatever it is so lengthened, say perhaps
half an inch, must again be reduced over the center of the back. All
this may look trifling, but you must remember that half an inch more
or less cloth in the length of the back will make quite a change in
the fit.
To make a five-seamed garment, for the purpose of fitting an
erect form, examine Dia. VIII, and you will notice a dotted “V” on
line 17½, or at the hollow of the waist. At the side seam this wedge
is five-eighths of an inch, and to fit the erect form this wedge must
be folded up in the pattern; and to accomplish this on a flat paper
the pattern must be cut through under the arm and above the point
of the wedge, when the fold can be laid smoothly, but the pattern
will divide at the arm as an artificial gore, representing the gore
sidewise. The square will enlarge in proportion to the gore cut, and
the upper portion of the back will fall downward and shorten from its
original position five-eighths, or the width of the fold at the side
seam. But although the back appears to shorten on top it retains its
balance over the shoulder blade. The actual shortness is at the
hollow of the waist. In folding up the gore across the side piece will
cause the side piece to make a sharp curve at the side, and a sharp
hollow or kink behind, and both must be straightened by cutting
away the curve at the side and by filling out the hollow behind, so
that the under arm cut will represent two straight lines. In regulating
the under arm gore, two seams must again be allowed at the
armhole, and the balance may be cut away, or it may be used as an
outlet, which may come very handy sometimes. In sewing up that
gore, the side piece usually stretches easily upward, say another
three-eighths, and said three-eighths must again be taken away
from the length of the back over the shoulder blade, and for this
reason Dia. VIIIa has the height of back at 12¼, or 1¼ less than
Dia. VIII.
For further explanation of this fifth sack coat seam, or under arm
gore, and as to the difference between the erect and the large
waisted form, I refer to the article on large waists.
Large waists and erect forms are mostly combined in one person,
because when a person’s waist grows forward the shoulders throw
themselves backward, in order to keep the body in balance, and if
this would not be the case, a large waisted person would tumble
forward unless supported by something else. Anybody can see how
this works. Take a normal waisted form with a coat which fits well in
the back and place a sack of flour, or any other weight of fifty
pounds, in front of this waist, supported by the arms, and the whole
upper body will throw itself backward in order to keep its balance,
and the back of this coat will become too long across the hollow of
the waist behind, because the front of the coat cannot stretch like
the body itself.
Diagram VIIIa is made especially for the erect form, and is in all
respects like Dia. VIII except the “V” closed up across the hollow of
the waist, and the three-eighths stretch of the side piece upward,
and the consequent shortening of the back of 1¼. The difference at
the front edge cannot be considered a fitting point. If Dia. VIIIa is
used for a large waisted form, which is mostly always erect, then the
gore between the back and side piece should be cut like Dia. VIII, or
nearly so. In all cases, whenever the waist becomes fuller, or the
person more erect, the spring over the seat may be enlarged, and if
it becomes too large, it is less trouble to reduce it than if the spring
is too small. A good outlet over the seat and center of back of a sack
coat comes very handy sometimes, but such a seam should be
sewed by hand, because the machine will usually cut its edges.
Now, in considering the above, a cutter must observe if the form
he intends to fit is erect or stooping, or large waisted, or if there is a
combination of such, or other abnormal conditions. The single erect,
or stooping, or large waist, or long or short necked person is very
seldom to be found; there is mostly a combination of two or three
abnormal conditions combined in one person.
The gores between the back and the fore part of both Dia. VIII
and VIIIa are cut out pretty close at the hollow of the waist, and it
will never hurt any sack, cut over either of them, to have one-half
inch more at line 17½. Dia. VIIIa may be used for the normal form,
providing the depth of the back is made 12¾ numbers above line 9,
and I have often used it for such with good results.
A sack coat with two seams and which is intended to conform
partly to the hollow of the waist in the back must have a spring over
the center of the seat, starting at the most hollow part of the hollow
of the waist. Said spring cannot be obtained by allowing it at the
side of the back which may be six or seven inches wide. Even if said
spring were able to push the coat back over the seat it would at the
same time push the coat upward and backward and away from the
waist, and make it too wide and too long there. The only way to
make such a coat good is to cut the spring, intended for the center
of the back, at the side, and stretch the side of the back, under the
iron, and at the hollow of the waist, and press the whole back in the
shape of the pattern as in Dia. VIII and deduct the seam behind.
Sacks without any downward seams will never be in demand until
we come closer to oriental fashions, or until we fall back upon
cloaks. For the purpose of finding out how close I could come to
making a reasonably good fitting sack in the back of the waist,
without any seams downward, I have made four of them during the
last 12 years. The first one I had to rip up again and make it up into
a smaller size as a three seamer. The second and third I sold as
cheap coats and the purchasers never found out that they wore
seamless coats. They were better than a great many five seamers
seen on the street, though they were loose coats at and around the
back of the waist. One of them I had photographed on myself, both
front and back views, and have the photo still in my possession. One
back and one front view I sent to the office of the then “American
Tailor,” and a letter in my possession says that they consider it a
good fit for such a coat. The last seamless coat I made last summer,
1891, and have it on hand now, and I intend to keep it at least for
the present. A front and a back view of that coat will be found in
“Figures and Diagrams.” For the last six months I have kept it for a
show coat, with a card on it offering $25 to any cutter or tailor who
will make one like it, and which fits as good or better. So far I have
had no call for the $25, nor did I expect a response, because it will
not pay anybody to make one even for $25, and risk a fit. I made
the offer to advertise my work, that was all.
The fit of a seamless coat must be put in by the maker, and it
takes a cutter and a maker who knows what he is about, and one
who don’t care how long it takes to make one and what it costs; in
fact, it must be a work done for pleasure—not for profit, except
perhaps to gain knowledge, for “Knowledge is Power.” Now I will
give a description of how such a coat may be made:
Select a good fitting sack coat pattern with three seams, and one
which is not cut very close at the side of the waist, that is a sack cut
pretty straight. The one I have on hand now is cut over Dia. VIII,
and as size 36. The height of the back above line 9 over the front
should not be over 13, but the top of the back should be placed at
2½, so that the portion over the blade is short and the top of back
cut close to the point of the angle of 135 deg. If the top of back
becomes too close to the neck, it can be cut down after the coat is
tried on. On account of the short back, the armhole must be cut
pretty low and well forward. The front must also be cut large and
fitted to the body after the back has been regulated. After the
pattern is thus cut, proceed as follows: Close the back and the front
from the bottom to the hollow of the waist, lapping the seams; at
the bottom of the armscye the front and back will lap over about 1¼
inch; fit the pattern to the back so that one seam is deducted from
behind at the neck and at least two seams at the bottom, so that the
hollow of waist shows as little surplus cloth as possible. Over the
seat, the cloth may be stretched in width, thus obtaining some
artificial spring over the seat. Cut the back, and the back of the
armhole to within 1½ inch to the front of the armhole and not quite
as deep as the pattern. In cutting the pattern the back shoulder
seam must be cut pretty low at the armhole and should be at least
as low as 8 for the reason that the lap of the pattern at the side
seam will bring both back and front shoulder seam too close
together and would have to be pieced, but if the back shoulder seam
is thrown down, and the front up, both will come out right. Now the
next thing to be observed is to make an artificial wedge of whatever
the back and the forepart lap at the bottom of the armscye, running
out to nothing at the waist. This must be done by stretching the
bottom of the armhole in width, and which stretch must be extended
down to the waist, but nothing must be stretched at the waist, for
the waist is too wide already, owing to the hollow of the back, in the
pattern which can not be imitated on the straight coat back. That
stretch must start at the point of the shoulder blade say about 4 in.
from the center of the back, and must continue to the front of
armhole. The stretch will throw the front of armhole forward of
whatever the stretch amounts to, and for this reason, the front of
the armhole must be cut 1½ in. backward, of what it is intended to
be. After that artificial wedge is stretched in, the back side seam
may be marked and stitches drawn in, and the forepart fitted to it
and the front of armhole may be cut complete.
That all of this can not be done without trying on ever so many
times is self evident. Otherwise such a job must be made of material
which stretches well, and must be made up thin and the lining put in
plenty large, so it can give, and it would be best to make up without
lining. Nothing can be accomplished by shrinking. Everything must
be done by stretching. Plenty outlets should be left at the neck and
shoulder seams and in front of the breast. Such a coat can not be
fitted on the cutting board, but must be fitted on the body.
May be it is nonsense to write about a seamless coat, but I have
seen so many absurd ideas advanced about cutting garments, that
this may not be the worst. But a cutter who knows the true
difference between coats with different seams, certainly knows more
than if he is compelled to swallow anything the Fashion Reports
please to dish out for us, in the shape of diagrams for new “Styles.”
Narrow and Broad Backs.
In the position of Dia. I or IV, it makes little difference if a back is
cut narrower or wider at the bottom of the armhole, because all
parts lie near to their natural position, which they must assume
when the garment is on the body. A narrower and a broader frock
coat back, cut with the same gore and with the same height as in
Dia. II is apt to change the fit and may spoil it entirely. Dia. I, II, III
and IV show a different height of the back. In Dia. I the height of
front is 9 and that of the back is 14⅜. In Dia. IV the height of back
is 14 on line 9 in front. In Dia. II the height of back is 15, but at the
junction of the back and the sidepiece the line is dislocated and
turned up, 15 deg. along the back. In Dia. III the frock coat back is
14¼ above line 9, and the sack coat back is only 13½ above line 9,
though both sack and frock coat backs are even, and the same, from
top. The difference of distance, to the point, where both strike line 9
on the front is caused by the smaller frock coat back and the wider
sack coat back at their junction, and that position must be well
understood by a cutter, because most all diagrams sent out by
Reporters of Fashions are laid out in position as Dia. II, or nearly so,
not because it is a true position, but, because all parts can be cut
without piecing.
Now, it must be admitted, that the position of the front, the back
and the sidepiece of Dia. I are nearer in position to the body, at, and
around the waist, than Dia. II or III, and though Dia. I is not in
perfect harmony with the body, we must admit, that Dia. II and III
are far more out of the way. It will be seen, that if the frock coat
back of Dia. I were cut 1 in. wider at the junction with line 9 over
the front, it would become ¼ shorter on top as soon as it was
thrown in position of Dia. II, and the variation would be still greater,
if it were done on a broad sack coat back. Observe that the frock
coat back in Dia. III is higher on and above line 9, but when both
are thrown down and in at the waist and parallel with the front base,
both will assume the same height. As long as all the parts are cut in
the same proportion, it matters little or nothing in what position we
place them on the cutting board, but it matters a great deal whether
they are in the right position when on the body.
The angle of 135 deg. is always the same, and from it the
shoulder slope is 22½ deg., but, if we take the square of 17½ and
make calculations from that base, the shoulder slope is 30 deg., but
the parts are all the same. As long as the diagrams are laid out in a
square of 20, as Dia. I and IV, the back may be made a trifle
narrower or wider, and it will not endanger the fit of the garment,
although it is always bad policy to change a diagram, and
particularly a curved seam. A seam always represents something
taken out, or something placed there, and a seam calculated for a
certain point, and 1 in. one way or the other may make a decided
change in the appearance, or in the fit.
The simplest garment is the vest as far as Merchant Tailoring
goes; but simple as it is, there are seldom two cutters who produce
it in the same way, and with the same result; and the same is true of
coat and pants. This goes far to show that no true system of
garment-cutting is in existence, or if it be, it is in the hands of
cutters who do not know it as such, even by those who may use it—
certain it is, that no such system is in print.
Now, I will consider the vest in its natural position, on a square of
20, although the gore under the arm will bring it out of that position
again as soon as the seam is sewed up. Back and front being in their
natural positions, or nearly so, we can cut the under arm seam
further backward or forward without injury to the fit. But as soon as
we make the width of the back considerably wider or smaller, we
find that the height of the back above the arm-hole changes—when
the back is thrown into an angle of 15 deg., or in a square of 17½.
The smaller the back is cut, on the square of 20, the shorter it will
become above the armscye, when thrown in a square of 17½,
providing always that the turning of the back starts somewhere at
line 9, which crosses line 11¼ under the armhole, at an angle of 15
deg.
When both frock and sack backs are thrown downward and in a
square with line 9, or parallel to the front base, then it will be found
that the backs are all of the same length. Further, I refer to Dia. III,
and line 9 on the front base. Lines 9 and 11¼ cross each other in
the center of a square of 20, and the crossing lines are at an angle
of 15 deg., for the simple reason that their bases are 15 deg. apart.
The width of an angle of 15 deg. is ¼ of its length. In the case of
forming a diagram within a circle, and on a diameter of 20 units, as
in this work, we find the half-diameter 10 units, or 10 in., or 10
numbers of the scale, just as we may please to term it. That angle
of 15 deg. is 2½ in. wide at 10 in. length. It spreads ¼ of an inch in
every inch of its length.
Now, in case of cutting a vest, the back and front are cut through
in the center of the square of 20 on line 9, and if the back is swung
into a square of 17½ and parallel to line 11¼, the height of back
remains 14. But had the back been cut 1 in. wider, its height would
be 14¼; and had it been 1 in. smaller, the height would be 13¾.
Had the back been cut 3 in. smaller, as for a sack coat, its height
would become 13¼, and had the back been cut 6 in. smaller, that is,
4 in. wide, then its height would become 12½ only.
This is a regular “Fig.-mill,” and has been bothering me for the last
ten years, and strange as it may appear, I could never comprehend
it myself, much less explain it to others, until now and during the
years of 1888 and 1889. Here, then, is the result: If we have a good
pattern we cannot change the width of the back while it remains in
an angle of 15 deg., or in a square of 17½, without changing the
height above the armscye. All patterns, or most all of them, are cut
in, or pretty nearly in the position of the angle of 15 deg., or the
square of 17½, for the reason that it is the most convenient way of
cutting. A cutter must understand that; and, although it is
convenient to the cutter, the parts of the garment are in an
unnatural position at the waist, and he must be able to know how
much they are at variance.
During the last ten years I have been pronounced as a “crank”
when I claimed that I would yet show, that the height of the top of
the back depended upon its width at the bottom of the armscye and
not upon certain proof measures which are not proof at all. As to
“crankism,” I can console myself with the host of “cranks” who have
preceded me, and who are to-day revolutionizing the world with
their so-called cranky ideas. If it were not for the “cranks,” the oxen
would still be the principal “threshers” of the wheat to-day. Persons
of small minds, and contracted ideas, who have never had an idea
which they could sell for anything, or which anybody would accept
for nothing, are the ones who are quick with reproaching another for
being “cranks.” But the term “crank” has no reproach for me,
because all the various machinery which is used throughout the
world to-day is turned and kept in motion by some kind of a crank,
no matter if it be turned by hand, or foot, or by horse or steam
power, or by electricity. Without “cranks” the world’s machinery
would soon rust, but as long as the boiler is not bursted, or the
crank is not broken, just so long will we be kept flying, and by
constant friction, we will be kept bright, and we shall be able to fulfill
our destiny in this world, by doing our share toward making
mankind, whatever the Supreme Architect has ordained it to be.
Garment fitting is not a positive rule. A garment is not made of
sheet iron, where every sixteenth of an inch variation would give a
great amount of friction. A garment that cannot stand one-eighth to
one-fourth of an inch variation on almost any point is a misfit from
the start. Again, the present style of men’s garments is loose—
always has been and always will be. Even when tight pants were in
fashion they were loose over the body itself. Who will be umpire in
the case of fits? Who will prove that a certain pants leg must be just
so wide in order to make a fit, or conform to style? Who will contend
that the waist of a coat must have just so much space, and no more
nor less, to make a fit? Almost any reasonably well fitting coat can
stand a little alteration in the heighth of the neck one way or
another without injuring it. A well balanced 36 coat will hang well on
sizes 35 and 37. If that is the case (and very few will dispute it),
then it proves that a well balanced coat may be an excellent fit even
if it has more or less cloth surface in some places than it might have.
Dia. III is especially made to illustrate my idea about the width of
the back part of different garments, at the bottom of the armscye.
The vest, with its height of back at 14, might also be placed thereon,
but it is not, because I thought too many lines would spoil the
illustrations.
In practical garment cutting, a cutter is often compelled to cut
some backs narrower or smaller on the same kind of a garment in
order to save material, or in some cases, when a larger garment is
to be cut down to a smaller size, where the points around the back
of the armhole, or at the shoulders, cannot be made even with our
patterns, then it comes handy for a cutter, if he be able, to place
certain quantities on either back or front and take it off on the other.
Whenever that has to be done, lay your garments, or the pattern,
out in a square of 20 or its equivalent, and change the parts in that
position, and the lengths of the backs will take care of themselves.
This brings me to another point. An extremely broad frock coat
back at the bottom line of the armhole requires a pretty straight
sidepiece toward the back, and such a seam may be the better off, if
the back is held a trifle full over the blade; while an extremely
narrow frock coat back requires a very curved sidepiece toward the
back, and such a back should be basted or sewed pretty close on the
sidepiece toward the blade. Each of such backs assumes a different
height of back when laid out in the angle of 15 degrees, and each
requires a different treatment when sewed on the sidepiece.
All the heights of the frock and sack coat backs in this work are
calculated to be of certain width at lines 9 and 11¼ over the front,
and all back widths at that point should be as shown in the
diagrams. The swing of the back, or the turning point of it, is
calculated from line 9, no matter if the back lays in a square of 20,
or if the back part of that line be turned 15 degrees. No article in
this work is more important than this one, and every cutter should
make himself thoroughly familiar with its meaning, because it is a
new idea in garment cutting, and I will predict that in the Twentieth
Century all cutters will recognize that principle. It may be brought to
a finer point, but the principle will stand as long as the square and
the compass are recognized and used. Neither do I expect such
recognition without some “tall kicking” for few men will acknowledge
that they have been groping in the dark while they have been
claiming that they knew all that is worth knowing about garment
cutting.
The Neckhole and Shoulder Seam.
If it is not desired to connect the sleeve pattern into the armhole
and on both seams, the shoulder seam may be cut into any shape or
form as long as the balance is retained; but whenever we intend to
connect the sleeve with the armhole, as in Dia. II or VII, we must
cut the normal shoulder seam with a lap or spring of from three-
eighths to one-half at the neck, and which lap must be run down
fully to the middle of the shoulder seam and then reduced to
nothing at the armhole, and in such a shape that the front part is on
a curve. On a vest the angle of 135 degrees furnishes the correct
slope, and with the neck band properly worked and turned up, gives
enough spring around the side of the neck. But a vest collar and
necktie give more bulk, and a coat is also cut closer to the center of
the neck, and consequently a coat requires more width, or spring, in
and on top of the shoulder seam, of which three-eighths is enough
and five-eighths not too much, but it is always better to cut that part
close, so that the collar may be sewed on easily; that is, the sides of
the neck stretched say about one-quarter of an inch. Again, the coat
collar gives more bulk than the vest collar and for this reason the
overcoat requires three-fourths spring, as in Dia. X, which is cut still
closer to the neck.
Policy, no doubt, has caused the fashionable shoulder seam to be
thrown backward of the center of the shoulder, for the reason that it
passes nearer to the shoulder blade, and a curved shoulder seam
helps to fit it. If the shoulder seam were located on top of the
shoulders it could not be curved, but would necessarily be hollow in
the center, though the back and front lap at the neck. The position
of the shoulder seam as in Dia. II allows the sleeve to be connected
with the coat on both the back and front seams, and the lap of
sleeve and shoulder give the sleeve enough width for all fulling
purposes, and the sleeve can never be too large or too small. I have
tried my utmost to lay the shoulders in such a position that no lap
would be found at the shoulder seam; but, after I considered that
the back is never cut on the shoulders, I came to the conclusion that
the said spring might just as well be there, inasmuch as by its use a
more correct sleeve connection can be made.
On account of the lap between the back and front at the shoulder
seam the top of that seam at the neck can not properly be
connected, and for this reason should be notched at the center. The
lap between the back and front of the shoulder seam and toward the
neck may be accounted for in a different way, and as follows: The
diameter of the body at the center of the back and center of front is
almost double what it is at the arms, and if we turn the back forward
and the front backward so that both meet at the shoulder seams,
then the center of the body, or the side of the neck, requires a
longer swing than the side of the body at the arms, hence the three
to five-eighths more at the neck.
The five-eighths lap at about eight numbers from O, may also be
accounted for as being required for the roundness of the shoulder
blade, which is partially reached by the shoulder seam of a coat.
Between the top of the shoulder seam and eight numbers from O,
the lap, of whatever it is made, should not be even, but should be a
trifle less a few inches below the neck, say one-eighth to three-
sixteenth of an inch, as shown in the diagrams. This will give the
finished shoulder a better appearance than if cut and made flat. The
shoulders are hollow there, and the coat must conform to that,
because a coat must fit there to the body and must be made to fit to
the body there, it must hang and balance itself there, and if it don’t
fit there it must make a break, and in fact this is the only place
where a coat is required to actually fit the body.
The shoulder seam for a vest must also be considered in
particular. Dia. IV gives the vest shoulder seam without lap or gore
upon the angle of 135 degs., and the top of back is cut as wide, at
point 5, as the angle of 45 degs., and it may be cut one-half inch
wider in order to bring it fully to the side of the neck, where the
spring is required, but it should not be over 3½ numbers. Dia. IV
requires that in finishing the neck, the neckband must be cut long
and sewed on full at the shoulder seam, say one-quarter inch, or
plainer, the back should be stretched that much at and close to the
shoulder seam. If a cutter prefers to sew the neck band even on the
back, he must allow one-quarter to three-eighths spring at the top of
the shoulder seam, and at the back, starting it about two inches
downward.
Now it will be found that by reducing the spring at the neck of a
coat to nothing, but leaving the five-eighths lap toward the blade,
the great majority of stooping forms may be fitted, for it makes the
front shoulder shorter, and that is all that a forward leaning neck
requires. Stooping persons often throw their shoulders up, and such
must be considered a combination of stooping and square shoulders.
The lap of from three to five-eighths must always depend upon how
the collar is sewed on. A three-eighths lap and one-quarter stretch
of the neck-hole makes a better shoulder than a five-eighths lap with
the collar sewed on close. A tight collar around the back and side
will always spoil the shoulder. If a coat be too wide there, sew in the
shoulder seam, but never draw in the side or the back of the neck
with a short collar. A square shoulder may be produced by a lap of
one-half between the back and front shoulder seam toward the
shoulder blade, and no lap at the neck, and placing top of back at
3½. The armhole itself must be the same for both the square and
for the low shoulder, or the long neck. The lap of the shoulder seam
requires that seam to be nicked as shown in the diagram. It is better
all around if the jour. has a sure point at the middle to connect said
seam, when he can baste up and down. He is less apt to throw one
side up and the other down than if he makes the connection at the
neck or at the armhole. To connect the shoulder seam with a
satisfactory result, square up from line 11¼ and in front of armhole,
and nick each back and each front on said line, which is even, to
moving the forepart down on the front plumb line until the shoulders
meet. In sewing the shoulder seam together the back should always
be a trifle the fullest, because the back passes over the round
shoulder blade and the front passes over the hollow on top of the
shoulders, and should be stretched a trifle. By a trifle I mean about
one-eighth of an inch on each side of the nick.
Locating the connecting point at the center in the shoulder seam,
the jour. must be instructed to baste up and down, and if any part is
too wide at the neck or at the armhole, to trim it off or let it stand as
an outlet, but in all cases insist that both neck and armhole must
have a nice slope after the collar is sewed on, or the sleeve is sewed
in. If the cutting is done according to this work, there will be no
trouble in obtaining a nice round armhole.
Collars.
(SEE DIA. VII.)
All top collars should be cut bias and without a seam behind. All
under collars should be put on rather loose, but not full, at the side
of the neck. The principle of a standing collar must be well
understood, for it is a permanent thing, and to be applied equally in
the construction of all garments with collars, no matter if it is
standing alone or if a turn-down piece is attached to it. It is true, a
separate collar can be fitted to the neck in any shape, and may be
so fitted that the forepart and collar meet in front, allowing the
standing portion over the back to go down anywhere. But this is not
the principle for a standing collar, for the reason that it cannot so be
applied on a vest, or any other garment, with the standing collar cut
on the forepart. The neck-band of a vest, or the standing collar of
any garment, has a certain function to perform. Whenever a vest is
on the angle of 135 deg., the neck-hand must lap over the back a
certain distance, as shown in the diagrams. Whenever the neck is
finished, said band is turned upward to the top of the neck, and in
so doing it will form a spring near the shoulder seam to permit the
neck to pass through; and it is just the same whether a turn-down
piece or a turn-down collar is attached to it or not. If the neck-band
is cut too low behind, it will form too much spring and the vest will
be too wide at the side of the neck, and must be shrunk, which will
never make a well-fitting job. If the band is cut too high at the back
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

testbankfan.com

You might also like