Write a function template for a function that has parameters for a partially filled array and for a value of the base type of the array. If the value is in the partially filled array, then the function returns the index of the first indexed variable that contains the value. If the value is not in the array, the function returns −1. The base type of the array is a type parameter. Notice that you need two parameters to give the partially filled array: one for the array and one for the number of indexed variables used. Also, write a suitable test
Program plan:
- The function template “search” is defined with the three parameters.
- Inside the function definition, the “for” condition will iterate until the “i” value is less than “num” value.
- If “a[i]” is equal to “v” then return “i”, otherwise return -1.
- Inside the function definition, the “for” condition will iterate until the “i” value is less than “num” value.
- Define the main function.
- Declare the required variables and assign the value for those variables.
- Call the “search” function with the arguments.
- Check “i” is equal to “-1” or not.
- If the condition is true, display the search value is not found. Otherwise display the search element position.
The program is used to find the search element in the given array is as follows:
Explanation of Solution
Program:
//include the necessary header file
#include<iostream>
using namespace std;
//definition of template
template<typename T>
//definition of "search" function
int search(T a[], int num, T v)
{
//check the condition
for(int i = 0; i < num; i++)
//check the condition
if(a[i] == v)
//return "i" value
return i;
//return "-1" value
return -1;
}
//definition of main function
int main()
{
//declare and assign the array value
int a[20] = {1, 2, 4, 9, 3, 7, 6, 5, 10, 15};
//declare and assign the value
int num = 10;
int v = 6;
//declare and call the function
int i = search(a, num, v);
//check the condition
if(i == -1)
//display the result
cout<<v<<" is not found in the array\n";
else
//display the result
cout<<v<<" found at index "<<i<<"\n";
//return statement
return 0;
}
Output:
6 found at index 6
Want to see more full solutions like this?
Chapter 17 Solutions
Problem Solving with C++ (10th Edition)
Additional Engineering Textbook Solutions
Starting Out with Programming Logic and Design (5th Edition) (What's New in Computer Science)
Thinking Like an Engineer: An Active Learning Approach (4th Edition)
Java: An Introduction to Problem Solving and Programming (8th Edition)
Electric Circuits. (11th Edition)
Mechanics of Materials (10th Edition)
Java How to Program, Early Objects (11th Edition) (Deitel: How to Program)
- in c++ Write a user-defined function that takes an array and the size of the array as parameters, and returns the number of elements whose values are between 10 and 20 in the array. Define and initialize an array with 10 elements in main() function and use your user-defined function to display the result.arrow_forwardin carrow_forwardIn C++ Create a function named printArray (). The function has two parameters . The first parameter is an array called finalGrades [ containing integer elements . The second argument is an integer named size OfArray , the number of elements in the array. The function prints the contents of arrayit does not return a value. Write the function header and the function body to print the contents of the array.arrow_forward
- Code Should Be In C++arrow_forwardWrite the function definition for a value returning function that receives an array of integer values, the array length, and an integer target value as parameters. The function should perform a li ear (sequencial) search for the target value. If the value is found, the function should return the index position of the target value, otherwise, it should return -1. Write only the function definition.arrow_forwardin c++ In statistics, the mode of a set of values is the value that occurs most often or with the greatest frequency. Write a function that accepts as arguments the following: A) An array of integers B) An integer that indicates the number of elements in the array The function should determine the mode of the array. That is, it should determine which value in the array occurs most often. The mode is the value the function should return. If the array has no mode (none of the values occur more than once), the function should return −1. (Assume the array will always contain nonnegative values.) Demonstrate your pointer prowess by using pointer notation instead of array notation in this function.arrow_forward
- Write a C++ function definition named containsNumber. The function should take three parameters: a one-dimensional integer array, the number of entries in the array, and an integer value. The function should search the array for the integer value and return a boolean value of true if the value is found and false otherwise. Below is a example call to the function: valueFound = containsNumber(table, nbrOfEntries, value); You may assume that all parameters passed to the function are valid, that the nbrOfEntries amount is always greater than or equal to one, and that a specific integer value occurs at most once in the table. Remember to only write the function definition for the containsNumber function. Do not write a complete C++ program.arrow_forwardWrite a statement that declares a prototype for printArray, a C function with two parameters. The first of the parameters is an integer array and the second is an integer that reports the number of elements in the array. The function does not return any valuearrow_forwardConsider the function void modify(int & x) { x = 10; }Show how to call the modify function so that it sets the integer int i;to 10.arrow_forward
- A function template can be overloaded by another function template with the samefunction name. T/Farrow_forwardin c++ language pleasssearrow_forwardin c++ Create a function that takes in a size and creates an array in the function of that size. The array should only contain even numbers. Return the array to main and show how that is done.arrow_forward
- Microsoft Visual C#Computer ScienceISBN:9781337102100Author:Joyce, Farrell.Publisher:Cengage Learning,C++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage Learning