Programming Fundamentals/Practice: Data and Operators

From Wikibooks, open books for an open world
Jump to navigation Jump to search

Chapter Summary[edit]

  • Constants and Variables
  • Identifier Names
  • Data Types
    • Integer Data Type
    • Floating-Point Data Type
    • String Data Type
    • Boolean Data Type
    • Nothing Data Type
  • Order of Operations
  • Assignment
  • Arithmetic Operators
  • Integer Division and Modulus
  • Unary Operations
  • Lvalue and Rvalue
  • Data Type Conversions
  • Input-Process-Output Model

Review Questions[edit]

True or false:

  1. A data type defines a set of values and the set of operations that can be applied to those values.
  2. Reserved or keywords can be used as identifier names.
  3. The concept of precedence says that some operators (like multiplication and division) are to be executed before other operators (like addition and subtraction).
  4. An operator that needs two operands will promote one of the operands as needed to make both operands be of the same data type.
  5. Parentheses change the precedence of operators.
  6. Integer data types are stored with a mantissa and an exponent.
  7. Strings are identified by single quote marks in most programming languages.
  8. An operand is a value that receives the operator’s action.
  9. Arithmetic assignment is a shorter way to write some expressions.
  10. Integer division is rarely used in computer programming.
  11. The Nothing data type is the same as the value 0 (zero).
  12. A boolbean data type has two or more possible values. One possibility can be a null data type.

Answers:

  1. true
  2. false
  3. true
  4. true
  5. false – Parentheses change the order of evaluation in an expression.
  6. false
  7. false
  8. true
  9. true
  10. false
  11. false
  12. false

Variables:
In each of the following, determine appropriate identifier names and data types:

  1. You are buying paint for a mural project in your neighborhood, so you must calculate how many gallons of paint you'll need.
  2. You want to open a savings account at a bank, but you are not sure which bank is best for you. You decide to compare each bank's interest rate to see where you'll get the most money.
  3. There is a sale at your local supermarket, and you want to know how much you saved on your purchase.
  4. You are taking a poll to see which flavor of ice cream people like most at your school.
  5. A condominium complex decides to open a pool and wants to know how many cubic feet of space they need to dig out.

Short Answer:

  1. A men’s clothing store that caters to the very rich wants to create a database for its customers that records clothing measurements. They need to record information for shoes, socks, pants, dress shirts and casual shirts. Explain how you would create a program that records this information using your new knowledge of assigning values and data types. List the steps you would take and why you would take them. HINT: You may need more than 5 data items.
  2. The sequence operator can be used when declaring multiple identifier names for variables or constants of the same data type. Is this a good or bad programming habit and why?
  3. Explain how you would correctly display something that includes two different types of data. For example, how would you display something that says "John is" + (integer variable with Johns age) " years old"?
  4. You are creating a program that converts inches to centimeters. Using the input-process-output model, list the steps required to carry out the operation.
  5. What is the correct order of operations using these 6 terms: Addition, Subtraction, Multiplication, Division, Parentheses, and Exponents?

Activities[edit]

Complete the following activities using pseudocode, a flowcharting tool, or your selected programming language. Use appropriate data types for each variable, and include separate statements for input, processing, and output. Create test data to validate the accuracy of each program. Add comments at the top of the program and include references to any resources used.

  1. Create a program to prompt the user for hours and rate per hour and then calculate and display their weekly, monthly, and annual gross pay (hours * rate).[1]
  2. Create a program that asks the user how old they are in years, and then calculate and display their approximate age in months, days, hours, and seconds. For example, a person 1 year old is 12 months old, 365 days old, etc.
  3. Review MathsIsFun: US Standard Lengths. Create a program that asks the user for a distance in miles, and then calculate and display the distance in yards, feet, and inches, or ask the user for a distance in miles, and then calculate and display the distance in kilometers, meters, and centimeters.
  4. Review MathsIsFun: Area of Plane Shapes. Create a program that asks the user for the dimensions of different shapes and then calculate and display the area of the shapes. Do not include shape choices. That will come later. For now, just include multiple shape calculations in sequence.
  5. Create a program that calculates the area of a room to determine the amount of floor covering required. The room is rectangular with the dimensions measured in feet with decimal fractions. The output needs to be in square yards. There are 3 linear feet to a yard.
  6. Create a program that helps the user determine how much paint is required to paint a room and how much it will cost. Ask the user for the length, width, and height of a room, the price of a gallon of paint, and the number of square feet that a gallon of paint will cover. Calculate the total area of the four walls as 2 * length * height + 2 * width * height Calculate the number of gallons as: total area / square feet per gallon Note: You must round up to the next full gallon. To round up, add 0.9999 and then convert the resulting value to an integer. Calculate the total cost of the paint as: gallons * price per gallon.
  7. Review MathsIsFun: Order of Operations. Create a program that demonstrates order of operations to the user. Include parentheses, exponents, multiplication, division, addition, and subtraction in your program. Use variables for the calculations and label the output. For example, part of the program might display: 1 + 2 * 3 = 7 (1 + 2) * 3 = 9...
  8. Review Wikipedia: Data type. Create a program that demonstrates integer, floating point, and character or string data. Demonstrate converting between these data types. For example, user input is always a string, but adding string values of “1” + “1” is typically “11”, whereas, adding numeric values of 1 + 1 is 2. Use variables for the calculations and label the output.

References[edit]

See Also[edit]

  1. http://flowgorithm.org/documentation/operators.htm
  2. http://flowgorithm.org/documentation/declare.htm
  3. http://flowgorithm.org/documentation/output.htm
  4. http://flowgorithm.org/documentation/types.htm
  5. http://flowgorithm.org/documentation/input.htm