You are on page 1of 6

COLLEGE OF COMPUTER STUDEIS

INFORMATION TECHNOLOGY DEPARTMENT

CCS0023L
(Object Oriented Programming)

EXERCISE

3
Using Different Flow Controls
Student Name / Group
Name: Capistrano, Redd G.
Name Role
Members (if Group):

Section:
TX22
Calleja, Joseph
Professor:
I. PROGRAM OUTCOME/S (PO) ADRESSED BY THE LABORATORY EXERCISE
a. Apply knowledge of computing appropriate to the discipline.

II. COURSE LEARNING OUTCOME/S (CLO) ADDDRESSED BY LABORATORY


EXERCISE
2 Apply knowledge of computing fundamentals and develop computer programs as a result of
evaluating possible alternative program constructs that will address the need for automating
real life tasks, taking into account the efficiency and effects of their choice of constraints.

III. INTENDED LEARNING OUTOME/S (ILO) ADDRESSES BY THE LABORATORY


EXERCISE
 Create Java programs using the Java Operators
 Create Java programs using the different flow control structures

IV. BACKGROUND INFORMATION

 if-else() performs statements based on two conditions


 switch() performs statements based on multiple conditions
 while() performs statements repeatedly while condition remains true
 do-while() performs statements repeatedly (at least once) while condition remains true
 for() performs statements repeatedly based on a condition

V. EXPERIMENTAL PROCEDURE:

1. Write a program that takes as input a bank account balance and an interest rate and
outputs the value of the account in 10 years. the output should show the value of the
account for three different methods of compounding interest: annually, monthly, and
daily. When compounded annually, the interest is added once per year at the end of the
year. When compounded monthly the interest is added in 12 times per year. When
computed daily, the interest is added 365 times per year. You do not have to worry
about leap years. Assume all years have 365 days. On annual interest, you can assume
that the interest is posted exactly one year from the date of deposit. In other words, you
do not have to worry about interest being posted on a specific day of the year, like
December 31.
Similarly, you can assume monthly interest is posted exactly one month after it in entered.
Since the account earns interest on the interest, the account should have a higher balance
when interest is posted more frequently. Be sure to adjust the interest rate for the time
period of the interest. If the rate is 5%, then when posting monthly interest, you use
(5/12%).When posting daily interest, you use (5/365)%. Do your calculations using a loop
that adds in the interest for each time period. (Do not use some sort of algebraic formula).
Your program should have an outer loop that allows the user to repeat this calculation for a
new balance and interest rate. The calculation is repeated until the user indicates that
she/he wants to end the program.

import java.util.Scanner;

public class Formative2 {

public static void main(String args[]) {


Scanner scanner = new Scanner(System.in);

int compounding = 0, choice;

System.out.println("Enter balance: ");


double balance = scanner.nextDouble();

System.out.println("Enter interest rate: ");


double interestRate = scanner.nextDouble();

do {
System.out.println("Enter compound method: ");
System.out.println("1. Annually");
System.out.println("2. Monthly");
System.out.println("3. Daily");

choice = scanner.nextInt();

switch (choice) {

case 1:
compounding = 1;
break;
case 2:
compounding = 12;
break;
case 3:
compounding = 365;
break;
default:
System.out.println("Invalid choice!");
}

} while (choice < 1 || choice > 3);

double ratePerPeriod = interestRate / compounding;


int years = 10;
double futureValue = balance;

for (int i = 0; i < years; i++) {


futureValue *= (1 + ratePerPeriod);
}

System.out.println("Future Value: " + futureValue);

scanner.close();

VI. QUESTION AND ANSWER:

1. What is the significance of using control structures?

Using control structures in programming ensures that the program will run smoothly based
on what the user wants to do. It is very important as having little to no use of control
structures will make your code very wonky and obviously not very well structured too in
terms of its flow

2. For you, which is preferably the most convenient control structure to be used in comparisons,
IF-ELSE or SWITCH?

I personally always like to use switch case as it is more simple for me because using integers
as choices will make the user understand the program very easily

3. Do SWITCH and IF-ELSE have differences?


Yes, they are different because if-else statements are more for the inner workings in the
program for me, having if-else statements on very specific parts of the program helps the
code to flow more systematically. The same goes for switch case, I almost always use switch
case for the menu of many simple CRUD programs as it is the easiest way of having control
as the user.

4. Which is the easiest way in looping? Explain.

The easiest way for looping will depend on the programmer, for me the easiest is a simple
while loop, until the condition is not true, the program will continue to run. It is important to
use many different looping techniques as one does not have the benefit of the other and they
can specialize in different situations.

Note: The following rubrics/metrics will be used to grade students’ output in the lab
Exercise 3.

Program (100 pts.) (Excellent) (Good) (Fair) (Poor)


Program Program executes Program executes Program executes Program does not
execution (20pts) correctly with no with less than 3 with more than 3 execute (10-11pts)
syntax or runtime errors (15-17pts) errors (12-14pts)
errors (18-20pts)
Correct output Program displays Output has minor Output has Output is incorrect
(20pts) correct output errors (15-17pts) multiple errors (10-11pts)
with no errors (12-14pts)
(18-20pts)
Design of output Program displays Program displays Program does not Output is poorly
(10pts) more than minimally display the designed (5pts)
expected (10pts) expected output required output (6-
(8-9pts) 7pts)
Design of logic Program is Program has slight Program has Program is
(20pts) logically well logic errors that do significant logic incorrect (10-
designed (18- no significantly errors (3-5pts) 11pts)
20pts) affect the results
(15-17pts)
Standards Program code is Few inappropriate Several Program is poorly
(20pts) stylistically well design choices inappropriate written (10-11pts)
designed (18- (i.e. poor variable design choices
20pts) names, improper (i.e. poor variable
indentation) (15- names, improper
17pts) indentation) (12-
14pts)
Delivery The program was The program was The program was The program was
(10pts) delivered on time. delivered a day delivered two days delivered more
(10pts) after the deadline. after the deadline. than two days after
(8-9pts) (6-7pts) the deadline. (5pts)
Topic Control Structures
Lab Activity No 3
Lab Activity Computing using Different Java
Operators
CLO 2
Program execution (20)
Correct output (20)
Design of output (10)
Design of logic (20)
Standards (20)
Delivery (10)
TOTAL

You might also like