Write a java program that prompts the user to enter in an integer number represe
ID: 3769324 • Letter: W
Question
Write a java program that prompts the user to enter in an integer number representing the number of elements in an integer array. Create the array and prompt the user to enter in values for each element using a for loop. When the array is full, display the following:
-The values in the array on a single line.
-The array with all of the elements reversed.
-The values from the array that have even numbered indexes. Do not use an if statement here.
-The values from the array that have odd numbered indexes. Do not use an if statement here.
-Use a separate for loop for each task.
Prompt the user one more time for a single integer. Report back whether or not the number is found in the array.
All of this work can be done in a single main( ) method.
For the remaining do each task in a separate method. A printArray method that prints any 1D array of integers. A reverse method that returns a new array with the values reverse. printOdd and printEven methods that simply print the appropriate values. A search method that returns the index of an element if it is found. See my sample output below for two separate executions of the program:
How many elements in your array?7
Enter number:5
Enter number:19
Enter number:12
Enter number:2
Enter number:0
Enter number:4
Enter number:8
Your array:
5 19 12 2 0 4 8
Your array reversed: 8 4 0 2 12 19 5
Values at even-numbered indexes: 5 12 0 8
Values at odd-numbered indexes: 19 2 4
Enter a value to look for:0
Found your value at index:4
How many elements in your array?6
Enter number:2306
Enter number:1046
Enter number:3807
Enter number:1047
Enter number:2836
Enter number:4426
Your array:
2306 1046 3807 1047 2836 4426
Your array reversed:
4426 2836 1047 3807 1046 2306
Values at even-numbered indexes: 2306 3807 2836
Values at odd-numbered indexes: 1046 1047 4426
Enter a value to look for:9
Sorry, that value was not found.
Explanation / Answer
/*
* The java program that prompts user to enter
* size of the array. Read values from user.
* Print array, reverse of array,values at even
* number indexes, values at odd number indexes
* ad value at index value
* */
//ArrayProgram.java
import java.util.Scanner;
public class ArrayProgram
{
public static void main(String[] args)
{
//Scanner to read input values
Scanner scanner=new Scanner(System.in);
int numElements;
int searchValue;
System.out.print("How many elements in your array?");
numElements=scanner.nextInt();
//create an array of size, numElements
int[] nums=new int[numElements];
for (int index = 0; index < nums.length; index++)
{
//read elements
System.out.print("Enter number:");
nums[index]=scanner.nextInt();
}
System.out.println("Your array:");
//calling printArray
printArray(nums);
System.out.println();
System.out.println("Your array reversed:");
//Calling reverse and returns reverse of array nums
int rev[]=reverse(nums);
//calling printArray
printArray(rev);
System.out.println();
System.out.println("Values at even-numbered indexes:");
//Calling printEven method
printEven(nums);
System.out.println();
System.out.println("Values at odd-numbered indexes:");
//Calling printOdd method
printOdd(nums);
System.out.println();
System.out.print("Enter a value to look for :");
searchValue=scanner.nextInt();
//Calling search method nums, searchValue
int index=search(nums,searchValue);
//Check if index is not equal to -1
if(index!=-1)
System.out.println("Found your value at index:"+index);
else
System.out.println("Sorry that value was not found");
}
//Returns the index of searchValue in nums array
private static int search(int nums[],int searchValue)
{
boolean found=false;
int foundIndex=-1;
for (int i = 0; i < nums.length && !found; i++)
{
if(nums[i]==searchValue)
{
found=true;
foundIndex=i;
}
}
return foundIndex;
}
//Print odd numbers in array ,nums
private static void printOdd(int[] nums)
{
for (int i = 1; i < nums.length; i=i+2)
{
System.out.print(nums[i]+" ");
}
}
//Print even numbers in array ,nums
private static void printEven(int[] nums)
{
for (int i = 0; i < nums.length; i=i+2)
{
System.out.print(nums[i]+" ");
}
}
//Returns the reverse array of array nums
private static int[] reverse(int[] nums)
{
//create a new rev array
int[] rev=new int[nums.length];
for (int i = nums.length-1; i >=0; i--)
{
rev[i]=nums[i];
}
//return rev array
return rev;
}
//Method prints the elements in nums
private static void printArray(int[] nums) {
for (int i = 0; i < nums.length; i++)
{
System.out.print(nums[i]+" ");
}
}
}
-----------------------------------------------------------------------
Sample output run1:
How many elements in your array?7
Enter number:5
Enter number:19
Enter number:12
Enter number:2
Enter number:0
Enter number:4
Enter number:8
Your array:
5 19 12 2 0 4 8
Your array reversed:
5 19 12 2 0 4 8
Values at even-numbered indexes:
5 12 0 8
Values at odd-numbered indexes:
19 2 4
Enter a value to look for :0
Found your value at index:4
Sample output run2:
How many elements in your array?6
Enter number:2306
Enter number:1046
Enter number:3807
Enter number:1047
Enter number:2836
Enter number:4426
Your array:
2306 1046 3807 1047 2836 4426
Your array reversed:
2306 1046 3807 1047 2836 4426
Values at even-numbered indexes:
2306 3807 2836
Values at odd-numbered indexes:
1046 1047 4426
Enter a value to look for :9
Sorry that value was not found
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.