Tuesday, November 4, 2014

Rational Numbers Implementation in Java

CODE:

import java.io.*;
import java.util.*;

public class rat
{
/*
*members Numerator,Denominator
*/
int numerator;
int denominator;
/*
*Constructor
*/
public rat(int a,int b)
{
numerator=a;
denominator=b;
}
/*
*Additon method
*@param two rational numbers
*@return sum
*/

public void add(rat a,rat b)
{
if(a.denominator==b.denominator)
{
numerator=a.numerator+b.numerator;
denominator=a.denominator;
}
else
{
numerator=((a.numerator*b.denominator)+(b.numerator*a.denominator));
denominator=(a.denominator*b.denominator);
}
}
/*
*Subtraction method
*@param two rational numbers
*@return difference

*/

public void sub(rat a,rat b)
{
if(a.denominator==b.denominator)
{
numerator=a.numerator-b.numerator;
denominator=a.denominator;
}
else
{
numerator=((a.numerator*b.denominator)-(b.numerator*a.denominator));
denominator=(a.denominator*b.denominator);
}
}

/*
*Multiplication method
*@param two rational numbers
*@return multiple
*/
public void mul(rat a,rat b)
{
numerator=a.numerator*b.numerator;
denominator=a.denominator*b.denominator;
}

/*
*Division method
*@param two rational numbers
*@return quotient
*/
public void div(rat a,rat b)
{
int temp;
temp=b.denominator;
b.denominator=b.numerator;
b.numerator=temp;
numerator=a.numerator*b.numerator;
denominator=a.denominator*b.denominator;
}

/*
*Simplification method
*@param one rational numbers
*@return simplified sum
*/
public void simplify()
{
for(int i=1;i<=10;i++)
if((numerator%i==0)&&(denominator%i==0))
{
numerator/=i;
denominator/=i;
}
}
}

/*
*Main class
*/
class rational
{

/*
*Main function
*@param nothing
*@return nothing :P
*/
public static void main(String args[])
{
Scanner s=new Scanner(System.in);
System.out.println("enter the first rational number");
int n=s.nextInt();
int d=s.nextInt();
rat r1=new rat(n,d);
System.out.println("enter the second rational number");
int n1=s.nextInt();
int d1=s.nextInt();
rat r2=new rat(n1,d1);
rat r3=new rat(0,0);
int ch;
do
{
/*
*shows menu
*/ System.out.println("Enter the choice \n1.addition \n2.subtraction \n3.Multiplication \n4.division\n5.exit");
ch=s.nextInt();
switch(ch)
{
case 1:
r3.add(r1,r2);
r3.simplify();
System.out.println("additon result is"+r3.numerator+"/"+r3.denominator);
break;
case 2:
r3.sub(r1,r2);
r3.simplify();
System.out.println("subtraction result is"+r3.numerator+"/"+r3.denominator);
break;
case 3:
r3.mul(r1,r2);
r3.simplify();
System.out.println("multiplication result is"+r3.numerator+"/"+r3.denominator);
break;
case 4:
r3.div(r1,r2);
r3.simplify();
System.out.println("divison result is"+r3.numerator+"/"+r3.denominator);

break;
case 5:
System.exit(0);
break;
}
}while(ch!=6);
}

}

Input & Output:


Enter n and d of rational number 1: 2
4
Enter n and d of rational number 1: 2
4
Enter choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 1
Sum : 1
Enter choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 2
Diff: 0
Enter choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 3
Prod: ¼
Enter choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 4
Quo: 1
Enter choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 5


Banking System in Java

CODE:

import java.util.*;
class bankInternal {
int ac;
float bal, amt;
Scanner get = new Scanner(System.in);
void getdetails()
{
System.out.print("Enter Account Number:");
ac = get.nextInt();
System.out.println();
System.out.print("Enter Initial Balance:");
bal = get.nextFloat();
}
void deposit()
{
System.out.println();
System.out.print("Enter Amount:");
amt = get.nextInt();
bal = bal+amt;
System.out.println("Success! Amount deposited. Balance Available:"+bal);
}
void withdraw()
{
System.out.println();
System.out.print("Enter Amount:");
amt = get.nextInt();
if(amt>bal)
{
System.out.println("Insufficient Funds!!");
}
else
{
bal = bal-amt;
System.out.println("Amount Withdrawn! Available Balance:"+bal);
}
}
void balchk()
{
System.out.println("Balance available in Account Number "+ac+" is: "+bal);
}
}
public class bankArray {
public static void main(String args[])
{
boolean a=true;
int acno, flag, acno2,n;
Scanner in = new Scanner(System.in);
bankInternal obj[] = new bankInternal[100];
System.out.print("Enter number of accounts:");
n=s.nextInt();
for(int i=0;i<n;i++)
{
obj[i] = new bankInternal();
}
int ch;
do
{
flag=1; //Reset flag value.
System.out.println("1.AddAccount"+"\n"+"2.Deposit"+"\n"+"3.Withdraw"+"\n"+"4.Check Balance"+"\n"+”\n5.Transfer”+"6.Exit");
System.out.println();
System.out.print("Enter your Choice:");
ch = in.nextInt();
switch(ch)
{
case 1:for(int i=0;i<n;i++)
{
obj[i].getdetails();
}
break;
case 2: System.out.println("Enter Account Number:");
acno = in.nextInt();
for(int i=0;i<n;i++)
{
if(acno == obj[i].ac)
{
obj[i].deposit();
flag=0;
}
}
if(flag==1)
{
System.out.println("Account number not found!!"+"\n");
}
break;
case 3: System.out.println("Enter Account Number:");
acno = in.nextInt();
for(int i=0;i<n;i++)
{
if(acno == obj[i].ac)
{
obj[i].withdraw();
flag=0;
}
}
if(flag==1)
{
System.out.println("Account number not found!!"+"\n");
}
break;
case 4: System.out.println("Enter Account Number:");
acno = in.nextInt();
for(int i=0;i<n;i++)
{
if(acno == obj[i].ac)
{
obj[i].balchk();
flag=0;
}
}
if(flag==1)
{
System.out.println("Account number not found!!"+"\n");
}
break;
case 5: System.out.println("Enter Account Number from which money is to be transferred:");
acno = in.nextInt();
System.out.println("Enter Account Number to which money is to be transferred:");
acno2 = in.nextInt();
System.out.println("Enter amount:");
acmt = in.nextInt();
for(int i=0;i<n;i++)
{
if(acno == obj[i].ac)
{
obj[i].bal-=acmt;
System.out.print(“Success! Amount withdrawn. Balance available:”+obj[i].bal);
flag=0;
}
for(int i=0;i<n;i++)
{
if(acno2 == obj[i].ac)
{
obj[i].bal+=acmt;
System.out.print(“Success! Amount deposited. Balance available:”+obj[i].bal);
flag=0;
}
}
if(flag==1)
{
System.out.println("Account number not found!!"+"\n");
}
break;
case 6: System.exit(0);
default: System.out.println("Enter a valid Option!"+"\n\n");
}
}while(a);
}

}

Input & Output:


Enter number of accounts: 2
1.Add Account
2.Deposit
3.Withdraw
4.Check Balance
5.Transfer
6.Exit
Enter Your Choice: 1
Enter account number: 123
Enter initial balance: 1000
Enter account number: 124
Enter initial balance: 500


1.Add Account
2.Deposit
3.Withdraw
4.Check Balance
5.Transfer
6.Exit
Enter Your Choice: 2
Enter account number: 126
Account number not found.
Enter Your Choice: 2
Enter account number: 123
Enter amount: 500
Success! Amount deposited.. Balance available: 1500
Enter Your Choice: 3
Enter account number: 124
Enter amount: 250
Success! Amount withdrawn.. Balance available: 250
Enter Your Choice: 4
Enter account number: 123
Balance available in 123 is 1500.
Enter Your Choice: 5
Enter account number from which money is to be transferred: 123
Enter account number to which money is to be transferred: 124
Enter amount: 500
Success! Amount withdrawn. Balance available: 1000
Success! Amount deposited. Balance available: 750
Enter choice: 6

GPA COMPUTATION IN JAVA


import java.io.*;
import java.util.*;

class gpa1
{
void func()
{

int i,j,n;
float gpa;
String name;
int rno,credit;
char grade[]=new char[5];
int a[]=new int[5];
int sum=0,creditcount=0;
Scanner s=new Scanner(System.in);
System.out.println("Enter the student name:");
name=s.next();
System.out.println("Enter the rollnumber:");
rno=s.nextInt();
System.out.println("Enter number of subjects:");
n=s.nextInt();

for(i=0;i<n;i++)
{
System.out.print("Enter the grade acquired in subject"+i+":");
grade[i]=s.next().charAt(0);
System.out.println("Enter the credits for subject"+i+":");
credit=s.nextInt();
creditcount+=credit;
if(grade[i]=='s')
sum+=10*credit;
else if(grade[i]=='a')
sum+=9*credit;
else if(grade[i]=='b')
sum+=8*credit;
else if(grade[i]=='c')
sum+=7*credit;
else if(grade[i]=='d')
sum+=6*credit;
else if(grade[i]=='e')
sum+=5*credit;
else
sum+=0;
}
gpa=(float)sum/creditcount;
System.out.println("\n\n\nName:"+name+”\n”);
System.out.println("RollNumber:"+rno+”\n”);
System.out.println("Your gpa is"+gpa);
}
}

class gpa
{
public static void main(String[] arg)
{

gpa1 g=new gpa1();
g.func();

}
}

Input & Output:


Enter student name: VaithyuanathanJohn
Enter roll number: 1
Enter number of subjects: 5
Enter the grade acquired in subject 1:S
Enter the credits for subject:4
Enter the grade acquired in subject 2:A
Enter the credits for subject:4
Enter the grade acquired in subject 3:B
Enter the credits for subject:3
Enter the grade acquired in subject 4:S
Enter the credits for subject:3
Enter the grade acquired in subject 5:A
Enter the credits for subject:3

Name:
RollNumber: 1
Your gpa is 9.235

Symbol Table creation in C

Source file:

#include<stdio.h>
#include<string.h>
void print();
FILE * f,*fp;
struct symbol
{
int address;
char label[15],opcode[15],operand[15];
}s[20];
int count=0;
int dupcheck(int m)
{
int i;
for(i=0;i<=m-1;i++)
{
if(strcmp(s[i].label,s[m].label))
return 1;
else return 0;
}
}
void delete()
{
int i=0;
char lab[15],ch[10];
printf("Enter the value to delete :");
scanf("%s",lab);
while(strcmp(s[i].label,lab))
{
i++;
}
strcpy(s[i].label,"");
print();
}
void search()
{
char sym[15];
printf("\n Enter the sym to Search :");
scanf("%s",sym);
int i,h;
for(i=0;i<count;i++)
{
if(strcmp(s[i].label,sym)==0)
h=1;
}
if(h==1)
{
printf("\n Element Present.");
}
else printf("\n False.");
}
void insert()
{
int i;
printf("\nEnter the value to insert :");
char lab[15];
scanf("%s",lab);
strcpy(s[count].label,lab);
count++;
for(i=0;i<count;i++)
printf("%s",s[i].label);
print();
}
void mod()
{
int i;
char lab[15],lab1[15];
printf("\n Enter the value to modify");
scanf("%s",lab);
printf("\n Enter the new value :");
scanf("%s",lab1);
for(i=0;i<count;i++)
{
if(strcmp(s[i].label,lab)==0)
strcpy(s[i].label,lab1);
}
print();
}
void print()
{
FILE *fp1;
fp1=fopen("symboltable.txt","w");
int i;
for(i=0;i<=count;i++)
fprintf(fp,"%s\n",s[i].label);
fclose(fp1);
}
main()
{
FILE *f;
f=fopen("src.txt","r");
int ch,i=0;
fp=fopen("symboltable.txt","w");
char lab[15];
while((fscanf(f,"%s %s %s",s[i].label,s[i].opcode,s[i].operand))!=EOF)
if(strcmp(s[i].label,"NULL"))
{
if((strcmp(s[i].opcode,"WORD"))||(strcmp(s[i].opcode,"RESW")))
{
if(dupcheck(i))
{
fprintf(fp,"%s\n",s[i].label);
count++;
}
else
printf("\n %s already exists",s[i].label);
}
i++;
}
fclose(fp);
do
{
printf("\n Enter Choice:\n1.insert\n2.delete\n3.display\n4.search\n5.modify\n");
scanf("%d",&ch);
switch(ch)
{
case 1: insert();
break;
case 2: delete();
break;
case 3: fp=fopen("symboltable.txt","r");
while((fscanf(fp,"%s",lab))!=EOF)
printf("\n %s",lab);
fclose(fp);
break;
case 4: search();
break;
case 5: mod();
break;
}
}while(ch<6);
}

Input file:

src.txt file


NULL LDA ONE
NULL ADD TWO
NULL STA THREE
FORTY WORD 5
NINE WORD 6
TWELVE RESW 12
FOUR WORD 4
FORTY WORD 6

Output file:

symboltable.txt

FORTY
NINE
TWELVE
FOUR