Lab 6
King Saud University
College of Computer & Information Sciences - Computer Science Dept CSC111 – Computer Programming
lab
A. Problem 1
Write a Java program read from user information of N books . each book has name , price , subject ( computer – math – history ) , number of pages. Display name of the book has highest price.
And number of math books that have more than 300 page.
public class Book {
public String name , subject ; public int price , NbPages ; }
public static void main(String[] args) { Scanner read = new Scanner(System.in);
Book b = new Book();
int max = -1 ;
String maxName = "";
int counterMath_300Pages = 0;
System.out.println("Enter Nb Book");
int nbBook = read.nextInt();
for ( int i = 0 ; i < nbBook ; i++ ){
System.out.println("Enter Book Name");
b.name = read.next();
System.out.println("Enter Book Price");
BOOK
+ name : String + price : int + subject : String + NbPages : int
b.price = read.nextInt();
System.out.println("Enter Book subject");
b.subject = read.next();
System.out.println("Enter Book NbPage");
b.NbPages = read.nextInt();
if ( b.price > max ){
max = b.price ;
maxName = b.name;
}
if ( b.subject.equals("math") && b.NbPages >
300 )
counterMath_300Pages++;
}
System.out.println("Max Book Name is " + maxName + " , it price = " + max );
System.out.println(" # math Book has +300 pages =
" + counterMath_300Pages );
}
B. Problem 2
Write a Java program that convert from Riyal to Dollar and from Dollar to Riyal. Show to user simple menu ( use switch ). Program must be running until user select choice number 3 .
1- Convert from SR to $ 2- Convert from $ to SR 3- Exit from program
Scanner read = new Scanner(System.in);
int choice = 1 ; int Riyal , Dollar ; double result ;
while ( choice != 3 ) {
System.out.println(" 1/ $ -> SR ");
System.out.println(" 2/ SR -> $ ");
System.out.println(" 3/ Exit ");
System.out.println(" Enter choice: ");
choice = read.nextInt();
switch (choice){
case 1 : System.out.println(" Enter $ amount : ");
Dollar = read.nextInt();
result = Dollar * 3.75;
System.out.println( Dollar + " $ =" + result + " SR ");
break;
case 2 : System.out.println(" Enter SR amount : ");
Riyal = read.nextInt();
result = Riyal / 3.75;
System.out.println( Riyal + " SR = " + result + " $ ");
break;
case 3 : System.out.println( " Bye ");
break;
default : System.out.println( " Wrong Choice ");
} }
C. Problem 3
Write a Java program read from user positive numbers and
calculate sum of these numbers and display largest number. Stop when sum of these numbers exceeded 100 or user enter negative number .
Scanner read = new Scanner(System.in);
int number = 0;
int sum = 0 ; int max = -1 ;
while ( sum <= 100 && number >= 0 ) { System.out.println("Enter");
number = read.nextInt();
if ( number >= 0) { // to ignore negtive
sum = sum + number;
if ( number > max ) max = number ; }
}
System.out.println(" sum = " + sum + " // max = " + max );