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.

Answers

Answer 1

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;

}


Related Questions

Technician A says that the last step in the diagnostic process is to verify the problem. Technician B says that the second step is to perform a thorough visual inspection. Who is correct

Answers

Answer:

The answer to this question is given below in the explanation section. However, the correct option is Technician B.

Explanation:

There are eight steps procedures to diagnose the engine.  

Step 1 Verify the Problem

Step 2 Perform a Thorough Visual Inspection and Basic Tests

Step 3 Retrieve the Diagnostic Trouble Codes (DTCs)

Step 4 Check for Technical Service Bulletins (TSBs)

Step 5 Look Carefully at Scan Tool Data

Step 6 Narrow the Problem to a System or Cylinder

Step 7 Repair the Problem and Determine the Root Cause

Step 8 Verify the Repair and Clear Any Stored DTCs

So the correct technician is Technician B that says that the second step is to perform a thorough visual inspection.

What is his resolution amount

Answers

I think it’s 92 I mean yh

twentieth century music has adopted the sounds of the modern period which include synthesizers electronics and computers​

Answers

Answer: True

Explanation:

The 20th century (1900s) saw an increase in the kind and variety of music available. This was down to many innovations in the musical industry in the 20th century such as multitrack recording that made music much more accessible and easier to produce.

With these innovations as well as the advent of the age of computers, musicians and composers were able to included synthesizers and electronics in their music as well as using computers such that new sounds enveloped the world from jazz to rock to jazz fusion.

Which of the following domestic appliances does not use a magnet?
A. Fridge
B. Pressing iron
C. Radio
D. Fan​

Answers

Pressing iron isn’t domestic appliances
answer is the Pressing iron

The __________ list is intended to facilitate the development of the leading free network exploration tool.

Answers

Answer:

Nmap development list

Explanation:

The list being mentioned in this question is known as the Nmap development list. This list basically acts as an information gathering and analytical tool. It allows the user to easily roll out and integrate Nmap tools on a network in order to easily detect all of the IP addresses that are connected as well as analyze all of the details regarding each connected individual system. All of this information is highly valuable to a developer and facilitates the development process.

Which of the following is NOT solely an Internet-based company?
Netflix®
Amazon®
Pandora®
CNN®

Answers

Answer:

I think it's Pandora, though I am familiar with others

Answer:

CNN

Explanation:

1. When you write HTML code, you use ______ to describe the structure of information on a webpage. a. a web address b. tags c. styles d. links

Answers

Answer:

b. tags

Explanation:

When you write HTML code, you use tags to describe the structure of information on a webpage. These tags are represented by the following symbols <>. All of HTML is written using different types of tags such as <body>, <main>, <div>, <nav>, etc. Each of these serves a different purpose but are all used for structuring the specific information on a website so that the information is well organized and is not all on top of each other. This also allows for specific sections to be easily targeted and styles separately from the other sections.

A CPU with a quad-core microprocessor runs _____ times as fast as a computer with a single-core processor.

two

three

four

eight

Answers

Four is the rught answer i don’t think so

Answer:

four

Explanation:

quad means four so it runs four times faster

Write an application named [LastName]_MultiplicationTable and create a method that prompts the user for an integer value, for example 7. Then display the product of every integer from 1 through 10 when multiplied by the entered value. For example, the first three lines of the table might read 1 x 7 = 7, 2 x 7 = 14, 3 x 7 = 21. .. . ..

Answers

Answer:

I did this in C# & Java

Explanation:

C#:

       public static void Main(string[] args)

       {

           int input = Convert.ToInt32(Console.ReadLine());

           Multiply(input);

       }

       public static int Multiply(int input)

       {

           int ans = 0;

           for(int i =1; i<=10; i++)

           {

               ans = i*input;

               Console.WriteLine(i + "*" + input + "=" + ans);

           }

           return ans;

       }

Java:

   public static void main(String[] args)

   {

       Scanner myObj = new Scanner(System.in);  

       int input = Integer.parseInt(myObj.nextLine());

       Multiply(input);

   }

   public static int Multiply(int input)

   {

       int ans = 0;

       for(int i =1; i<=10; i++)

           {

               ans = i*input;

               System.out.println(i + "*" + input + "=" + ans);

           }

       return ans;

   }

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.

Answers

I’m pretty sure answer is B let me know if I’m wrong

Plz answer me will mark as brainliest ​

Answers

Answer:

True

Operating System

Booting

Which of the following is true of how packets are sent through the internet?

Answers

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.

Which is an example of an operating system

a
Adobe Photoshop

b
Internet Explorer

c
Windows

d
Microsoft Word

Answers

Answer:

windows

Explanation:

Examples of Operating Systems

Some examples include versions of Microsoft Windows (like Windows 10, Windows 8, Windows 7, Windows Vista, and Windows XP), Apple's macOS (formerly OS X), Chrome OS, BlackBerry Tablet OS, and flavors of Linux, an open-source operating system.

explain how to use the information in an outline to start writing a business document

Answers

Answer: document

Explanation:

maybe try to think of an impressive title that’ll catch the readers attention or reveal the purpose of your writing in ur first paragraph of the main body

The code below is supposed to display the name and score for the student with the highest score one time before the program ends. It is displaying Jim as the student with the highest score. It is displaying the highest score of 95. Unfortunately, Jim does not have a score of 95. Correct the following code:

Declare String students[SIZES] = {"Jen", "Jon", "Jan", "Joe", "Jim"}
Declare Integer scores[SIZES] = 70, 85, 72, 95, 90
Declare Integer index Declare Integer highest = scores[0]
Declare Integer highest Name = " " For index = 0
To SIZES //Assume that this translates to For (index = 0; index <= SIZES, index ++)
If scores[index] > highest then highest = scores[index]
End Of highestName = students[index]
End For Display "

The name of the student with the highest score is ", highest Name Display "The highest score is ", highest

Answers

Answer:

Modify

If scores[index] > highest then highest = scores[index]

End Of highest

Name = students[index]

End For Display

to

If scores[index] > highest then highest = scores[index]

Name = students[index]

End Of highest

End For Display

Explanation:

In the code, you posted the code segment that gets the name of the student with the highest score is outside the if condition that determines the highest.

To make correction, we only need to bring this code segment into the loop.

See Answer

Plz answer me will mark as brainliest ​

Answers

Answer:

Application

Explanation:

Application software comes in many forms like apps, and even on computers. The software is most common on computers of all kinds while mobile applications are most common on cellular devices.

What is the maximum number of VLANs that can be configured on a switch supporting the 802.1Q protocol? Why?

Answers

Answer:

4096 VLANs

Explanation:

A VLAN (virtual LAN) is a group of devices on one or more LAN connected to each other without physical connections. VLANs help reduce collisions.

An 802.1Q Ethernet frame header has VLAN ID of 12 bit VLAN field. Hence the maximum number of possible VLAN ID is 4096 (2¹²).  This means that a switch supporting the 802.1Q protocol can have a maximum of 4096 VLANs

A lot of VLANs ID are supported by a switch. The maximum number of VLANs that can be configured on a switch supporting the 802.1Q protocol is 4,094 VLANS.

All the VLAN needs an ID that is given by the VID field as stated in the IEEE 802.1Q specification. The VID field is known to be of  12 bits giving a total of 4,096 combinations.

But that of 0x000 and 0xFFF are set apart. This therefore makes or leaves it as 4,094 possible VLANS limits. Under IEEE 802.1Q, the maximum number of VLANs that is found on an Ethernet network is 4,094.

Learn more about VLANs from

https://brainly.com/question/25867685

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.​

Answers

In python:

print("This weekend will be nice.")

I hope this helps!

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

Answers

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

Create an interface called Runner. The interface has an abstract method called run() that displays a message describing the meaning of run to the class. Create classes called Machine, Athlete, and PoliticalCandidate that all implement Runner.
The run() should print the following in each class:
Machine - When a machine is running, it is operating.
Athlete - An athlete might run in a race, or in a game like soccer.
PoliticalCandidate - A political candidate runs for office.
----------------------------------------------------------------------------------------------------
public class Athlete implements Runner
{
public void run()
{
// write your code here
}
}
--------------------------------------------------------------------------------------
public class DemoRunners
{
public static void main(String[] args)
{
Machine runner1 = new Machine();
Athlete runner2 = new Athlete();
PoliticalCandidate runner3 = new PoliticalCandidate();
runner1.run();
runner2.run();
runner3.run();
}
}
------------------------------------------------------------------------------------------
public class Machine implements Runner
{
public void run()
{
// write your code here
}
}
----------------------------------------------------------------------------------------------------
public class PoliticalCandidate implements Runner
{
public void run()
{
// write your code here
}
}
----------------------------------------------------------------------------------------------------
public interface Runner
{
// write your code here
}
----------------------------------------------------------------------------------------------------

Answers

Answer:

Please find the code and its output in the attached file.

Explanation:

In the above-given code, an interface "Runner" is defined, inside the interface, an abstract method run is declared.

In the next step, three class "Athlete, Machine, and PoliticalCandidate" s defined that implements the run method, and use the print message that holds a given value as a message.

In the next step, a class "DemoRunners" is defined, and inside the main method, the three-class object is declared, which calls the run method.

 

Wireless technology is best described as a/an

stationary computing system.

office computing system.

mobile computing system.

inflexible computing system.

Answers

Answer:

mobile computing system

Explanation:

Answer:

mobile computing system... C

In general, bitmap images need to be modified before being used for mobile apps.
a) True
b) False

Answers

Answer:

True

Explanation:

If you are creating something like a mobile app, you will need to find a way to strip out a lot of the excess file size to make them work

Write a program named as calcPrice.c that formats product information entered by the user and calculate the total amount of purchase.

Answers

Answer:

Here is the calcPrice.c program:

#include <stdio.h>   //to use input output functions

int main(void)  {  //start of main method

   int itemNo, month, day, year, quantity;  //declares variables to hold item number, quantity, and date

   float unitPrice; //declare variable to hold price per unit

   printf("Enter item number: ");  // prompts user to enter item number

   scanf("%d", &itemNo);  //reads item number from user and stores it in itemNo variable

   printf("Enter unit price: ");  // prompts user to enter unit price

   scanf("%f", &unitPrice);  //reads input unit price and stores it in unitPrice variable

   

    printf("Enter quantity: ");  //prompts user to enter quantity

   scanf("%d", &quantity);  //reads input quantity and stores it in quantity variable

   printf("Enter purchase date (mm/dd/yyyy): ");  //prompts user to enter purchase date

   scanf("%d/%d/%d", &month, &day, &year);  //reads input date and stores it in month, day and year variables

    float totalAmount = unitPrice * quantity;  //computes the total amount

   printf("\nItem\tUnit Price\tQTY\tPurchase Date\tTotal Amount\n");  //displays the item, unit price, qty, purchase data and total amount with tab space between each

   printf("%d\t$%5.2f\t%d\t%.2d/%.2d/%d\t$%5.2f\n", itemNo, unitPrice,quantity, month, day, year,totalAmount);   }    //displays the values of itemNo, unitPrice, quantity, month, day, year and computed totalAmount with tab space between each

Explanation:

Lets suppose user enters 583 as item number, 13.5 as unit price, 2 as quantity and 09/15/2016 as date so

itemNo = 583

unitPrice = 13.5

quantity = 2

month = 09

day = 15

year = 2016

totalAmount is computed as:

  totalAmount = unitPrice * quantity;

 totalAmount = 13.5* 2

totalAmount = 27.00

Hence the output of the entire program is:

Item    Unit Price      QTY     Purchase Date   Total Amount      

583     $  13.50           2           09/15/2016         $  27.00  

The screenshot of the program along with its output is attached.

Which orientation is wider than it is tall?

Portrait
Macro
Shutter
Landscape

Answers

Answer:

Landscape

Explanation:

Landscape orientation is wider than it is tall.

Answer:

Landscape

Explanation:

Please help me. Anyone who gives ridiculous answers for points will be reported.

Answers

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

B1:B4 is a search table or a lookup value

Answers

Answer:

lookup value

Explanation:

Which feature of a database allows a user to locate a specific record using keywords?

Chart
Filter
Search
Sort

Answers

Answer:

Search

Explanation:

Because you are searching up a specific recording using keywords.

I hope this helps

Answer:

Filter

Explanation:

I got it correct for a quiz.

Write the three working fundamental steps of a computer.​

Answers

Answer:

just tryin' to help you

Explanation:

The three stages of computing are input, processing and output. A computer works through these stages by 'running' a program. A program is a set of step-by-step instructions which tells the computer exactly what to do with input in order to produce the required output.

We define the following terms:
Lexicographical Order, also known as alphabetic or dictionary order, orders characters as follows:
For example, ball < cat, dog < dorm, Happy < happy, Zoo < ball.
A substring of a string is a contiguous block of characters in the string. For example, the substrings of abc are a, b, c, ab, bc, and abc.
Given a string, , and an integer, , complete the function so that it finds the lexicographically smallest and largest substrings of length .
Input Format
The first line contains a string denoting .
The second line contains an integer denoting .
Constraints
consists of English alphabetic letters only (i.e., [a-zA-Z]).
Output Format
Return the respective lexicographically smallest and largest substrings as a single newline-separated string.
Sample Input 0
welcometojava
3
Sample Output 0
ava
wel
Explanation 0
String has the following lexicographically-ordered substrings of length :
We then return the first (lexicographically smallest) substring and the last (lexicographically largest) substring as two newline-separated values (i.e., ava\nwel).
The stub code in the editor then prints ava as our first line of output and wel as our second line of output.
Solution:-
import java.util.Scanner;
public class Solution {
public static String getSmallestAndLargest(String s, int k) {
String smallest = "";
String largest = "";
smallest = largest = s.substring(0, k);
for (int i=1; i String substr = s.substring(i, i+k);
if (smallest.compareTo(substr) > 0)
smallest = substr;
if (largest.compareTo(substr) < 0)
largest = substr;
}
return smallest + "\n" + largest;
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String s = scan.next();
int k = scan.nextInt();
scan.close();
System.out.println(getSmallestAndLargest(s, k));
}
}

Answers

Answer:

Here is the JAVA program:

import java.util.*;  

public class Solution {    // class name

   public static String getSmallestAndLargest(String s, int k) {   //method that takes a string s and and integer k and returns lexicographically smallest and largest substrings

       String smallest = "";   //stores the smallest substring

       String largest = "";   //stores the largest substring

       smallest = largest = s.substring(0, k);  //sets the smallest and largest to substring from 0-th start index and k-th end index of string s

       for(int i = 0;i<=s.length()-k;i++){  //iterates through the string s till length()-k

            String subString = s.substring(i,i+k);  //stores the substring of string s from ith index to i+k th index

            if(i == 0){ //if i is equal to 0

                smallest = subString;              }  //assigns subString to smallest

            if(subString.compareTo(largest)>0){ //checks if the subString is lexicographically greater than largest

                largest = subString;  //sets subString to largest

            }else if(subString.compareTo(smallest)<0)  //checks if the subString is lexicographically less than smallest

                smallest = subString;       }       //sets subString to smallest

       return smallest + "\n" + largest;     }  //returns the lexicographically smallest and largest substrings

   public static void main(String[] args) {  //start of main method

       Scanner scan = new Scanner(System.in);  //creates Scanner object

       String s = scan.next();  //scans and reads input string from user

       int k = scan.nextInt();  //scans and reads integer k from user

       scan.close();  

       System.out.println(getSmallestAndLargest(s, k));      }  }  //calls method by passing string s and integer k to it to display lexicographically smallest and lexicographically largest substring

Explanation:

The program takes a string s and an integer k and passes them to function getSmallestAndLargest that returns the lexicographically smallest and lexicographically largest substring. The method works as follows:

Lets say s = helloworld and k = 3

       smallest = largest = s.substring(0, k);

s.substring(0, k);  is returns the substring from 0th index to k-th index so it gives substring hel

       for(int i = 0;i<=s.length()-k;i++) This loop iterates through the string s till s.length()-k times

s.length()-k is equal to 7 in this example

At first iteration:

i = 0

i<=s.length()-k is true  so program enters the body of loop

String subString = s.substring(i,i+k); this becomes:

subString = s.substring(0,3);

subString = "hel"

if(i == 0) this is true so:

smallest = subString;

smallest = "hel"

At second iteration:

i = 1

i<=s.length()-k is true  so program enters the body of loop

String subString = s.substring(i,i+k); this becomes:

subString = s.substring(1,4);

subString = "ell"

if(subString.compareTo(smallest)<0) this condition is true because the subString ell is compared to smallest hel and it is lexographically less than smallest so :

smallest = subString;

smallest = "ell"

So at each iteration 3 characters of string s are taken and if and else if condition checks if these characters are lexicographically equal, smaller or larger and the values of largest and smallest change accordingly

After the loop ends the statement return smallest + "\n" + largest; executes which returns the smallest and largest substrings. So the output of the entire program with given example is:

ell                                                                                                                                           wor

Here ell is the lexicographically  smallest substring and wor is lexicographically  largest substring in the string helloworld

The screenshot of the program along with its output is attached.

-Roll 2 standard dice
-If the sum of the dice are greater than 8, print “The sum of the dice is ____”
- print “done” at the end of the code

Answers

In python:

import random

die1 = random.randint(1,6)

die2 = random.randint(1,6)

if die1 + die2 > 8:

   print(f"The sum of the dice is {die1 + die2}")

print("done")

If you need me to change anything, I will. I hope this helps!

Other Questions
1. Which of the following pairs of words are NOT associated together? (A) "eyes" and "blood" (B) "ebon" and "blue-red" (C) "choughs" and "paper" (D) "wind" and "phantom" (E) "heaven" and "hook". What is the slope of the line passing through the points (3, 4) and (2, 1)? Find the function that can be used to represent the bananas Light is produced by which fundamental force?strong nuclearelectromagneticweak nucleargravitational PLEASE HELP !!! Find the missing side lengths SAS SimilarityNot SimilarSSS SimilarityAA Similarity 11. An individual who is heterozygous for rob(13;14) is at increased risk for having a child affected by Patau syndrome. Please briefly explain why. What is true about the force acting on the cars at the end of a roller coaster ride as they slow down right before stopping? im doing the edge 2020 assinment right now PLS HELP ME!!!!!!!Which worker is commonly employed by the government?Factory SupervisorAgricultural InspectorCleaning WorkerSlaughterhouse Butcher What conditions allowed the United States to acquire the Louisiana Purchase? following questions:1. What is the name of the town that "tie-dye" built?2. What is shibori and how is it done?3. How many shibori designs are currently done?4. How long does it take to become a professional level artisan at thistechnique? Which graph represents a function? An irregular piece of iron has a mass of 78.7 grams. When placed in a graduated cylinder with 30 mL of water, the water rises to the 35 mL What does the word boom suggest about these towns? What does it suggest about the effect of migration and western expansion?How did mining lead to statehood for many states in the West?Do you think the American West would have been settled as quickly if the United States had remained a farming nation after the Civil War?What conditions combined in the 1860s to make raising cattle on the Great Plains profitable?Can someone answer these right quick?!! "Apachu" is the Tewa word for _______________.a.the peoplec.the huntersb.the enemyd.the corn growers A force of 1000 pounds drags a truck 50 feet in 10 seconds.How much work is accomplished?How much power was required?Work = 50, 000 ft-lbs, Power = 5000 ft-lbs/secWork = 50,000 ft-lbs, Power = 500 ft-lbs/secWork = 5,000 ft-lbs, Power = 500 ft-lbs/sec Consider f(x) = mx + b where m and b are both non-zero constants. The function g(x) is the inverse of f(x). Which of the following functions is g(x)? Use composition of functions to check your answer. Which of the following inequalities is shown in the graph the thieves have been arrested by the police how to factorise 15x-10x^3