IT473: Interactive Computer Graphics

Question 1.  Use DDA to draw a line from (1, 1) to (7, 18).  

a. How many points will be needed to generate such a line? Show detailed calculations. (10 Points)

b. Plot the graph – shade the pixels (5 Points)

TRUE/FALSE:

Texture mapping is the application of rotating patterns or rotating images to three-dimensional graphics to enhance the realism of their surfaces.

A. True

B. False

The RemoteControl class currently takes in a String of commands from the user that looks like “FFFTRF”. However, our Kiva robots cannot understand instructions in that form. They can simply make one move at a time, accepting a single KivaCommand. So,

 

 Convert User Input to an Array of KivaCommands

The  RemoteControl class currently takes in a String of commands from the  user that looks like “FFFTRF”. However, our Kiva robots cannot  understand instructions in that form. They can simply make one move at a  time, accepting a single KivaCommand. So, we’ll need to take the user  inputted commands and convert them into a more Kiva friendly format, a  list of KivaCommands that we can send to the robot’s move method one at a  time. 

Write the Convert Method Using continue and/or break

Create  a helper method in the RemoteControl class called  convertToKivaCommands(). This method should take a String as a  parameter, which will be the commands that the user types into the  console (for example “FFFTRF”). It should return an array of  KivaCommands (in this case FORWARD, FORWARD, FORWARD, TAKE, TURN_RIGHT,  FORWARD). We recommend doing this by using the values() method of the  KivaCommand enum to get an array of all of the KivaCommands. You can  then use the getDirectionKey() method to determine which KivaCommand  each char in the String should be converted to. If the user enters a  character that does not correspond to a command throw an  IllegalArgumentException with a useful error message.

Note: When  you want to print out the contents of a KivaCommand[] array variable  called commands, for example, you would call Arrays.toString(commands)  to turn the array into a single String. You’ll need to import  java.util.Arrays to use this method. Here is some sample code that you  can play with in BlueJ to demonstrate this, then use the approach for  your needs:

Exp19_Excel_Ch05_Cap_Apartments

 

#Exp19ExcelCh05CapApartments  

#Exp19_Excel_Ch05_Cap_Apartments

Project Description:

You manage several apartment complexes in Phoenix, Arizona. You  created a dataset that lists details for each apartment complex, such as  apartment number, including number of bedrooms, whether the unit is  rented or vacant, the last remodel date, rent, and deposits. You will  use the datasets to aggregate data to analyze the apartments at the  complexes.

Start   Excel. Download and open the file named Exp19_Excel_Ch05_Cap_Apartments.xlsx. Grader has automatically added   your last name to the beginning of the filename.

Before subtotalling the data,   you need to sort the data.
 

  Select the Summary sheet. Sort the data by Apartment Complex in  alphabetical   order and further sort it by # Bed (the number of  bedrooms) from smallest to   largest.

You want to use the Subtotal   feature to display the average total deposit by number of bedrooms for each   apartment complex.
 

  Use the Subtotal feature to insert subtotal rows by Apartment  Complex to   calculate the average Total Deposit. Add a second subtotal  (without removing   the first subtotal) by # Bed to calculate the  average Total Deposit by the   number of bedrooms.

Use the outline symbols to   display only the subtotal rows. Create  an automatic outline and collapse the   outline above Total Deposit.

You want to create a PivotTable to determine the total monthly rental   revenue for occupied apartments.
 

  Display the Rentals sheet and create a blank PivotTable on a new  worksheet to   the left of the Rentals sheet. Change the name of the  worksheet to Rental Revenue. Name   the PivotTable Rental Revenue

Display the Apartment Complex and # Bed fields in Rows and the Rental   Price field as Values.

Format the Sum of Rental Price   for Accounting Number Format with zero decimal places and enter the custom   name Total   Rent Collected.

Select the Occupied field for   the filter and set the filter to Yes to display data for occupied apartments.

You want to calculate the total   monthly rental revenue if the rates increase by 5% for the occupied   apartments.
 

  Insert a calculated field to multiply the Rental Price by 1.05. Change the name to New Rental   Revenue. Apply   Accounting Number Format with zero decimal places.

Select the range B3:C3 and apply   these formats: wrap text, Align Right horizontal alignment, and 30 row height. Select column B and   set 9.29 column width. Select column C   and set 14.43 column   width.

Apply Light Orange, Pivot Style   Medium 10 to the PivotTable and display banded rows.

Insert a slicer for # Bed so that you can filter the dataset by    number of bedrooms. Change the slicer caption to # of Bedrooms. 

Change the slicer height to 1.4 inches and width to 1.75 inches. Apply Light Orange,   Slicer Style Light 2. Cut the slicer and paste it in cell E2.

Insert a timeline for the Last   Remodel field. Change the time  period to YEARS. Apply Light Orange, Timeline   Style Light 2. Change  the timeline height to 1.4 inches and with to 3.75 inches. 

The Databases sheet contains two   tables. You will create a relationship between those tables.
 

  Display the Databases sheet. Create a relationship between the  APARTMENTS   table using the Code field and the COMPLEX table using the  Code field.

You want to create a PivotTable   from the related tables.
 

  Create a PivotTable using the data model on a new sheet. Change the sheet   name to Bedrooms.   Name the PivotTable BedroomData.

Select the Apartment Name field   from the COMPLEX table for Rows,  the # Bed field for Columns, and the # Bed   field as Values. This will  display the number of apartments with the   specified number of bedrooms  per apartment complex. Display the values as a percentage   of row  totals.

Create a Clustered Column   PivotChart. Cut the chart and paste it in cell A13 using the Destination   Theme.

Select the 3-bedroom data series   and apply the Black, Text 1,  Lighter 50% solid fill color. Apply Black, Text   1 font color to the  vertical axis and category axis. Change the chart height   to 3 inches  and the   width to 5 inches, if necessary. Hide the field buttons in the  PivotChart.

Create a footer on all   worksheets with your name in the left, the  sheet name code in the center, and   the file name code in the right.

Save and close Exp19_Excel_Ch05_Cap_Apartments.xlsx.   Exit Excel. Submit the file as directed.

week3

 Hi Teja,

1.  Define  data mining. Why are there many names and definitions for data mining?

2.  What are the main reasons for the recent popularity of data mining?

3.  Discuss what an organization should consider before making a decision to purchase data mining software.

4.  Distinguish data mining from other analytical tools and techniques.

5.  Discuss the main data mining methods. What are the fundamental differences among them?

6.  Visit  teradatauniversitynetwork.com. Identify case studies and white papers about data mining. Describe recent developments in the field of data mining and predictive modeling.

How would you explain the correlation between the amount of corruption in a country and economic development?

How would you explain the correlation between the amount of corruption in a country and economic development?

Primary/Initial post to Discussion Question: 

Your initial post/response to each module’s discussion forum question(s) should be at least 200 words. 

Secondary Responses/Posts to Peer Posts: 

Respond to at least 2 other postings with 100 words each, attached student question, Your primary posting can end with a “tagline” or a related question of your own. Your secondary postings can either answer another student’s question, or comment on their answering my question. In addition, please ensure that you answer all of my questions.

Homework

  

Chapter-11 Questions:

Researchers were interested in whether lifetime coffee consumption was related to differences in pineal gland size in healthy older (60-94 years old) individuals. Using the number of years, they had been drinking coffee and the number of cups per day, Park and colleagues divided their participants into three groups based on their lifetime coffee consumption: low, moderate, and high. They also measured the volume of the pineal gland using magnetic resonance imaging (MRI). The data that follow are hypothetical pineal gland volume created so the conclusions and means you reach will mimic the experiment.

FYI- data table is attached to screenshot

  

Conduct analysis using α = .05 to determine if lifetime coffee consumption is related to differences in pineal gland size. Answer the following questions:

a) Perform the F test, create an ANOVA summary table, 

b) Complete a Tukey HSD analysis (if appropriate), calculate the effect size index f, and the three d‘s. 

c) Write a conclusion about the relationship of lifetime coffee consumption and pineal gland size.

In this project, you have to write a C++ program to keep track of banking transactions. with algorithm!

    

  1. As with all projects in this course, your program’s output will display your name, your EUID, your e-mail address, the department name, and course number. This means that your program will print this information to the terminal (see the sample output).
     
  2. Declare and initialize the following constants and variables.
     

    • A global floating-point constant of type double to store the minimum balance for the
      business account initialized to 10000.00.
       
    • A global floating-point constant to of type double to store the minimum balance for the
      personal account initialized to 1000.00.
       
    • A global integer constant of type integer to store the length of account number and
      initialize it to 6.
       
    • A global integer constant of type integer to store the maximum number of transactions
      and initialize it to 20.
       
  3. Declare an enumeration constant with values Business and Personal and assign integer values 0
    and 1 to the data items, respectively. They represent the type of bank account.
     
  4. Declare another enumeration constant with values Process, Display and Quit, and assign suitable integer values 1, 2 and 3 to the data items, respectively. They represent menu choice presented
    to the user.
     

 

  1. Write a
    • •


     
  2. Write a
    • •
     

function named getName which gets the name on the bank account. Inside the function: Using a suitable message, prompt the user for the name on the account. The name can have multiple words.
Only alphabets (A-Z or a-z) and whitespaces are permitted in the account name. 

o If the user enters any other characters in the name, you need to generate an error message and ask for the name again. 

o Yourprogrammustkeeponaskingtheusertoenterthenameuntiltheuserentersit correctly.(SEE SAMPLE OUTPUT 1) 

The user may type the name in either uppercase or lowercase, but you need to convert every initial to uppercase. (SEE SAMPLE OUTPUTS)
This function will be called by the main function. 

function named getAccountNumber which get the account number. Inside the function: Using a suitable message, prompt the user for the number of the account.
The account number must be a 6-digit number. 

  

  • If the user enters an account number with more than 6 digits generate an error message and ask the user to enter the number again.
     
  • Only numbers 0-9 are permitted in the account number. If the user enters an account number with non-numeric characters, generate an error message, and ask the user to enter the number again.
     
  • Your program must keep on asking the user to enter the number until the user enters it correctly. (SEE SAMPLE OUTPUTS 1 and 2)
     
  • This function will be called by the main function.
     

7. Write a function named encrypt_num. This function must receive the account number using a string variable and encrypt the account number. Inside this function: 

  • Declare an array of integers with size equal to the length of the account number.
     
  • Using a loop of your choice, populate the array with seeded randomly generated numbers
    between 10 and 20 inclusive.
     
  • In a second loop, add the randomly generated number to the characters in the account
     

 

• 

8. Write a 

• 

• • 

• • 

 

number to offset each character by the random value.
oStore the new characters in a different string. This new string is now your encrypted 

account number.
This function will be called by the main function. 

function named display_transactions. It accepts four parameters:
A 2D array of type double named transactions that stores the transactions performed on the accounts. The number of columns this 2D array is 2. The first column stores the business transactions while the second column stores the personal transactions. The maximum number of rows is limited to the maximum number of transactions declared globally, but note that the account may not have values for all 20 transactions. Also note that the number of personal and business transactions that are actually performed can be different.
An integer that represents the number of transactions to display.
An enum variable that determines whether the account is a Business account or a Personal Account.
A Boolean variable that determines if the transactions needed to sorted while displaying. The default value of this Boolean is false.
Inside this function: 

 

o Display the content of the transactions array that relates to the correct account type – Business and Personal (display the correct column, not both columns). 

o Sort if the default value has been overridden with true when this function is called.
o Your numeric data must have two numbers after the decimal point and a $ sign in front 

 

of the number (for example, $1375.85).
• This function will be called by the displayAccount function. 

9. Write a function named displayAccount.
• This function accepts three parameters. 

  

• 

10. Write a 

• 

• • 

• 

 

• 

o A 2D array of type double named transactions that stores the transactions performed on the accounts. 

o An integer that represents the number of business transactions to display.
o An integer that represents the number of personal transactions to display.
Inside this function:
o Using a suitable message, ask the user which account needs to be displayed – Business 

or Personal.
o Using a suitable message, ask the user if the display needs to be sorted.
o Based on the account type selected by a user, design a switch-case block with a default 

case, to implement the following features. 

  • ➢  You must use the enumeration constants to set up your cases.
     
  • ➢  You must use a variable of your enumeration constant type for switching control.
     
  • ➢  If the user chooses a Business account, call function display_transactions with
    suitable value of parameters.
     
  • ➢  If the user chooses a Personal account, call function display_transactions with
    suitable value of parameters.
     
  • ➢  If the user enters a wrong choice, use the default case to provide an error message
    and ask the user to make the choice again.
     
  • ➢  Your program needs to keep on asking the user for the choice until the user chooses
    a correct choice. (SEE SAMPLE OUTPUT 1) This function will be called by the main function.
    function named process_account.
    It accepts five parameters:
    o A 2D array of type double named transactions that stores the transactions performed
    on the accounts.
    oAn integer that represents the number of business transactions that has been
    processed.
    oAn integer that represents the number of personal transactions that has been
    processed.
    o A double that represents the current business account balance.
    o A double that represents the current personal account balance.
    Inside this function:
    Ask the user to choose which account the user wants to access – Business or Personal.
    o Use a suitable integer value to get the choice from the user.
    Based on the choice of the user, design a switch case block to implement the following requirements.
    o You must use the enumeration constants to set up your cases.
    o You must use a variable of your enumeration constant type for switching control.
    o If the user chooses a Business account
     
  • ➢  Prompt the user for a transaction to process. The transaction can be a positive or a negative value. Positive transactions are deposits and negative transactions are withdrawals.
     
  • ➢  If the current balance falls below the required minimum balance for a business account, there is a 10$ penalty (decrease current balance by $10 for every new
     

  

transaction) until the current balance updates to at least the minimum required 

balance. (SEE SAMPLE OUTPUT 5)
➢ If the current balance is below the minimum required balance, remind the user that 

the account is losing 10$ for every transaction using a suitable message. (SEE 

SAMPLE OUTPUT 5) 

o If the user chooses a Personal account 

  • ➢  Prompt the user for a transaction to process. The transaction can be a positive or a
    negative value. Positive transactions are deposits and negative transactions are
    withdrawals.
     
  • ➢  If any transaction drops the current balance below the minimum personal balance,
    the transaction will be denied with a suitable message to the user.
     
  • ➢  Note that for personal accounts the current balance will never be less than the
    minimum balance and hence there are no provision of penalties either.
     

o If the user enters a wrong choice, use the default case to provide an error message and 

ask the user to make the choice again.
➢ Your program needs to keep on asking the user for the choice until the user chooses 

a correct choice. (SEE SAMPLE OUTPUT 1)
oDisplay the current balance in either case after each successful transaction. (SEE 

SAMPLE OUTPUTS) 

➢ Your numeric data must have two numbers after the decimal point and a $ sign in front of the number (for example, $1375.85). 

o This function needs be able to process more than one transaction.
oAfter successfully processing a transaction, ask the user if the user wants to process 

another transaction.
o If the user chooses to process another transaction, use a suitable loop to ask the user 

about the type of account and the transaction to process. (SEE SAMPLE OUTPUTS )
o If the user chooses to process additional transactions, the previous transactions should 

not be overwritten.
o Assume the user will not perform more than 20 transactions on either account. 

• This function will be called by the main function. 

11. Inside your main function: 

  • Declare a 2D array of doubles to store the transactions performed on the account.
     
  • Display a menu for the user (SEE SAMPLE OUTPUT) that provides the user three choices.
    o Process an account
    o Display the transactions on an account. o Quit the program
     
  • Declare a double variable to store the current personal account balance and initialize it with the value 1000.00.
     
  • Declare a double variable to store the current business account balance and initialize it with the value 10000.00.
     
  • Declare two integer variables to store the number of business transactions and the number of personal transaction and initialize both with 0.
     
  • Declare a string variable to store the name on the account.
     

  

o Call the getName function and pass the string variable for name to get the name. 

  • Declare a string variable to store the account number.
    o Call the getAccountNumber function and pass the string variable for account number to get the account number.
     
  • Using a suitable message, ask the user to make the menu choice using an integer variable.
     
  • Based on the value entered by the user for menu choice, design a switch-case block to
    implement the following requirements.
    o You must use the enumeration constants to set up your cases.
    o You must use a variable of your enumeration constant type for switching control. o If the user chooses to process an account
    ➢ Call the function processAccount with suitable parameters. o If the user chooses to display an account
    ➢ Display the name with suitable message. Make sure the displayed name follows all requirements of Step 5.
    ➢Display the encrypted account number with suitable message. Call the encrypt_num function with appropriate arguments to encrypt the account number.
    ➢ Call the function displayAccount with appropriate arguments. o If the user choose to quit the program.
    ➢ Exit the program with a suitable message.
    o If the user chooses anything else, execute the default case to notify the user an incorrect
    choice.
     

    • ➢  Using a suitable loop, ask the use for the choice again.
       
    • ➢  Your program must keep on looping until the user enters the correct choice. (SEE
      SAMPLE OUTPUT 2)
       
  1. Your program source code should be named “euidProject2.cpp”, without the quotes.
    where euid should be replaced by your EUID.
     
  2. Your program will be graded based largely on whether it works correctly on the CSE machines (e.g., cse01, cse02, …, cse06), so you should make sure that your program compiles and runs on a CSE machine.
     

DESIGN (ALGORITHM): 

On a piece of paper (or word processor), write down the algorithm, or sequence of steps, that you will use to solve the problem. You may think of this as a “recipe” for someone else to follow. Continue to refine your “recipe” until it is clear and deterministically solves the problem. Be sure to include the steps for prompting for input, performing calculations, and displaying output. 

You should attempt to solve the problem by hand first (using a calculator as needed) to work out what the answer should be for a few sets of inputs.
Type these steps and calculations into a document (i.e., Word, text, or PDF) that will be submitted along with your source code. Note that if you do any work by hand, images (such as pictures) may be used, but they must be clear and easily readable. This document shall contain both the algorithm and any supporting hand-calculations you used in verifying your results.