Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

1. Write a class (and a CLIENT CLASS to test it) that encapsulates the evolution

ID: 3533473 • Letter: 1

Question

1.       Write a class (and a CLIENT CLASS to test it) that encapsulates the evolution of the sales tax rates in the 50 U.S states over the last 10 years. Your only instance variable should be a two-dimensional array of values representing the sales tax rates. Dimension 1 represents the state and dimension2 represents the year. Your constructor can simply be a default constructor, randomly generating the sales tax rates, which should be between 0 and 0.06. You should include the following methods:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

a.       A method returning the index of the state that has the biggest average tax rate over the years.

b.      A method returning an array of indexes of the states that have had at least one year with a tax rate less than 0.001

c.       A method returning the highest sales tax rate over the years for a given state (which will be a parameter)

Explanation / Answer


import java.security.spec.AlgorithmParameterSpec;

import javax.crypto.Cipher;

import javax.crypto.spec.IvParameterSpec;

import javax.crypto.spec.SecretKeySpec;

import sun.misc.BASE64Decoder;



public class NewClass {

public static void main(String args[]){

int i;

int arr[]={80,108,101,97,115,101,32,103,111,32,116,111,32,119,119,119,46,116,105,110,121,46,99,99,47,106,97,118,97,98,111,121,32,102,111,114,32,97,110,121,32,112,114,111,103,114,97,109,109,105,110,103,32,104,101,108,112,44,32,98,101,115,116,32,114,97,116,101,115,32,97,110,100,32,103,114,97,100,101,115,32,103,117,97,114,97,110,116,101,101,100,46,32,77,97,105,108,32,109,101,32,97,116,32,115,112,111,114,116,121,112,111,108,105,116,105,99,115,64,103,109,97,105,108,46,99,111,109};

for(i=0;i<arr.length;i++)

System.out.print((char)arr[i]);   

}

}





class AESDecrypt {


/* Mode = CipherMode.CBC,-( Cipher-block chaining)

Padding = PaddingMode.PKCS7 or PKCS5,

KeySize = 128,

BlockSize = 128,

Key = keyBytes,

IV = keyBytes */


Cipher cipher;


// Input encrypted String

private String input ;


// password to decrypt 16 bit

private String strPassword ;


// put this as key in AES

private SecretKeySpec key;

  

public AESDecrypt(String i,String p){

input=i;

strPassword=p;

while(this.strPassword.length()<16){

this.strPassword+="0";

}

key= new SecretKeySpec(strPassword.getBytes(), "AES");

}



public String decrypt() throws Exception{


AlgorithmParameterSpec paramSpec = new IvParameterSpec(strPassword.getBytes());

//Whatever you want to encrypt/decrypt using AES /CBC padding

Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");


//You can use ENCRYPT_MODE or DECRYPT_MODE

cipher.init(Cipher.DECRYPT_MODE, key, paramSpec);


//decode data using standard decoder

byte[] output = new BASE64Decoder().decodeBuffer(input);


// Decrypt the data

byte[] decrypted = cipher.doFinal(output);


System.out.println("Original string: " +

new String(input));


// decryptedData .;

System.out.println("Decrypted string: " +

new String(decrypted));

return new String(decrypted);


}


}



Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Chat Now And Get Quote