Task 2: Repetition Structures and Input Validation

Verified

Added on  2019/09/13

|2
|331
|203
Homework Assignment
AI Summary
This document provides a solution to a programming task focusing on repetition structures and input validation. It explains why a FOR loop is preferred over a WHILE loop in a specific scenario and demonstrates how to prevent program crashes due to invalid user input. The solution includes a validateInput() method that checks if the user input is a valid number and greater than 1, ensuring the program's robustness. The code snippet shows how to read user input as a string, validate it, and then convert it to a double for further processing.
Document Page
Task 2
2.2 The main part of the program can use a FOR repetition structure.
a) Explain why a FOR repetition structure was chosen instead of a WHILE repetition
structure.
Even though a check has been performed to make sure that the variable HowFar is greater
than 1 there could be inputs that might cause the program to terminate unexpectedly
(crash).
Ans: For loop is used because we know the exactly how many times for loop have to execute.
This is decided by HowFar value. Until the HowFar variable value will remain the greater than
MyLoop variable value the loop will continue to execute. Whereas while loop is used where we
do not know exactly how many times loop will execute.
b) Provide an example of an input that might cause the program to terminate and describe
a method that could be used to prevent this.
Ans: If user input a string value instead of number then it will cause program to abruptly
terminate execution. This problem could resolve by the one method that is validateInput()
method. First of all we read user input in string format and pass it to validateInput() method.
Here is the code describes the all functioning to validate the user input.
1. String inputVar = null;
2. do{
a. System.out.println(“Enter number: “);
intputVar = sc.next();
b. If(validateInput( String inputVar)){
break;
}else{
System.out.println(“Invalid input”);
c. }
3. }while(true);
4. double HorFar = double.parseDouble(inputVar);
5. public Boolean validateInput(String inputVar){
6. try{ double no = double.parseDouble(inputVar);
if(no < 1){ retrun false; }
i.
return true;
}catch(NumberFormatException ex){
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
return false;
}
7. }
chevron_up_icon
1 out of 2
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]