COMP 122 DeVry Entire Course

Downloading is very simple, you can download this Course here:

http://wiseamerican.us/product/comp-122-devry-entire-course/

Or

Contact us at:

SUPPORT@WISEAMERICAN.US

COMP 122 DeVry Entire Course

COMP122

COMP 122 DeVry Week 1 Discussion 1

From Word Problem to Program Design (graded)

This week we are looking at the process of analyzing a problem written in English, attempting to understand how we might build a program that solves the problem. Let’s begin by looking at the analysis process and discussing what inputs are, what outputs are, and what processing is. What do we look for in a word problem to identify these components? What is an algorithm?

 

COMP 122 DeVry Week 1 Discussion 2

Using Variables and Arithmetic Expression (graded)

Variables are used in a program for storing values. What sort of properties do all variables have in common? What type of arithmetic operations are supported in C++? What role does the data type of a variable have on the type of information the variable can contain and the type of operations that can be performed on the variable? What is operator precedence and how does it impact expression evaluation?

 

COMP 122 DeVry Week 2 Discussion 1

Selecting Between Alternatives (graded)

It is common to need to make choices between different alternatives when solving problems. Alternatives can take different forms. For instance, only do action X if condition 1 is true presents an alternative of either doing or not doing action X. A different form of alternative occurs in the case where we need to do action X if condition 2 is true, otherwise do action Y. Here we have a choice between 2 different actions, and we will always do X or Y depending on condition 2. This form can be extended to choosing between 3, 4, or any number of actions where one action is always selected. Lets discuss some real examples where making these types of choices are needed. Identify the alternative actions and the condition that controls the choice.

 

COMP 122 DeVry Week 2 Discussion 2

Input and Output Operations (graded)

Many programs require the use of an input mechanism to get data into the program and an output mechanism to present results and guidance. When interacting with a user, a program must output instructions to the user and also output results that are formatte

 

COMP 122 DeVry Week 3 Discussion 1

Recognizing Repetition (graded)

This week’s lecture discusses the different types of repetition situations and how they are controlled. Let’s start out by discussing some simple example problems where you see the need for repetition. Is the repetition in your example count controlled, or would it be controlled by some sort of condition? Which type of loop would you choose for your example and why?

 

COMP 122 DeVry Week 3 Discussion 2

Controlling When a Loop Completes (graded)

Loops can be tricky and can cause errors in the program containing them. The trick is to get the loop to execute its body the correct number of times. Let’s discuss how to figure out how many times a loop will execute its body. Give an example of a count controlled loop structure, explain how you determine the number of times it will execute its body. How will you determine the number of times a conditional controlled loop with a sample input set executes its body?

 

COMP 122 DeVry Week 4 Discussion 1

Debugging and Testing a Program (graded)

This week we are examining techniques for debugging and testing a program. Let’s start off the week by discussing how to debug a program that compiles and links correctly, contains both selection and repetition statements, but does not generate correct output results. What techniques would you use to try to determine where the problems are in the program?

 

COMP 122 DeVry Week 4 Discussion 2

Midterm Review (graded)

The Midterm is this week. The Midterm covers all the material from the first 3 weeks of the course. Look back over the reading materials, homework, and labs from the first 3 weeks. The language summary documents can be a good source of review information about the specifics of C++. Use this thread to ask any questions that you have regarding anything you are uncertain about. If you don’t have a specific question, post some things you have observed about the programming process or about using C++.

 

COMP 122 DeVry Week 5 Discussion 1

Prob. Decomp. and Recognizing Functions (graded)

Most programming problems are quite large and difficult to fully understand. One approach to dealing with such a problem is to decompose the problem into smaller sub-problems (divide and conquer). Each sub-problem may then be further broken down into even smaller problems (stepwise refinement). Eventually, each remaining problem is small enough to develop a function for. Think about software systems you have used (i.e. word processor, web server, calculator, iPod, etc.) and identify some of the main functions that those systems would need.

 

COMP 122 DeVry Week 5 Discussion 2

Passing Data Between Functions (graded)

Functions would not be very useful if there were no way to pass information between them. Let’s use this thread to discuss the mechanisms that functions use to communicate with each other. How does a caller provide values to a called function? How does a called function present a result to the caller? How do pass by value and pass by reference work? What determines when each technique should be used?

 

COMP 122 DeVry Week 6 Discussion 1

Arrays and Repetition in Problem Solving (graded)

There are many problems in programming that involve sets of information that can be managed within a program using arrays. Think about some different problems that could be solved using software and that include sets of information that could be represented using arrays. Give an example of an array declaration that could be used in a program to contain the data. Discuss how the data might need to be loaded into the array.

 

COMP 122 DeVry Week 6 Discussion 2

Using Loops to Process Array Data (graded)

There are many situations where array data must be processed using loops. Give some examples of such situations. What sort of loop would you choose to use for your situation? Include some code examples illustrating how a program might process your array using a loop.

 

COMP 122 DeVry Week 7 Discussion 1

Using C Style Strings (graded)

Let’s discuss how C-style strings are used in a program. How do you create a C-style string? Give examples. How do you input or output a C-style string? What kinds of tools are available to work with C-style strings? Show some examples of using those tools!

 

COMP 122 DeVry Week 7 Discussion 2

Using the string Data Type (graded)

You have been using the string type throughout this course. What new features have you discovered about the string type this week? Give some examples of how you might be able to use these new string capabilities in a program.

 

COMP 122 DeVry Week 1 Homework Latest

Part 1: Complete the following problems.

  1. What is machine code? Why is it preferable to write programs in a high level language such as C++?
  2. What does a compiler do? What kinds of errors are reported by a compiler?
  3. What does the linker do? 4. What is an algorithm?
  4. Bob enters a pizza shop and notices there are three different sizes of pizzas available. Sizes are given as the diameter of the pizza in inches. The cost of a pizza is based on the size. Bob would like to know which size of pizza has the lowest cost per square inch.
  5. Identify the inputs and outputs for this problem.
  6. Identify the processing needed to convert the inputs to the outputs.
  7. Design an algorithm in pseudocode to solve this problem. Make sure to include steps to get each input and generate each output.

 

Part 2: Complete the following problems.

  1. Given the following expressions, what value would they have in a C++ program?
  2. 13 / 4
  3. 2 + 12 / 4
  4. 21 % 5
  5. 3 – 5 % 7
  6. 17.0 / 4
  7. 8 – 5 * 2.0
  8. 14 + 5 % 2 – 3
  9. 15.0 + 3.0 / 2.0
  10. Given the following variable declarations:

int num1 = 10, num2 = 20, newNum = 30;

double x = 5.0, y = 8.0;

Determine which of the following assignment statements are valid. For each invalid statement, explain why it is invalid. Assume that each statement immediately follows the above variable declarations.

  1. num1 = 15;
  2. num2 = num1 – 18;
  3. num1 = 5; num2 = 2 + 6; num1 = num2 / 3;
  4. num1 + num2 = newNum;
  5. x = 12 * num1 – 15.3;
  6. num1 * 2 = newNum;
  7. x / y = x * y;
  8. num2 = num1 % 2.0;
  9. newNum = static_cast (x) % 5;
  10. x = x + 5;
  11. newNum = num1 + static_cast (4.6 / 2);
  12. For each of the following lines of variable declarations, identify it as valid or describe what makes the line invalid.

Line 1: n = 12;

Line 2: char letter = ;

Line 3: int one = 5, two;

Line 4: double x, y, z;

  1. Write C++ statements that accomplish each of the following:
  2. Declare and initialize int variables x to 25 and y to 18.
  3. Declare and initialize an int variable temp to 10 and a char variable ch to ‘A’.
  4. Add 5 to the int variable x which already exists.
  5. Declare and initialize a double variable payRate to 12.50.
  6. Copy the value from an existing int variable firstNum into an existing int variable tempNum.
  7. Swap the contents of existing int variables x and y. (Declare any new variables you need.)
  8. Output the contents of existing double variables x and y, and also output the value of the expression x + 12 / y – 8.
  9. Copy the value of an existing double variable z into an existing int variable x.
  10. Given the following variable declarations:

int x = 2, y = 5, z = 6;

What is the output from each of the following statements?

  1. cout << “x = ” << x << “, y = ” << y << “, z = ” << z << endl;
  2. cout << “x + y = ” << x + y << endl;
  3. cout << “Sum of ” << x << ” and ” << z << ” is ” << x + z << endl;
  4. cout << “z / x = ” << z / x << endl;
  5. cout << “2 times ” << x << ” = ” << 2 * x << endl;
  6. Given the following variable declarations:

int a = 5, b = 6, c;

What is the value of a, b, and c after each of the following statements executes? Assume that the statements execute in the sequence given.

  1. a = b++ + 3;
  2. c = 2 * a + ++b;
  3. b = 2 * ++c – a++;

 

COMP 122 DeVry Week 2 Homework Latest

Complete the following problems.

  1. Suppose you are given the following variable declarations:

int x, y;

char ch;

What values (if any) are assigned to x, y, and ch after each of these statements execute?

Assume that the input to each statement is the same: 5 28 36

  1. cin >> x >> y >> ch;
  2. cin >> ch >> x >> y;
  3. cin >> x >> ch >> y;
  4. cin >> x >> y;

cin.get(ch);

  1. Suppose you are given the following variable declarations:

int x, y;

char ch;

What values (if any) are assigned to x, y, and ch after each of these statements execute?

Assume that the input to each set of statements is as follows:

13 28 D

14 E 98

A B 56

  1. cin >> x >> y;

cin.ignore(50, ‘ ‘);

cin >> ch;

  1. cin >> x;

cin.ignore(50, ‘ ‘);

cin >> y;

cin.ignore(50, ‘ ‘);

cin.get(ch);

  1. Suppose you are given the following variable declarations:

int x, y;

double z;

char ch;

Assume you have the following input statement:

cin >> x >> y >> ch >> z;

What values (if any) are stored in x, y, z, and ch if the input is:

  1. 35 62. 78
  2. 86 32A 92.6
  3. 12 .45A 32
  4. Write a C++ statement that uses the manipulator ‘setfill’ to output a line containing 35 asterisk characters.
  5. What is the output from the following statements?
  6. if ( 60 <= 12 * 5)

cout << “Hello”;

cout << ” There”;

  1. if (‘a’ > ‘b’ || 66 > static_cast(‘A’))

cout << “#*#” << endl;

  1. if (7 <= 7) cout << 6 – 9 * 2 / 6 << endl;
  2. if (7 < 8) { cout << “2 4 6 8” << endl; cout << “1 3 5 7” << endl; }
  3. if (5 < 3) cout << “*”; else if (7 == 8) cout << “&”; else cout << “$”;
  4. Suppose that you have the following variable declarations: int x = 10; int y = 15; int z = 20;

Determine whether the following expressions are true or false.

  1. !(x < 10)
  2. x <= 5 || y > 15
  3. (x != 5) && (y == z)
  4. x <= z && (x + y >= z)
  5. What is the output of the following code fragment?

int x = 100;

int y = 200;

if (x > 100 && y <= 200) cout << x << ” ” << y << ” ” << x + y << endl;

else cout << x << ” ” << y << ” ” << 2 * x – y << endl;

  1. Given a char variable called gender, write C++ statements to output “Male” if gender contains upper or lower case M, “Female” if it contains upper or lower case F, or “Invalid Gender” if it contains anything else. Use if / else if statements.
  2. Given a char variable called gender, write C++ statements to out “Male” if gender contains upper or lower case M, “Female” if it contains upper or lower case F, or “Invalid Gender” if it contains anything else. Use a switch statement.
  3. What is the value of the beta variable after the following code executes?

int beta = 3; switch(beta) { case 3: beta += 3; case 1: beta++; break; case 5: beta += 5; case 4: beta += 4; }

 

 

COMP 122 DeVry Week 3 Homework Latest

Complete the following problems.

  1. What is the output from the following C++ code fragment?

int count = 1; int y = 100; while(count < 100) { y = y – 1; count++; } cout << “y = ” << y << ” and count = ” << count << endl;

  1. What is the output from the following C++ code fragment?

int num = 1; while(num < 10) { cout << num << ” “; num += 2; } cout << endl;

  1. What is the output from the following C++ code fragment if the following values are the inputs to cin?

38 35 71 14 -10 int sum, num; cin >> sum; for(int j = 1; j <= 3; j++) { cin >> num; sum += num; } cout << “Sum = ” << sum << endl;

4.What is the output from the following C++ code fragment if the following values are the inputs to cin?

38 35 71 14 -1 int sum, num; sum = 0; cin >> num; while(num != -1) { sum += num; cin >> num; } cout << “Sum = ” << sum << endl;

  1. Write a do – while loop to get 20 numbers from the user and sum them together. Output the sum after the loop. Declare any variables you need.

6.What is the output from the following C++ code fragment if the following values are the inputs to cin?

58 23 75 176 145 -999 int num; cin >> num;

while(num != -999) { cout << num % 25 << ” “; cin >> num; } cout << endl;

7.What is the output from the following C++ code fragment? int count = 10;

while(count– > 0) { cout << count << ” “; } cout << endl;

8.What is the output from the following C++ code fragment?

int count = 1; do { cout << count * (count – 1) << ” “; }

while(++count <=5); cout << endl;

  1. Given the following C++ code fragment, answer the questions that follow.

int s = 0; for(int i = 0; i < 5; i++) { s = 2 * s + i; }

  1. What is the final value of s?
  2. If the expression i++ was replaced with i += 2 what would be the final value of s?
  3. If a semi-colon is added following the right parenthesis of the for statement, what would be the final value of s?
  4. Write a for statement to add all the multiples of three between 1 and 100. (ie. 3, 6, 9, … 99).
  5. How many times will the loop bodies execute in the following loops?
  6. int x = 5, y = 50; do { x += 10; }while(x < y);
  7. int x = 25, y = 5; while(x >= y) { x -= 5; }
  8. int y = 0; for(int x = 5; x < 100; x += 5) { y++; }
  9. int x = 10, y = 1000; while(x <= y); { x *= 10; }

 

 

COMP 122 DeVry Week 5 Homework Latest

Complete the following problems.

  1. Determine the value of the following expressions.
  2. toupper(‘b’)
  3. tolower(‘C’);
  4. pow(3.0,3.0);
  5. sqrt(81.0);
  6. fabs(-1.23);
  7. floor(22.46);
  8. ceil(33.3);
  9. Using the functions in the cmath library, write the following mathematical formulas as C++ expressions.
  10. 3.02.4
  11. (x – y)1/2 Note: the ½ power is the square root
  12. |y – 42.3| d.( -b + (b2 – 4ac)1/2) / 2a
  13. Consider the following functions:

int func1(int x) { int r, s; r = 2 * x; if (r > 10) { s = x / 2; } else { s = x / 3; } return s – 2; } int func2(int a, int b) { int r, s; s = 0; for(r = a; r < b; r++) { s++; } return s; }

What is the output from the following program fragments?

int a, b;

  1. a = 10; cout << func1(a) << endl;
  2. a = 5; b = 12; cout << func2(a, b) << endl;
  3. a = 8; b = func1(a); cout << a << ” ” << b << ” ” << func2(a, b) << endl;
  4. Write a C++ function that has an input of a char value and returns true if the character is lower case or false otherwise.
  5. Write a C++ function that has three inputs which are integers. The function returns true if the first number raised to the power of the second number equals the third number.
  6. What is a function prototype? When is it needed?
  7. What is the difference between an actual parameter and a formal parameter?
  8. Explain the difference between pass by value parameters and pass by reference parameters.
  9. Explain the difference between function parameters, local variables, and global variables regarding the parts of a program that can access these values.
  10. What does void signify when used as the return type of a function?
  11. What is the output of the following program fragment:

void find(int a, int& b, int& c) { int temp; c = a + b; temp = a; a = b; b = 2 * temp; } int main() { int x, y, z; x = 15; y = 25; z = 30; find(x, y, z);

cout << x << ” ” << y << ” ” << z << endl; find(y, x, z);

cout << x << ” ” << y << ” ” << z << endl; find(z, y, x);

cout << x << ” ” << y << ” ” << z << endl; }

  1. Write a C++ function which initializes its three reference parameters. The function should take an int, double, and string parameter and initialize them to 0 and the empty string (“”).

 

 

COMP 122 DeVry Week 6 Homework Latest

Complete the following problems.

  1. Write C++ statements to do the following:
  2. Declare an array alpha of 15 components of type int.
  3. Output the value of the 10th component of the alpha array.
  4. Set the value of the 5th component of the alpha array to 35.
  5. Set the value of the 9th component of the alpha array to the sum of the 6th and 13th components of the alpha array.
  6. Set the value of the 4th component of the alpha array to three times the value of the 8th component minus 57.
  7. Output alpha so that five components appear on each line.
  8. What is stored in the list array after the following code executes?

int list[5]; for(int j = 0; j < 5; j++) { list[j] = 2 * j + 5; if (j % 2 == 0) { list[j] = list[j] – 3; } }

  1. What does array index out of bounds mean? What can happen if this occurs in your program?
  2. Write C++ statements to define and initialize the following arrays using appropriate data types:
  3. An array of heights has 6 components which have the following values: 5.5, 5.8, 6.3, 6.6, 4.9, 5.9.
  4. An array of weights has 4 components which have the values: 140, 165, 190, 207.
  5. An array of symbols which contains the following characters: ‘$’, ‘%’, ‘@’, ‘!’, ‘|’, ‘&’.
  6. An array of the seasons which contains “Spring”, “Summer”, “Fall”, “Winter”.
  7. Given the following declaration, what is stored in the 8th element of the array?

int list[10] = {1, 2, 3, 4, 5};

  1. When an array is passed as an actual parameter to a function, what is really being passed in to the function? Why are arrays passed this way?
  2. Write a for loop to initialize the following array (int data[10]) with the values 10, 9, 8… 1.
  3. Given an array of 10 doubles named data, write a loop that loads the array with user input.
  4. Given an array of 100 doubles named data, write a loop that creates the sum of all the array elements.
  5. Write a loop that finds the smallest element in an integer array called data containing 100 elements.

 

 

COMP 122 DeVry Week 7 Homework Latest

Part 1: Complete the following problems.

  1. Answer the questions that follow given these lines of code.

string str1,

str2; cin >> str1 >> str2; if(str1 == str2)

{ cout << str1 << ” == ” << str2 << endl; }

else if (str1 > str2) { cout << str1 << ” > ” << str2 << endl; }

else { cout << str1 << ” < ” str2 << endl; }

  1. What do these lines output if the input is “diamond diamond”?
  2. What do these lines output if the input is “diamond gold”?
  3. What do these lines output if the input is “silver gold”?
  4. What is the output of the following program fragment?

string s1 = “Ball Park”;

string s2 = “Going to”;

string s3 = “the”;

string str;

cout << s2 << ” ” << s3 << ” ” << s1 << endl;

cout << s1.length() << endl;

cout << s1.find(‘P’) << endl;

cout << s1.substr(0, 4) << endl;

str = “abcdefghijk”;

cout << str << endl;

cout << str.length() << endl;

str[0] = ‘A’;

str[3] = ‘D’;

cout << str << endl;

  1. What is output from each of the following statements? Assume each statement is independent of all the others.

string str = “Now is the time for the party!”;

  1. cout << str.size() << endl;
  2. cout << str.substr(7, 8) << endl;
  3. cout << str.insert(11, “best “) << endl;
  4. str.erase(16, 14);

str.insert(16, “to study for the exam!”);

cout << str << endl;

Part 2: Complete the following problems.

  1. Given the following declaration: char str[16];

mark the following statements as valid or invalid and if invalid, explain why.

  1. strcpy(str, “Hello there”);
  2. strlen(str);
  3. str = “Jacksonville”;
  4. cin >> str;
  5. cout << str;
  6. if ( str >= “Nice guy”) cout << str;
  7. str[6] = ‘t’;
  8. Given the following declarations:

char s1[15]; char s2[15] = “Good Day!”;

Write C++ statements to do the following. Note: No loops allowed!

  1. Copy s2 to s1.
  2. Check if s1 and s2 contain the same string and output a message if they are equal.
  3. If s1 is less than s2, output s1. Otherwise output s2.
  4. Store the string “Sunny Day” into s1.
  5. Store the length of s2 into an int variable named length.
  6. Given the following declarations:

char name[21] = “Bob”;

char yourName[21] = “Joe”;

char studentName[31] = “Joe Bob”;

Mark each of the following as valid or invalid. If invalid, explain why.

  1. cin >> name;
  2. cout << studentName;
  3. yourName[0] = ”;
  4. yourName = studentName;
  5. if (yourName == name) studentName = name;
  6. int x = strcmp(yourName, studentName);
  7. strcpy(studentName, name);

 

 

COMP 122 DeVry Week 1 iLab 1 Latest

Part 1

Introduction to Visual C++.NET (2010) IDE

Objectives

After completing this assignment, you should:

  • be able to create an empty console-mode project in VC++.NET;
  • know how to enter, compile, build, and run a C++ console-mode program;
  • know some basic components of a C++ program, such as#include;using namespace std;; int main( );return 0;; opening and closing braces, { and }; and theint data type;
  • be able to usecin andcout. for simple text and numeric input and output;
  • be able to use basic integer arithmetic operations, including modulus;
  • know that integer division truncates;
  • understand how the compiler reacts to several common syntax errors;
  • understand the process of developing a test plan, including predicted output for specific inputs (test cases);
  • know how a program reacts to division by zero;
  • know where the .exe file is stored after a successful build; and
  • know how to keep the Command Prompt window open at the end of a console-mode program.

C++ Console-Mode Program Development Procedure

Visual C++ is an IDE (Integrated Development Environment) for writing programs in C++. The object of this laboratory is to introduce you to the basic features of an IDE (source-code entry and editing, compiling, linking, and execution) and some basic C++ programming statements to do some mathematical operations and simple input/output.

WARNING: Accurate typing is the key to success here. Although the compiler is tolerant of extra “white space” (spaces, tabs, and blank lines), it is very fussy about other syntax (punctuation, keywords, variable names, upper and lower case requirements, etc.), so be sure to type in the program below exactlyas written, including case.

In addition to showing how to create and run a program in VC++.NET, this exercise discusses how to test a program, which involves selecting test inputs and predicting what output the program should generate, then observing the actual output, comparing the two, and analyzing any differences.

Open Visual C++ .NET

Open Microsoft Visual C++ 2010.NET by double-clicking on its icon.

Figure1: When you open Visual C++ .NET, it should look similar to this image.

You may find it convenient to maximize this screen if it is not already maximized.

T

using namespace std; int main(void) { int number1, //INPUT number2; cout << “Enter first number: ” << endl; cin >> number1; cout << “Enter second number: ” << endl; cin >> number2; ind link it.

A pop-up window asks if you want to re-build the project. ClickYes. You may get one more pop-up window asking if you want to overwrite the existing project. ClickYes if you get this window. If everything is OK, you will get 0 compile errors and 0 warnings.

Results of the build (compile and link) are shown here.

Figure 10: A good build will have 0 compile errors and 0 warnings.

Compiler Errors and Warnings: Debugging

If the code has any syntax errors, you will get compiler errors. If there are any compiler errors, it cannot create an executable file. You must fix all compiler errors before you can execute the program. Error messages appear in the bottom panel of the Visual C++ window. If you cannot see them, use the scrollbar on the right side of the panel. If you double-click an error message, a little arrow will appear in the left margin of the text editor window to indicate the line that may have the error. Compilers are notorious for having misleading error messages and not flagging the correct line, but they at least give you a clue about where the problem is located. If you get compiler errors, try to troubleshoot them yourself. Look closely at the line flagged by the compiler and at the line above it (which is often where the error actually is located). Most errors are caused by incorrect typing, misspelling something, incorrect punctuation, or incorrect case.

Oftentimes, a single error in one line will precipitate compiler errors in following lines, even though they are correct. Therefore, the best approach, if you have multiple compiler errors, is to fix the first one and recompile (Build). Often, fixing the first problem also fixes several other errors.

Some lines of code will cause the compiler to issue a Warning instead of an error. If there are only warnings and no errors, the compiler will usually be able to create an executable file. Depending on the problem, your code may still work fine, but, in general, you should fix all warnings so that you get a completely clean build.

If you get any compiler errors or warnings, try to fix them, but if you cannot figure out what to do, ask your instructor or F.A. for assistance. Remember, C++ is quite fussy about most details (punctuation, spelling, case, etc.), so edit your code carefully.

If the code compiles correctly, the next step that Visual C++ .NET performs is linking. This step simply connects your program with prewritten programs and objects that you use in your program (cin andcout in this example).

Background: Testing and Types of Errors

Just because your code compiles without errors, does not mean that it will execute correctly!

It is still possible that a program contains run-time errors.

Run-time errors fall into two basic categories:

system errors and logical errors.

System errors occur when your program runs and tries to do something that the host computer cannot or will not do, for example, divide by zero. The good news about system errors is that the system detects them, stops your program, and gives you an error message.

Part 2

Complete the following two programs:

Programming Problem 1

John wants to know the values of the area and perimeter of a rectangle. John can take measurements of the length and width of the rectangle in inches. John’s measurements are expected to be accurate to within 0.1 inch.

  1. Identify the inputs and outputs of the problem.
  2. Identify the processing needed to convert the inputs to the outputs.
  3. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report each output.
  4. Identify two test cases, one using whole number values, and one using decimal number values. For each of the two test cases show what inputs you will use and what your expected outputs should be.
  5. Write the program to implement your algorithm. Test your program using your test cases. Did your program produce the values predicted in your test cases? Explain.

Programming Problem 2

Shirlee is working with a measurement tool that reports measurements in centimeters. Since Shirlee is unfamiliar with centimeters, she would like her centimeter measurements to be converted into yards, feet, and inches. She would also like the result to be properly rounded to the nearest inch. As an example, if the measurement is 312 centimeters, this should be converted to 3 yards, 1 foot, and 3 inches.

  1. Identify the inputs and outputs of the problem.
  2. Identify the processing needed to convert the inputs to the outputs. HINT: Convert centimeters to total number of inches first! (1 inch = 2.54 cm)
  3. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report each output.
  4. Identify two test cases other than the example given above. For each of the two test cases show what inputs you will use and calculate what your expected outputs should be.
  5. Write the program to implement your algorithm. Test your program using your test cases. Did your program produce the values predicted in your test cases? Explain.

For each of the two programming problems, create a program using Visual C++.Net. Make sure to capture a sample of your program’s output. The best way to do this is to click on the console window you want to capture and then press the Alt and PrintScreen keys at the same time. Then paste your captured screen image into a Word document. For each of the two programs, put the screen capture followed by a copy of your source code into your Word document.

Your final programming document should contain in the following order:

  1. Answers to all of the questions listed above.
  2. Screen capture of the first program followed by source code.
  3. Screen capture of the second program followed by source code.

 

 

COMP 122 DeVry Week 2 iLab 2 Latest

Complete the following two programs:

Programming Problem 1

Write a program that calculates and outputs the monthly paycheck information for an employee, including all the amounts deducted from an employee’s gross pay, and the net pay that is due to the employee. The user of your program will know the employee’s name and the gross pay for the employee. Each employee has the following deductions taken from his gross pay:

Federal Income Tax: 15%

State Tax: 3.5%

Social Security + Medicare Tax: 8.5%

Health Insurance $75

The output from your program should be structured as is displayed below:

Bill Robinson

Gross Amount: ………… $3575.00

Federal Tax: …………. $ 536.25

State Tax: …………… $ 125.13

Social Sec / Medicare: … $ 303.88

Health Insurance: …….. $ 75.00

Net Pay: …………….. $2534.75

Your program should deal with erroneous input values. Gross salary should always be a positive number. Make sure that you deal with the possibility that the user may have entered a non-numeric input value. Have your program output appropriate error messages in these cases.

  1. Identify the inputs and outputs of the problem.
  2. Identify the processing needed to convert the inputs to the outputs.
  3. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report each output. Include steps to deal with error cases.
  4. Identify three test cases, one using a positive number, and one using a negative number, and one using incorrect input (ie. Input a letter rather than a digit for the numeric input). For each of the three test cases show what inputs you will use and what your expected outputs should be.
  5. Write the program to implement your algorithm. Test your program using your test cases.

Programming Problem 2

In a right triangle, the square of the length of one side is equal to the sum of the squares of the lengths of the other two sides. Stephanie has the integer lengths of three sides of a triangle and needs to know if it is a right triangle.

Write a program to solve this problem. NOTE: The user must be allowed to input the values of the sides in ANY ORDER!

  1. Identify the inputs and outputs of the problem.
  2. Identify the processing needed to convert the inputs to the outputs.
  3. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report each output.
  4. Identify five significant test cases including one for incorrect input (ie. Input a letter rather than a digit for the numeric input). (Think about what impact changing the order of the input values should have on your program!) For each of the five test cases show what inputs you will use and calculate what your expected outputs should be.
  5. Write the program to implement your algorithm. Test your program using your test cases.

For each of the two programming problems, create a program using Visual C++.Net. Make sure to capture a sample of your program’s output. The best way to do this is to click on the console window you want to capture and then press the Alt and PrintScreen keys at the same time. Then paste your captured screen image into a Word document. For each of the two programs, put the screen capture followed by a copy of your source code into your Word document.

Your final programming document should contain in the following order:

  1. Answers to the questions listed above.
  2. Screen capture of the first program followed by source code.
  3. Screen capture of the second program followed by source code.

 

 

COMP 122 DeVry Week 3 iLab 3 Latest

Complete the following two programs:

Programming Problem 1

Write a program that generates all the factors of a number entered by the user. For instance, the number 12 has the factors 2 * 2 * 3. This program has the following requirements:

  1. The user must enter a positive integer. If the user enters something else, your program should output an error message and let the user enter a new value. Use a do/while loop to make sure the user input is successful.
  2. The factors must be output in increasing order. The lowest factor your program should report is 2.
  3. Your program should output 4 factors per line, each factor in a field of 10 characters. (Hint: the number of factors output determines when to output endl!)
  4. You will need a while loop to report the factors. Here are some helpful hints:
  5. If (a % b == 0) then a is a factor of b.
  6. When you have found a factor, output the factor and then reduce the number you are working with by dividing the number by the factor… ie) b = b / a;
  7. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report the output. Include steps to deal with error cases as specified above.
  8. Identify three test cases, one using a number with 4 factors, one using a negative number, and one using a number with more than 4 factors. For each of the three test cases show what inputs you will use and what your expected outputs should be.
  9. Write the program to implement your algorithm. Test your program using your test cases.

Programming Problem 2

This program is designed to analyze the growth of two cities. Each city has a starting population and annual growth rate. The smaller city has the larger growth rate (required). Show the comparative populations of each city year by year until the smaller city has grown larger than the bigger city.

As an example, Dogville has a population of 5000 growing at 20% annually while Cattown has a population of 7000 growing at 10% annually. The projected populations are:

Year Dogville Cattown

1 6000 7700

2 7200 8470

3 8640 9317

4 10368 10249

  1. Identify the inputs and outputs of the problem.
  2. Identify the processing needed to convert the inputs to the outputs.
  3. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report each output.
  4. Identify three significant test cases including one for incorrect input (ie Small town has lower growth rate). For each of the three test cases show what inputs you will use and calculate what your expected outputs should be.
  5. Write the program to implement your algorithm. Test your program using your test cases. For each of the two programming problems, create a program using Visual C++.Net. Make sure to capture a sample of your program’s output. The best way to do this is to click on the console window you want to capture and then press the Alt and PrintScreen keys at the same time. Then paste your captured screen image into a Word document. For each of the two programs, put the screen capture followed by a copy of your source code into your Word document.

Your final programming document should contain in the following order:

  1. Answers to the questions listed above.
  2. Screen capture of the first program followed by source code. 3. Screen capture of the second program followed by source code.

 

COMP 122 DeVry Week 4 iLab 4 Latest

Part 1 of this week’s lab will give you an opportunity to use the debugging capabilities of Visual Studio. Part 2 will present a problem for which you will need to create a test plan and actually test an executable program to determine if it behaves correctly.

Part 1 – Using the Debugger

To begin this exercise, create a VC++ project and copy the following code into your project. Make sure that the project compiles successfully.

#include

using namespace std;

int main()

{int input;

int , ;

int ;

cout< “enter=”” which=”” number=”” in=”” the=”” fibonacci=”” number=”” sequence=”” you=”” want=”” to=”” find.”=””>

cout< “the=”” first=”” and=”” second=”” fibonacci=”” numbers=”” are=”” 1.”=””>

cin>> input;

while (input < 1)=””>

{cout< “you=”” must=”” enter=”” a=”” value=”” greater=”” than=”” 0,=”” try=”” again.”=””>

cin>> input;}

if (input > 2)

{for(int ; i < input;=”” i++)=””>

+ back2;

cout< “the=”” value=”” of=”” fibonacci=”” number=”” “=””>< input=””>< “=”” is=”” “=””>< current=””>

cin.ignore(2);

return 0;

Part 2 – Black Box Testing

A customer has requested a program be developed to meet the following criterion:

  1. The program needs to convert from celcius temperatures to fahrenheit temperatures.
  2. The user should be able to enter temperatures containing fractional degrees (ie. 12.3)
  3. The converted temperatures should be accurate to within 1/10th of a degree.
  4. The user should be able to enter the number of temperatures to be converted up to a maximum of 10.
  5. The output should be tabular with each row including the input and converted temperature.

Write a test plan to thoroughly test this program. The executable for this program is included in with this lab. You should have test cases which verify that the program does all of what is required in the problem specification above. You should also test to see how robust the program is, that is, how does it handle inputs outside the expected ranges.

Document your test plan in a table. For each test case, document the expected program behavior and the actual program behavior. If the program does not behave according to your prediction, write a brief explanation of what the program did wrong.

 

 

COMP 122 DeVry Week 5 iLab 5 Latest

Lab 5 Lab Report and Source Code

Objectives

Apply structured and modular design principles to write programs that meet written specifications and requirements.

Develop a pseudo-code design using appropriate program structure (sequence, selection, repetition and nesting) to solve a given programming problem.

Use appropriate selection and repetition statements to implement the design.

Create user-defined functions to implement a modular design.

Use appropriate parameter passing mechanisms for passing data into and getting data back from functions.

Use ostream and iomanip formatting manipulators to display tabulated data.

Design and implement a menu-driven interface.

Problem Description

This program is to give the user the option of converting a set of temperatures either from Celsius to Fahrenheit (C to F) or vice versa, from Fahrenheit to Celsius (F to C), or to quit the program. If the user selects either C to F or F to C, the program will prompt the user to enter three integer values, a starting temperature, an ending temperature, and an increment. After these values have been entered the program will display a table of equivalent C and F (or F and C) temperatures, from the starting temperature to the ending temperature and incrementing by the increment value each row.

The table must meet all of the following criteria:

The table’s column headings should display the degree symbol, e.g., °C and °F.

The first column must be the “from” temperature (C for C to F or F for F to C) and the second column the “to” temperature (F for C to F or C for F to C).

The calculated “to” temperatures are to be displayed to the nearest tenth of a degree (display exactly one decimal place, even if there is no fractional part, i.e., 75° should display as 75.0°).

Temperatures in both columns must be number-aligned (right-justified for the integer “from” values and decimal point aligned right for the “to” values).

Assume the user enters correct data, e.g., the start temperature, end temperature and increment are all integers and the ending temperature is greater than the starting temperature.

The formula to convert Celsius to Fahrenheit is

The formula to convert Fahrenheit to Celsius is

Function Requirements

You must create and use the following functions:

displayMenu( ) displays a menu.

getMenuSelection ( ) gets the menu selection from the user, upper or lower case ‘C’ for Celsius to Fahrenheit, upper or lower case ‘F’ for Fahrenheit to Celsius, and upper or lower case ‘Q’ to quit. Any other input should get an error message “Invalid selection: try again” and re-prompt for the menu selection.

getStartEndAndIncrement( ) gets the start, end and increment values for the table from the user.

CtoF( ) converts a Celsius temperature to Fahrenheit.

FtoC( )converts a Fahrenheit temperatures to Celsius.

displayTable( ) displays a C to F or F to C table given start, end and increment values and the conversion character the user selected.

Additional Requirements

Absolutely NO GLOBAL VARIABLES can be used to implement this program! Any program using global variables will NOT be accepted!

Use a switch statement to respond to the user’s menu selection in the getMenuSelection function.

After the user selects a valid temperature table option, ask the user to enter start, end, and increment values, then display the table and stop until the user presses the ENTER key to continue (prompt the user, of course). When the user presses ENTER to continue the menu should be redisplayed, allowing the user to make another menu selection (either to display another temperature conversion table or quit).

Make sure that your code is properly formatted (indentation, etc) and that you have provided suitable documentation of all your functions (comment blocks for program and functions!).

How to print the degree symbol

It is easy enough to find out how to do this by searching the web. The short answer is:

cout < (char)248;=””>

Test Plan

Test cases are generally selected by analyzing the program and determining categories of inputs and outputs, then specifying at least one specific input value (or set of input values) for each category. Inputs for this program include the “selection,” or menu input, and integer values to generate a table (start temperature, stop temperature and increment value). Here is an outline of the categories:

  1. Menu test cases should include all possible valid menu selections and at least one invalid menu selection.
  2. Table test cases should include

2.1. Inputs that create tables with various numbers of rows

2.2. At least one temperature that calculates to an exact whole number of degrees (e.g., 0 degrees degrees F).

2.3. Negative starting and ending temperatures.

2.4. At least one temperature that calculates to a fractional number of degrees (e.g., -50 degrees degrees C).

2.5. Some common, easy to verify conversions, for example

2.5.1. 0 degrees degrees F (and vice versa)

2.5.2. 100 degrees degrees F (and vice versa)

2.5.3. -40, the only temperature that is the same in both.

Given these categories, use the table on the next page to record the specific input values you will use for your test plan. Note that you must predict and document what the output will be for each of your test cases, including the calculated values for each row of the temperature tables produced. Test your program using your selected test cases and record the actual observed output from your test cases by pasting screen shots into your report document. Make sure everything works correctly before submitting.

 

COMP 122 DeVry Week 6 iLab 6 Latest

Lab 6 of 7: Array Processing

You are to design a program that will allow some number of grades (up to a max of 100) to be input by the user. After the data has been collected, your program should calculate and output the mean and median of the collected data, as well as the sorted grade information.

Design Constraints

  1. Use an integer constant of 100 to specify the number of elements in the array you will use to collect the grade information.
  2. Do not use any global variables in your program.
  3. Declare any arrays you need in your main function and pass the arrays as needed into the functions described below.
  4. The main function is the only function permitted to do any output to the console!!! Do not do cout operations inside of any other function.
  5. Your data collection loop in your main function must allow the user to enter less than 100 grades. It must also make sure that the user does not try to enter more than 100 grades.
  6. Each data value entered should be checked to make sure it is between 0 and 100. Any other value entered should be considered invalid and ignored (ie. not counted as a valid input and not stored in an array).
  7. Once the data is collected, the array and the number of grades collected must be passed to a function called mean.
  8. The mean function must loop through the values in the array, summing them together. The result of the function is the sum divided by the number of grades collected. The result must be returned from the mean function to the main function, where is it output in an appropriate manner (two digits after the decimal point).
  9. The main function should then pass the array and the number of grades collected to the median function.
  10. The median of a set of numbers is the number in the set where half the numbers are above it and half the numbers are below it. In order to find the median, this function will need to sort the original data.
  11. The simplest sorting procedure is called bubble sorting.

The following pseudocode describes bubble sorting for X valid array elements.

for outer = 0; outer < X; outer++

for inner = 0; inner < X-1; inner++

if array[inner] > array[inner+1]

swap(array[inner], array[inner+1]);

  1. After the data has been sorted, the median value can be found. If the array has an odd number of elements the median is the value of the middle element (Hint: arraySize/2 is the middle element). If the array has an even number of elements then the median is the average of the middle two elements (Hint: arraySize/2 and ( arraySize/2) – 1 are the two middle elements). The median value should be returned by the median function.
  2. The main routine should output the median value in an appropriate manner.
  3. The main routine should also output the sorted array with 5 grades per line.
  4. Carefully develop test cases for your program. Most of your test cases do not need to contain lots of values. Make sure to include incorrect inputs such as negative grade values. Calculate what your mean and median values should be for your test cases. Document your test cases in a Word document.
  5. Run your test cases with your program to see if your program generates the expected output. If not, troubleshoot your program and fix the problem. When your program executes a test case correctly, take a screen shot of the program output and paste it into your Word document to prove that your test case executed correctly with your program.
  6. Make sure that your code is properly formatted! You also need to make sure you include a comment block for each function which documents the purpose, inputs, and outputs of each function!

Create a program using Visual C++.Net. Make sure to capture a screen shot of your program running your test cases! The best way to do this is to click on the console window you want to capture and then press the Alt and PrintScreen keys at the same time. Then paste your captured screen image into your Word document. Your Word document should contain your test cases, the screen shots documenting your test cases, followed by a copy of your source code.

 

COMP 122 DeVry Week 7 iLab 7 Latest

Lab 7 Lab Report and Source Code

Strings

The focus of this lab is on using strings. You will have an opportunity to work with both C style strings and the string data type. This lab also gives you an opportunity to use what you have learned previously, including using functions, array processing, repetition, and selection. You will also have an opportunity to work with file input and output.

You are to design and implement a program which does encryption and decryption of data from files. Encryption is the process of taking plain lines of text and performing some algorithmic transformation on the data to create an encrypted line of text which looks nothing like the original. Decryption is the process of taking an encrypted line of text and performing some algorithmic transformation on the data to recover the original line of plain text.

Encryption and Decryption Approach

Our approach to encryption and decryption involves two strings. The first is an encryption / decryption string which we will allow to be up to 128 lower case alphabetical characters in length. The second string is a line of text from a file that is to be encrypted or decrypted.

Our basic strategy for encrypting data is based on mapping alphabetical characters to specific values, then doing some simple mathematical operations to create a new value. First of all, every character in either the encryption string or the input string is mapped to a number between 0 and 25 based on its position in the alphabet.

A = a = 0

B = b = 1

Z = z = 25

The mapped value of a character is easily obtained by doing the following:

For lower case characters, subtract ‘a’ from the character.

For upper case characters, subtract ‘A’ from the character.

To calculate the modified value of the first character of input we add its mapped value to the mapped value from the first character of the encryption string. This modified value is then adjusted using % 26 to make sure that the final modified value is within the 0 – 25 range. To create the final encrypted character value for the first character, simply do the following:

For lower case characters, add ‘a’ to the modified value.

For upper case characters, add ‘A’ to the modified value.

This is done for each alphabetic character in the input string. Non-alphabetic characters simply maintain their present value. If the input string is longer than the encryption string, simply reuse mapped values from the encryption string. For instance, if the encryption string has 10 characters (index values 0 – 9), when processing the 11th input character (index 10), simply use the input character index % length of encryption string (in this case 10 % 10 is 0) to select the value from the encryption string to use for mapping.

The decryption process is basically the same as the encryption process. The only difference is the value of the mapped character from the encryption string.

For lower case encryption, the mapped from encryption string – ‘a’

For upper case encryption, the mapped from encryption string – ‘A’

For lower case decryption, the mapped – (character from encryption string – ‘a’)

For upper case decryption, the mapped – (character from encryption string – ‘A’)

Program Requirements

Your program must meet the following requirements:

  1. You must ask the user if they want to perform an encryption or decryption operation.
  2. You must ask the user to enter the name of the file they want to encrypt or decrypt.
  3. You must get an encryption key from the user which can be up to 128 characters. The key must be all lower case alphabetic characters.
  4. You must have a function which takes the encryption key and creates an encryption map from it. For each character in the encryption key string, subtract the lower case letter ‘a’ and store the result in the corresponding encryption map array.
  5. You must have a function which takes the encryption key and creates a decryption map from it. For each character in the encryption key string, subtract the lower case letter ‘a’ from it. Then subtract that result from 26 and store the value in the corresponding decryption map array.
  6. You must have a function which will do the encryption or decryption transformation. This function takes the following parameters:

A constant C string containing the line of text to be transformed.

A constant C character array which contains the encryption or decryption map.

An integer which contains the length of the encryption map.

A string reference (output) which will contain the encrypted or decrypted string upon completion.

The core of the encryption / decryption algorithm is as follows:

For each character (the ith character) in the text input line do the following:

if the character is not alphabetical, add it to the end of the output string

if the character is lower case alphabetical

subtract the character ‘a’ from the character

get the ith % map length element from the map and add it to the character

adjust the value of the character % 26 to keep it within the alphabet

add the character ‘a’ to the character

add the encrypted character value to the end of the output string

if the character is upper case alphabetical do the same thing as for lower case except use ‘A’ instead of ‘a’

  1. For decryption, the main program should create an ifstream for the file to be decrypted. It should use the getline method of the ifstream to read lines from the file, call the encryption / decryption function with the line to be decrypted, and display the string which contains the result of the encryption / decryption function call. Repeat until the ifstream reaches the end of the file, then close the ifstream.
  2. For encryption, the main program should create an ifstream for the file to be encrypted. It should also create an ofstream for the file where the encrypted result will be stored. The file name for this file can be gotten from the user or can be the input file name with a special extension added at the end. The getline method of the ifstream is used to read lines from the input file. Then the encryption / decryption function is called to enc&