Problem Solving with C++ (9th Edition)
9th Edition
ISBN: 9780133591743
Author: Walter Savitch
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Chapter 14, Problem 4PP
Program Plan Intro
Sorting an array of integers
Program Plan:
- Include requires header file.
- Declare the function for fill array, sort, swap values and index of smallest.
- Define main function.
- Create prompt statement.
- Declare variables for sample array and number used.
- Call the function “fillArray”.
- Prompt statement for index of minimum number.
- Call the function “indexOfSmallest”.
- Call the function “sort”.
- Prompt statement for sorted numbers.
- Display the sorted number using “for” loop.
- Define “fillArray” function.
- This is function is used to read the numbers from user.
- Define “sort” function.
- This function is used to sort the number by recursively call the function “sort”.
- In this function, first declare the variable for index of next smallest.
- If the start index is less than “numberUsed – 1”, then
- Compute the index of next smallest number by calling the function “indexOfSmallest” with arguments of array, start index, and number of values in array.
- Call the function “swapValues” with argument array of start index and array of next element index.
- Increment the start index.
- Then recursively call the function “sort” with argument array “a”, starting index and number of values in a given array “a”.
- Define “swapValues” function.
- This function is used to swap the two numbers.
- Define “indexOfSmallest” function.
- This function is used to compute the index of smallest number by calling the function “indexOfSmallest” recursively.
- In this function, first assign the minimum to array of starting index.
- Then if the starting index is equal to “numberUsed – 1”, then returns the starting index value.
- Otherwise, recursively call the function “indexOfSmallest” with three arguments such as array “a”, increment of start index by “1” and “numberUsed” and this function is assigned to a variable “indexOfMin”.
- If the value of “min” is greater than “a[indexOfMin]”, then return the minimum index. Otherwise, return the starting index.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
Write a recursive function to sort an array of integers into ascending order using the following idea: the function must place the smallest element in the first position, then sort the rest of the array by a recursive call. This is a recursive version of the selection sort. (Note: You will probably want to call an auxiliary function that finds the index of the smallest item in the array. Make sure that the sorting function itself is recursive. Any auxiliary function that you use may be either recursive or iterative.) Embed your sort function in a driver program to test it. Turn in the entire program and the output.
Write a recursive function that returns the smallest integer in an array. Write a test program that prompts the user to enter a list of five integers and displays the smallest integer.
CodeW X
b For func x C Solved
X b Answer X
https://codeworkou...
CodeWorkout
X270: Recursion Programming Exercise:
Count Characters
For function countChr() write the missing part of the recursive call. This function should
return the number of times that the letter "A" appears in string "str".
Recall that str.substring(a) will return the substring of str from position a to the end of
str, while str.substring (a, b) will return the substring of str starting at position a and
continuing to (but not including) the character at position b.
Examples:
countChr ("ctcoWCAt") -> 1
Your AnsSwer:
1 public int countChr(String str) {
2.
if (str.length()
return 0;
} (0
4.
{
int count = 0;
www.
5.
9.
if (str.substring(0, 1).equals("A")) {
count = 1
7.
{
9.
return count + >
1:10 AM
50°F Clear
12/4/2021
呼
Chapter 14 Solutions
Problem Solving with C++ (9th Edition)
Ch. 14.1 - Prob. 1STECh. 14.1 - Prob. 2STECh. 14.1 - Prob. 3STECh. 14.1 - Prob. 4STECh. 14.1 - Prob. 5STECh. 14.1 - If your program produces an error message that...Ch. 14.1 - Write an iterative version of the function cheers...Ch. 14.1 - Write an iterative version of the function defined...Ch. 14.1 - Prob. 9STECh. 14.1 - Trace the recursive solution you made to Self-Test...
Ch. 14.1 - Trace the recursive solution you made to Self-Test...Ch. 14.2 - What is the output of the following program?...Ch. 14.2 - Prob. 13STECh. 14.2 - Redefine the function power so that it also works...Ch. 14.3 - Prob. 15STECh. 14.3 - Write an iterative version of the one-argument...Ch. 14 - Prob. 1PCh. 14 - Prob. 2PCh. 14 - Write a recursive version of the search function...Ch. 14 - Prob. 4PCh. 14 - Prob. 5PCh. 14 - The formula for computing the number of ways of...Ch. 14 - Write a recursive function that has an argument...Ch. 14 - Prob. 3PPCh. 14 - Prob. 4PPCh. 14 - Prob. 5PPCh. 14 - The game of Jump It consists of a board with n...Ch. 14 - Prob. 7PPCh. 14 - Prob. 8PP
Knowledge Booster
Similar questions
- Please solve All the questions properlyarrow_forwardThe solution must be recursive. inputAndPrintReverse:Inputs integers from the user until the user enters 0, then prints the integers in reverse order. For this method, you may NOT use an array or any type of array structure, in other words, you may not use any structure to store the user input.arrow_forward1. The sorted values array contains 16 integers 5, 7, 10, 13, 13, 20, 21, 25, 30,32, 40, 45, 50, 52, 57, 60. Indicate the sequence of recursive calls that are made tobinaraySearch, given an initial invocation of binarySearch(32, 0, 15).show only the recursive calls. For example, initial invocation is binarySearch(45,0,15)where the target is 45, first is 0 and last is 15.arrow_forward
- Write a recursive function that displays a string reversely on the console using the following header: def reverseDisplay(value):For example, reverseDisplay("abcd") displays dcba. Write a test programthat prompts the user to enter a string and displays its reversal.arrow_forwardQuestion 1.wfiarrow_forwardCreate a recursive function that simulates the range function. For example: Enter the range (begin, end, increment) separated by spaces: 3 15 3 [3,6,9,12]arrow_forward
- write a recursive version. The function takes two string parameters, s1 and s2 and returns the starting index of s2 inside the first string s1, or -1 if s2 is not found in s1. You must not use any loops; you also cannot use the string member functions find or rfind. You may use the member functions size, at and substr. Your function must be recursive. CANNOT MODIFY GRAY AREAarrow_forwardWrite a recursive function that adds all the elements in an array. The function will take two arguments, 1) An integer value that is greater than 0 and indicates the size of the array, and 2) An integer array of that size. The function should return an integer value that is the sum of the elements in the array. The function should add elements of the input array using recursion and should not use a loop.ii) Read both a string and the key (integer) is entered through the keyboard. Define a function to encrypt each and every character in a string with the given key. As a programmer, implement the same by writing the C code using pointers. If the given Key is positive, then traverse towards left of the character in the Alphabet sequence. Otherwise, move traverse towards the right of the character in the Alphabet sequence. Example : if the given string is "PRADEEP" and Key = 3 then the encrypted string is "SUDGHHS" iii) An ISBN (International Standard Book Number) is a 10 digit number…arrow_forwardI cant use the sqrt() library functionarrow_forward
- Write a recursive function that finds the number of occurrences of a specified character in a list. You need to define the following two functions. The second one is a recursive helper function.def count(chars, ch):def countHelper(chars, ch, high):Write a test program that prompts the user to enter a list of characters in one line, and a character, and displays the number of occurrences of the character in the list.arrow_forward/** numUnique returns the number of unique values in an array of doubles. * The array may be empty and it may contain duplicate values. * Unlike the previous questions, you can assume the array is sorted. * * Your solution should contain at most one loop. You may not use recursion. * Your solution must not call any other functions. * Here are some examples (using "==" informally): * * * * * Ⓒ == numUnique (new double[] { }) 1 == numUnique (new double[] {11}) 1 == numUnique (new double[] { 11, 11, 11, 11 }) 8 == numUnique (new double[] { 11, 11, 11, 11, 22, 33, 44, 44, 44, 44, 44, 55, 55, 66, 77, 88, 88 }) 8 == numUnique (new double[] { 11, 22, 33, 44, 44, 44, 44, 44, 55, 55, 66, 77, 88 }) * */ public static int numUnique (double[] list) { return StdRandom.uniform (100); //TODO: fix thisarrow_forwardBelow is the recursive implementation of binary search from lab with one change (in red): the print statement at the top of the function which prints "BOO" There is also a main function which calls bsearchR on the sorted array data[] with 7 elements and searching for 10. QUESTION: How many BOOS will be printed by this program? // Recursive Binary Search Routine that does the "Real" Work int bsearchR(int a[], int lo, int hi, int x) { int m; printf("BO0\n"); // <<<<==== NEW STATEMENT if(hi < lo) return -1; m = (lo + hi) / 2; if(a[m] == x) return m; else if(x < a[m]) return bsearchR(a, lo, m-1, x); else return bsearchR(a, m+1, hi, x); } int main() { int data[] = {5, 8, 12, 15, 20, 25, 30}; int idx = bsearchR(data, e, 6, 10); return 0; }arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- C++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage Learning
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning