Answer:
It is A: Packet metadata is used to route and reassemble information travelling through the internet.
Explanation:
Step 1: The Internet works by chopping data into chunks called packets. Each packet then moves through the network in a series of hops. Each packet hops to a local Internet service provider (ISP), a company that offers access to the network -- usually for a fee
Step 2: Entering the network
Each packet hops to a local Internet service provider (ISP), a company that offers access to the network -- usually for a fee.
Step 3: Taking flight
The next hop delivers the packet to a long-haul provider, one of the airlines of cyberspace that quickly carrying data across the world.
Step 4: BGP
These providers use the Border Gateway Protocol to find a route across the many individual networks that together form the Internet.
Step 5: Finding a route
This journey often takes several more hops, which are plotted out one by one as the data packet moves across the Internet.
Step 6: Bad information
For the system to work properly, the BGP information shared among routers cannot contain lies or errors that might cause a packet to go off track – or get lost altogether.
Last step: Arrival
The final hop takes a packet to the recipient, which reassembles all of the packets into a coherent message. A separate message goes back through the network confirming successful delivery.
Return to the Product Mix worksheet. Benicio wants to provide a visual way to compare the scenarios. Use the Scenario Manager as follows to create a PivotTable that compares the profit per unit in each scenario as follows:
a. Create a Scenario PivotTable report using the profit per unit sold (range B17:F17) as the result cells.
b. Remove the Filter field from the PivotTable.
c. Change the number format of the value fields to Currency with 2 decimal places and the $ symbol.
Answer:
To create a pivot table, select the columns to pivot and click on the insert option, click on the pivot table option and select the data columns for the pivot, verify the table range, select the location for the pivot and click ok. To format a column, select the columns and click the number option on the home tab, select the currency option and click on the number of decimal places
Explanation:
Microsoft Excel is a great tool for data analysis and visualization. It has several mathematical, engineering, statistical, and graphical tools for working with data.
A pivot-table is an essential tool for describing and comparing data of different types.
The steps to follow in order to produce a Pivot table would be as mentioned below:
Opting the columns for a pivot table. Now, make a click on the insert option. This click is followed by opting for the pivot table and the data columns that are available in it.After this, the verification of the range of the table is made and then, the location for the pivot table has opted. After this, the column is formatted and the number option is selected followed by the currency option, and the quantity of decimal places. A Pivot table allows one to establish a comparison between data of distinct categories(graphic, statistical, mathematical) and elaborate them.Learn more about 'Pivot Table' here:
brainly.com/question/13298479
This is Java! Help is appreciated :)
public class TvShow {
int x;
public TvShow(String showName, int numMinutes){
}
public int getNumActors(String actors){
//method code goes here but since it's just a signature we don't put anything here.
return 0;
}
TvShow show22 = new TvShow("Leave it to Beaver", x);
public double cost(int i){
return 0;
}
public static void main(String[] args) {
}
}
class Tester {
public static void main(String[] args) {
TvShow tv = new TvShow("", 0);
tv.show22.cost(0);
}
}
I hope this helps in some way!
According to Darwin’s theory of evolution, differences between species may be a result of which of the following?
a) The disuse of body structures
b) The transmission of acquired characteristics
c) Natural selection
d) Mutagenic agents
Answer:
The answer is C Natural selection
Explanation:
Natural selection is the differential survival and reproduction of individuals due to differences in phenotype. It is a key mechanism of evolution, the change in the heritable traits characteristic of a population over generations
According to Darwin’s theory of evolution, differences between species may be a result of Natural selection. Thus the correct option is C.
What is Darwin’s theory of evolution?According to Darwin, all species descended from a single ancestor, species can change through time, and new species can arise from existing ones which makes them interconnected with common traits.
Natural selection of traits in a species that would help the species in its survival is the process that drives diversification, the evolutionary process through which new biological species form.
Natural selection is the evolutionary mechanism stating that with many resources available in nature, creatures with genetically inherited features that promote survival and reproduction will typically produce more offspring than their conspecific competitors.
Therefore, option C is appropriate.
Learn more about Darwin’s theory of evolution, here:
https://brainly.com/question/25718754
#SPJ6
How has the rise of mobile development and devices impacted the IT industry, IT professionals, and software development
Answer:
Throughout the interpretation section elsewhere here, the explanation of the problem is summarized.
Explanation:
The growth of smartphone production and smartphone apps and services, as well as the production of smartphones, has had a positive influence on the IT industry, IT practitioners, as well as the development of the technology. As normal, the primary focus is on smartphone apps instead of just desktop software. As we recognize, with innovative features, phone applications, and smartphones are all made, built, modernized every day, and always incorporated with either the latest technology.This has now resulted in far more jobs and employment for the IT sector, and therefore new clients for service-based businesses. It provided various-skilling the application production industry for IT experts including learning how to work on emerging technology. The demand for software production and software growth is evolving at a greater speed than it's ever been, so the increase of smartphone production and smartphones has had a very beneficial effect on perhaps the IT sector, IT practitioners, and business development.Adjust list by normalizing When analyzing data sets, such as data for human heights or for human weights, a common step is to adjust the data. This can be done by normalizing to values between 0 and 1, or throwing away outliers. For this program, adjust the values by subtracting the smallest value from all the values. The input begins with an integer indicating the number of integers that follow. Assume that the list will always contain fewer than 20 integers. Ex: If the input is: 5 30 50 10 70 65 the output is: 20 40 0 60 55 The 5 indicates that there are five values in the list, namely 30, 50, 10, 70, and 65. 10 is the smallest value in the list, so is subtracted from each value in the list. For coding simplicity, follow every output value by a space, including the last one.
Answer:
Written in Python
inp = int(input("Length: "))
num = []
num.append(inp)
for i in range(1,inp+1):
userinp = int(input("Input: "))
num.append(userinp)
smallest = num[1]
for i in range(1,len(num)):
if smallest > num[i]:
smallest = num[i]
for i in range(1,len(num)):
num[i] = num[i] - smallest
for i in range(1,len(num)):
print(num[i],end=' ')
Explanation:
I've added the full program as an attachment where I used comments as explanation
Challenge activity 1.3.6:output basics.for activities with output like below,your output's whitespace(newlines or spaces) must match exactly.see this note.write code that outputs the following.end with a newline.This weekend will be nice.
In python:
print("This weekend will be nice.")
I hope this helps!
The Gas-N-Clean Service Station sells gasoline and has a car wash. Fees for the car wash are $1.25 with a gasoline purchase of $10.00 or more and $3.00 otherwise. Three kinds of gasoline are available: regular at $2.89, plus at $3.09, and super at $3.39 per gallon. User Request:
Write a program that prints a statement for a customer. Analysis:
Input consists of number of gallons purchased (R, P, S, or N for no purchase), and car wash desired (Y or N). Gasoline price should be program defined constant. Sample output for these data is
Enter number of gallons and press 9.7
Enter gas type (R, P, S, or N) and press R
Enter Y or N for car wash and press Y
**************************************
* *
* *
* Gas-N-Clean Service Station *
* *
* March 2, 2004 *
* * ************************************** Amount Gasoline purchases 9.7 Gallons Price pre gallons $ 2.89 Total gasoline cost $ 28.03 Car wash cost $ 1.25 Total due $ 29.28 Thank you for stopping Pleas come again Remember to buckle up and drive safely
Answer:
import java.util.Scanner;
public class Main
{
public static void main(String[] args) {
//print the header
System.out.println("**************************************");
System.out.println("* *");
System.out.println("* *");
System.out.println("* Gas-N-Clean Service Station *");
System.out.println("* *");
System.out.println("* March 2, 2004 *");
System.out.println("* *");
System.out.println("**************************************");
//set the constant values for gasoline
final double REGULAR_GASOLINE = 2.89;
final double PLUS_GASOLINE = 3.09;
final double SUPER_GASOLINE = 3.39;
// initialize the variables as 0
double gasolinePrice = 0, gasolineCost = 0, carWashCost = 0, totalCost = 0;
Scanner input = new Scanner(System.in);
//ask the user to enter the gallons, gas type and car wash choice
System.out.print("Enter number of gallons ");
double gasolinePurchase = input.nextDouble();
System.out.print("Enter gas type (R, P, S, or N) ");
char gasType = input.next().charAt(0);
System.out.print("Enter Y or N for car wash ");
char carWashChoice = input.next().charAt(0);
//check the gas type. Depending on the choice set the gasolinePrice from the corresponding constant value
if(gasType == 'R')
gasolinePrice = REGULAR_GASOLINE;
else if(gasType == 'P')
gasolinePrice = PLUS_GASOLINE;
else if(gasType == 'S')
gasolinePrice = SUPER_GASOLINE;
//calculate the gasolineCost
gasolineCost = gasolinePurchase * gasolinePrice;
//check the carWashChoice. If it is yes and gasolineCost is greater than 10, set the carWashCost as 1.25. Otherwise, set the carWashCost as 3.00
if(carWashChoice == 'Y'){
if(gasolineCost >= 10)
carWashCost = 1.25;
else
carWashCost = 3.00;
}
//calculate the total cost, add gasolineCost and carWashCost
totalCost = gasolineCost + carWashCost;
//print the values in required format
System.out.println("Amount Gasoline purchases " + gasolinePurchase);
System.out.println("Gallons Price per gallons $ " + gasolinePrice);
System.out.printf("Total gasoline cost $ %.2f\n", gasolineCost);
System.out.println("Car wash cost $ " + carWashCost);
System.out.printf("Total due $ %.2f\n", totalCost);
System.out.println("Thank you for stopping\nPlease come again \nRemember to buckle up and drive safely");
}
}
Explanation:
*The code is in Java.
Please see the comments in the code for explanation
How can you create an illusion of spatial depth in a two-dimensional design?
Answer:
Using three or more vanishing points within a work to create the illusion of space on a two-dimensional surface.
Explanation:
A pedometer treats walking 2,000 steps as walking 1 mile. Write a program whose input is the number of steps, and whose output is the miles walked. If the input is 5345, the output is 2.6725.
In python:
print(steps_walked / 2000)
def build_dictionary(string):
d = dict()
for x in string:
if not d.get(x):
d[x] = 1
else:
d[x] += 1
return d
Part 2:
Create a function named build_word_counter that has the same signature as build_dictionary. This function also returns a dictionary, however, it normalizes each word such that the case of the word is ignored (i.e. case insensitive). So the words LIKE, Like, like should be considered the same word (much like a regular dictionary would). You must use the same function add_item again (so don't make any modifications to it) Normalize words by using the lower case version of the word.
Part 3:
Create a function named build_letter_distribution that has the same signature as build_dictionary. This function returns a dictionary; however, each key will be a letter and the value will be the count that represents how many times that letter was found. Essentially you will have a letter distribution over a sentence (which is a list of words). The letters should be case insensitive.
Answer:
Follows are the code to this question:
def build_word_counter(string):#defining a method build_word_counter that accepts string as a parameter
d = dict()#defining d variable as a dictionary
for x in string:#defining for loop that use string
x = x.lower()#Use lower method
if not d.get(x):#defining if block that holds value in d variable
d[x] = 1#use dictionary to hold value in 1
else:#defining else block
d[x] += 1#use dictionary to increment value by 1
return d#return dictionary
print(build_word_counter(["Like","like","LIKE"]))#use print method to call method
def build_letter_distribution(string):#defining a method build_letter_distribution that accepts string variable
d = dict()#defining d variable as a dictionary
for i in string:#defining for loop to count string value
for j in i:#defining for loop to hold string as number
if not d.get(j):#defining if block that doesn't get value in dictionary
d[j] = 1#hold value in dictionary
else:#defining else block
d[j] += 1#use dictionary to increment the dictionary value
return d#return dictionary
print(build_letter_distribution(["Like","test","abcdEFG"]))#use print method to return its value
Output:
please find the attached file.
Explanation:
In the first program a method, "build_word_counter" is defined that accepts a string variable in its parameter, and inside the method, a dictionary variable "d" is defined that uses the for loop to hold string value and convert all value into lower case.
In the next step, a conditional statement is used that holds value in the dictionary and count its word value.
In the second program a method, "build_letter_distribution" is defined that holds string variable in its parameter, and inside the method, a dictionary variable "d" is defined that uses the two for loop and in if the block, it holds value in the dictionary and returns its value, and use print method to print its return its value.
Wireless technology is best described as a/an
stationary computing system.
office computing system.
mobile computing system.
inflexible computing system.
Answer:
mobile computing system
Explanation:
Answer:
mobile computing system... C
Write a Python code to ask a user to enter students' information including name,
last name and student ID number. The program should continue prompting the
user to enter information until the user enters zero. Then the program enters
search mode. In this mode, the user can enter a student ID number to retrieve
the corresponding student's information. If the user enters zero, the program
stops. (Hint: consider using list of lists)
database = ([[]])
while True:
first_name = input("Enter the student's first name: ")
if first_name == "0":
while True:
search = input("Enter a student ID number to find a specific student: ")
if [] in database:
database.pop(0)
if search == "0":
exit()
k = 0
for w in database:
for i in database:
if i[2] == search:
print("ID number: {} yields student: {} {}".format(i[2], i[0], i[1]))
search = 0
last_name = input("Enter the student's last name: ")
id_number = input("Enter the student's ID number: ")
database.append([first_name, last_name, id_number])
I hope this helps!
Need help with coding.
I'm trying to input a list that uses int(input("Element: ")) and it's causing an error. Anything to help with this?
You could try something likes this.
lst = []
n = int(input("Number of elements: ))
for i in range(0, n):
element = int(input("Element: "))
lst.append(element)
Consider a multiprocessor CPU scheduling policy. There are 2 options: 1) a singlecommon ready queue of jobs; when a CPU becomes free, the job atthe head of the queuegoes to this free CPU. 2) a ready queue for each CPU; the arriving job joins the shortestqueue. In general, do you expect the common queue or the shortest queue policy to performbetter. Justify.
Explanation:
A ready queue is more adequate since in this method the load balancing occurs in a proper way. The goal of multiple processing is the correct distribution of load.
But in the cases when a processor is doing quicker or taking a smaller queue, it will self assign processes allotted for execution, configuring it with a constant busy state.
A bank has three types of accounts: checking, savings, and loan. Following are the attributes for each type of account:
CHECKING: Acct No, Date Opened, Balance, Service Charge
SAVINGS: Acct No, Date Opened, Balance, Interest Rate
LOAN: Acct No, Date Opened, Balance, Interest Rate, Payment
Assume that each bank account must be a member of exactly one of these subtypes. Using generalization, develop an EER model segment to represent this situation using the traditional EER notation, the Visio notation, or other tools like Lucidchart / Draw.io. Remember to include a subtype discriminator.
Answer:
please find the attachment of a graph:
Explanation:
Description of the model:
Generalization is the method used here just for the EER model, which sweeping generalization is a way to identify the common characteristics of a sequence to create a common entity. This is an approach from the bottom up. Its verification, savings, and credit firms are extended to a higher-level object's account. So, the entity entities (Account) are the common traits of these bodies. As well as the specific qualities are the part of specialized entities (checks, savings, and loans). This EER model is shown via the subgroup and supertype notes. The Balance has calculated the distance, throughout the entity type entity are key patterns of the subgroup entities. The wood beaded includes Acct No, Balanced and Open Date. The key was its underliner Acct No. the very first key. CHECKING, SAVINGS, and LOAN are the subsection organizations of the Supertype Account.Its subtypes get the traits that are not normal. It Testing feature is the uncommon extra fee feature. Its SAVINGS post-type feature has the peculiar exchange rate feature. Its LOAN subgroup feature produces unusual interest in fixed payment characteristics.Enhanced Entity relationships[EER] represent the requirements and complexities of a complex database.
What is Enhanced Entity-relationship?Here, the account entity generalized into three entities and these are checking, savings, and loan.
Also, the common attribute the three of them have can be considered in the account entity which is common in them while the individual attributes must be specified under its own entity.
EER models are the helpful tools used for designing databases that have high-level models.
Learn more about databases on:
https://brainly.com/question/518894
Using the Multiple-Alternative IFTHENELSE Control structure write the pseudocode to solve the following problem to prepare a contract labor report for heavy equipment operators: The input will contain the employee name, job performed, hours worked per day, and a code. Journeyman employees have a code of J, apprentices a code of A, and casual labor a code of C. The output consists of the employee name, job performed, hours worked, and calculated pay. Journeyman employees receive $20.00 per hour. Apprentices receive $15.00 per hour. Casual Labor receives $10.00 per hour.
Answer:
The pseudo-code to this question can be defined as follows:
Explanation:
START //start process
//set all the given value
SET Pay to 0 //use pay variable that sets a value 0
SET Journeyman_Pay_Rate to 20//use Journeyman_Pay_Rate variable to sets the value 20
SET Apprentices_Pay_Rate to 15//use Apprentices_Pay_Rate variable to sets the value 15
SET Casual_Pay_Rate to 10//use Casual_Pay_Rate variable to set the value 10
READ name//input value
READ job//input value
READ hours//input value
READ code//input value
IF code is 'J' THEN//use if to check code is 'j'
COMPUTE pay AS hours * JOURNEYMAN_PAY_RATE//calculate the value
IF code is 'A' THEN//use if to check code is 'A'
COMPUTE pay AS hours * APPRENTICES_PAY_RATE//calculate the value
IF code is 'C' THEN//use if to check code is 'C'
COMPUTE pay AS hours * CASUAL_PAY_RATE//calculate the value
END//end conditions
PRINT name//print value
PRINT job//print value
PRINT code//print value
PRINT Pay//print value
END//end process
Which type of chart or graph uses vertical bars to compare data?
Column chart
Line graph
Pie chart
Scatter chart
Answer:
Colunm Chart
Explanation:
Trust me
IT professionals have a responsibility to educate employees about the risks of hot spots. Which of the following are risks associated with hot spots? Check all of the boxes that apply.
third-party viewing
unsecured public network
potential for computer hackers
unauthorized use
Answer:
All of them
Explanation:
got it right on edge 2020
Answer:
All of the above
Explanation:
just do it
Complete the sentence.
____ use only apps acquired from app stores.
O tablets
O laptops
O servers
O desktops
Answer:
Tablets
Explanation:
I say so
Secondary sources
information gathered from primary sources.
Answer:
The answer is interpret Proof is down below
Explanation:
Here is the proooooooffffffff i made a 90 but this one was right
Secondary sources interpret information gathered from primary sources.
What are Secondary sources of information?A secondary source is known to be made up of discussion that is often based on a primary information source.
Hence, the feature of secondary sources are known to give some kind of interpretation to all the information that has been gathered from other primary sources.
Learn more about Secondary sources from
https://brainly.com/question/896456
#SPJ2
3.What are the pros and cons of using a linked implementation of a sparse matrix, as opposed to an array-based implementation
Answer:
speed and storage
Explanation:
The pros and cons of both are mainly in regards to speed and storage. Due to linked lists elements being connected to one another it requires that each previous element be accessed in order to arrive at a specific element. This makes it much slower than an array-based implementation where any element can be quickly accessed easily due to it having a specific location. This brings us to the other aspect which is memory. Since Arrays are saved as a single block, where each element has a specific location this takes much more space in the RAM as opposed to a linked implementation which is stored randomly and as indexes of the array itself.
Array Implementation:
Pros: Much Faster and Easier to target a specific elementCons: Much More Space neededLinked Implementation
Pros: Less overall space neededCons: Much slower speed.Memory locations in personal computers are usually given in hexadecimal. If a computer programmer writes a program that requires 100 memory locations, determine the last memory location that is used if the program starts at location 2C8DH 16 hexadecimal
Answer:
The answer is "The last memory addresses used by a specific program is 2CF0".
Explanation:
For this specific problem, we assume that only a memory storage allocation like Array data structure is needed, as well as any allocation only needs one memory cell since it focuses on the structure and type of data used.
So, first, we will transform the provided memory address for better comprehension from Hexadecimal into decimal.
[tex]\to \bold{(2C8D)_{16} = (11405)_{10}}[/tex]
Now 11405 is the first memory cell's address. With all of this number, it can add 99, resulting in the final decimal memory address.
[tex]=11405 + 99\\\\= 11504[/tex]
[tex]\bold{(11504)_{10} = (2CF0)_{16}}.[/tex]
On what date was jschlatt originally added to the dreamsmp server, and on which date was his second appearance on the server?
since this has already been answered, who is your favorite SMP character?
mines Wilbur/ Ghostbur
some people will disagree with me but jshlatt is one of my favorite characters on the dream smp . But my all time favorite characters is ALL of Wilbur's characters
What are two examples of items in Outlook?
a task and a calendar entry
an e-mail message and an e-mail address
an e-mail address and a button
a button and a tool bar
Answer:
a task and a calendar entry
Explanation:
ITS RIGHT
Answer:
its A) a task and a calendar entry
Explanation:
correct on e2020
Your job is to write a basic blurring algorithm for a video driver. The algorithm will do the following: it will go through all pixels on the screen and for each pixel, compute the average intensity value (in red, green and blue separately) of the pixel and its 8 neighbors. (At the edges of the screen, there are fewer neighbors for each pixel.) Let's say the number of pixels on the screen is n. Then what is the order of the number of arithmetic operations (additions and divisions) required?
a. The number is order of n 4 .
b. The number is order of n2.
c. The number is order of n
d. The number is order of n3.
Please help me. Anyone who gives ridiculous answers for points will be reported.
Answer:
Well, First of all, use Linear
Explanation:
My sis always tries to explain it to me even though I know already, I can get her to give you so much explanations XD
I have the Longest explanation possible but it won't let me say it after 20 min of writing
What does GDF is a measure of a nations?
What is the process to add images to your library panel in Adobe Animate CC?
Answer choices
Choose file>import>import library
Choose file>open>insert image
Choose file>export>export file
Choose file> New> file
Answer:
Choose file>import>import library
Explanation:
because it is the process to add images to your library
Jason works as a financial investment advisor. He collects financial data from clients, processes the data online to calculate the risks associated with future investment decisions, and offers his clients real-time information immediately. Which type of data processing is Jason following in the transaction processing system?
A.
online decision support system
B.
online transaction processing
C.
online office support processing
D.
online batch processing
E.
online executive processing
Answer:
The answer to this question is given below in the explanation section.
Explanation:
The correct answer to this question is online decision support system. Because the decision support systems process the data, evaluate and predict the decision, and helps the decision-makers, and offer real time information immediately in making the decision in an organization. So the correct answer to this question is the decision supports system.
Why other options are not correct
Because the transaction processing system can only process the transaction and have not the capability to make the decision for the future. Office support processing system support office work, while the batch processing system process the task into the batch without user involvement. however, online executive processing does not make decisions and offer timely information to decision-makers in an organization.
Data Structure in C++
Using namespace std;
In this assignment you will implement a variation of Mergesort known as a bitonic mergesort, recursively.
In a normal mergesort, the input to the merge step is a single array, which is divided into two sections, both sorted ascending. We assume that the first half (0 up to but not including size/2) is the first section and the second half (size/2 up to but not including size) is the second section.
In a bitonic mergesort, we use the same arrangement, except that the second sequence is sorted in descending order: the first half goes up, and then the second half goes down. This means that when we are doing a merge, sometimes we want to merge the results into ascending order, while other times we want to merge into descending order (depending on which "half" of the final array the result will end up in). So we add another parameter, to describe the direction the output should be sorted into:
void merge(int* input, int size, int* output, bool output_asc);
If output_asc == true then after the merge output should contain size elements, sorted in ascending order. If output_asc == false, output should contain the elements sorted in descending order.
The other thing we glossed over in class was the allocation of the temporary space needed by the algorithm. It’s quite wasteful to allocate it in each recursive call: it would be better to allocate all the necessary space up front, and then just pass a pointer to it. In order to do this, we’ll write the recursive mergesort function in a helper function which will preallocate the space needed for the results:
int* mergesort(int* input, int size) {
int* output = new int[size];
mergesort(input, size, output, true);
return output;
}
void mergesort(int *input, int size, int* output, bool output_asc) {
// Your implementation here
}
The parameter output_asc serves the same purpose here as for merge: it tells the function that we want the output to be sorted ascending.
Interface
You must implement the functions
void merge(int* input, int size, int* output, bool output_asc);
int* mergesort(int* input, int size);
void mergesort(int *input, int size, int* output, bool output_asc);
Download a template .cpp file containing these definitions. This file is also available on the server in /usr/local/class/src.
merge must run in O(n) time with n= size. mergesort (both versions) must run in O(nlogn) time, and must use O(n) space. If you allocate any space other than the output array, you should free it before your function returns.
The test runner will test each function separately, and then in combination. It checks the result of sorting to make sure that it’s actually sorted, and then nothing is missing or added from the original (unsorted) sequence.
The code .cpp is available bellow
#include<iostream>
using namespace std;
//declaring variables
void merge(int* ip, int sz, int* opt, bool opt_asc); //merging
int* mergesort(int* ip, int sz);
void mergesort(int *ip, int sz, int* opt, bool opt_asc);
void merge(int* ip, int sz, int* opt, bool opt_asc)
{
int s1 = 0;
int mid_sz = sz / 2;
int s2 = mid_sz;
int e2 = sz;
int s3 = 0;
int end3 = sz;
int i, j;
if (opt_asc==true)
{
i = s1;
j = e2 - 1;
while (i < mid_sz && j >= s2)
{
if (*(ip + i) > *(ip + j))
{
*(opt + s3) = *(ip + j);
s3++;
j--;
}
else if (*(ip + i) <= *(ip + j))
{
*(opt + s3) = *(ip + i);
s3++;
i++;
}
}
if (i != mid_sz)
{
while (i < mid_sz)
{
*(opt + s3) = *(ip + i);
s3++;
i++;
}
}
if (j >= s2)
{
while (j >= s2)
{
*(opt + s3) = *(ip + j);
s3++;
j--;
}
}
}
else
{
i = mid_sz - 1;
j = s2;
while (i >= s1 && j <e2)
{
if (*(ip + i) > *(ip + j))
{
*(opt + s3) = *(ip + i);
s3++;
i--;
}
else if (*(ip + i) <= *(ip + j))
{
*(opt + s3) = *(ip + j);
s3++;
j++;
}
}
if (i >= s1)
{
while (i >= s1)
{
*(opt + s3) = *(ip + i);
s3++;
i--;
}
}
if (j != e2)
{
while (j < e2)
{
*(opt + s3) = *(ip + j);
s3++;
j++;
}
}
}
for (i = 0; i < sz; i++)
*(ip + i) = *(opt + i);
}
int* mergesort(int* ip, int sz)
{
int* opt = new int[sz];
mergesort(ip, sz, opt, true);
return opt;
}
void mergesort(int *ip, int sz, int* opt, bool opt_asc)
{
if (sz > 1)
{
int q = sz / 2;
mergesort(ip, sz / 2, opt, true);
mergesort(ip + sz / 2, sz - sz / 2, opt + sz / 2, false);
merge(ip, sz, opt, opt_asc);
}
}
int main()
{
int arr1[12] = { 5, 6, 9, 8,25,36, 3, 2, 5, 16, 87, 12 };
int arr2[14] = { 2, 3, 4, 5, 1, 20,15,30, 2, 3, 4, 6, 9,12 };
int arr3[10] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };
int *opt;
cout << "Arays after sorting:\n";
cout << "Array 1 : ";
opt = mergesort(arr1, 12);
for (int i = 0; i < 12; i++)
cout << opt[i] << " ";
cout << endl;
cout << "Array 2 : ";
opt = mergesort(arr2, 14);
for (int i = 0; i < 14; i++)
cout << opt[i] << " ";
cout << endl;
cout << "Array 3 : ";
opt = mergesort(arr3, 10);
for (int i = 0; i < 10; i++)
cout << opt[i] << " ";
cout << endl;
return 0;
}