Thursday, July 9, 2015

Area of a Triangle in Java

In this article I would like to share with you a sample program that I wrote in Java programming language I called this program Area of a Triangle in Java that will compute the are of the triangle based on the based and height of the triangle given by the user.

Feel free to use my code in your programming projects at school or work.  If you have some questions please send me an email at jakerpomperada@gmail.com and jakerpomperada@yahoo.com.

People here in the Philippines can reach me at my mobile number 09173084360.

Thank you very much and Happy Programming.



Sample Program Output

Program Listing

// area_of_the_triangle.java
// Written By: Mr. Jake R. Pomperada, BSCS, MAED-IT
// July 9, 2015   Thursday
// Email Address:  jakerpomperada@gmail.com 
//                 jakerpomperada@yahoo.com

import java.util.Scanner;
 
public class area_of_the_triangle {
 
   public static void main(String[] args) {
      Scanner input = new Scanner(System.in);
        
      char ch;
      double base_triangle = 0;
      double height_triangle = 0;
      double solve_area = 0;
 do {
      System.out.println();
      System.out.print("\tAREA OF THE TRIANGLE SOLVER ");
      System.out.println("\n\n");
      System.out.print("What is the length of base of the triangle : "); 
      base_triangle = input.nextDouble();
 
      System.out.print("What is the length of height of triangle : "); 
      height_triangle = input.nextDouble();
 
      solve_area = (base_triangle * height_triangle) / 2;
      
      System.out.println();
      System.out.println("The Area of Triangle is : " + solve_area + ".");
      System.out.println();
      System.out.print("\nDo you want to continue (Type y or n) : ");
      ch = input.next().charAt(0);                        
     } while (ch == 'Y'|| ch == 'y');  
      System.out.println();
      System.out.print("\t THANK YOU FOR USING THIS PROGRAM");
      System.out.println("\n\n");
   }
 
}

Wednesday, July 8, 2015

Telephone Billing Management System in C

In this article I would like to share with you a program that I wrote a long time ago using C language I called this program Telephone Billing Management System in C. I am using Turbo C 2.0 in DOS in in writing this program it saves, computes the billing statements of the consumer of a telephone company it store the record in a flat file also know as text file.

Feel free to use my code in your programming projects at school or work.  If you have some questions please send me an email at jakerpomperada@gmail.com and jakerpomperada@yahoo.com.

People here in the Philippines can reach me at my mobile number 09173084360.

Thank you very much and Happy Programming.



Sample Program Output


Program Output

#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<windows.h>
#include<stdlib.h>
struct subscriber
{
char phonenumber[20];
char name[50];
float amount;
}s;
void addrecords();
void listrecords();
void modifyrecords();
void deleterecords();
void searchrecords();
void payment();
char get;
int main()
{
int phonenumber;
char choice;


while (1)
{
system("cls");

printf("\n     **********************************************");
printf("\n    ****  TELEPHONE BILLING MANAGEMENT SYSTEM  ****");
printf("\n    ***********************************************");
  printf("\n");
      printf("\n\t A : Adding new records.\n \t L : Listing of records");
printf("\n\t M : Modifying records.\n \t P : Payments");
printf("\n\t S : Searching records.");
printf("\n\t D : Deleting records.\n\t E : Exit Program\n");
  printf("\n");
  printf("\n\t PLEASE SELECT THE LETTERS ONLY " );
choice=getche();
choice=toupper(choice);
switch(choice)
{
case 'P':
payment();break;
case 'A' :
addrecords();break;
case 'L' :
listrecords();break;
case 'M':
modifyrecords();break;
case 'S' :
searchrecords();break;
case 'D':
deleterecords();break;
case 'E':
system("cls");
printf("\n\n\t\t\t\tTHANK YOU");
printf("\n\n\n\n\n:\n\tFOR USING OUR SERVICE");
Sleep(2000);
exit(0);
break;
default:
system("cls");
printf("Incorrect Input");
printf("\nAny key to continue");
getch();
}
}
}
void addrecords()
{
FILE *f;
char test;
f=fopen("data.dat","ab+");
if(f==0)
{   f=fopen("data.dat","wb+");
system("cls");
printf("please wait while we configure your computer");
printf("/npress any key to continue");
getch();
}
while(1)
{
system("cls");
printf("\n Enter phone number:");
scanf("%s",&s.phonenumber);
printf("\n Enter name:");
fflush(stdin);
scanf("%[^\n]",&s.name);
printf("\n Enter amount:");
scanf("%f",&s.amount);
fwrite(&s,sizeof(s),1,f);
fflush(stdin);
system("cls");
printf("1 record successfully added");
printf("\n Press esc key to exit, any other key to add other record:");
test=getche();
if(test==27)
break;
}
fclose(f);
}
void listrecords()
{
FILE *f;
int i;
if((f=fopen("data.dat","rb"))==NULL)
exit(0);
system("cls");
printf("Phone Number\t\tUser Name\t\t\tAmount\n");
for(i=0;i<79;i++)
printf("-");
while(fread(&s,sizeof(s),1,f)==1)
{
printf("\n%-10s\t\t%-20s\t\t $. %.2f /-",s.phonenumber,s.name,s.amount);
}
printf("\n");
for(i=0;i<79;i++)
printf("-");

fclose(f);
getch();
}
void deleterecords()
{
FILE *f,*t;
int i=1;
char phonenumber[20];
if((t=fopen("temp.dat","w+"))==NULL)
exit(0);
if((f=fopen("data.dat","rb"))==NULL)
exit(0);
system("cls");
printf("Enter the phone number to be deleted from the Database");
fflush(stdin);
scanf("%[^\n]",phonenumber);
while(fread(&s,sizeof(s),1,f)==1)
{
if(strcmp(s.phonenumber,phonenumber)==0)
{       i=0;
continue;

}
else
fwrite(&s,sizeof(s),1,t);
}
if(i==1)
{       system("cls");
printf("Phone number \"%s\" not found",phonenumber);
remove("data.dat");
rename("temp.dat","data.dat");
getch();
fclose(f);
fclose(t);
main();
}
remove("data.dat");
rename("temp.dat","file.dat");
system("cls");
printf("The Number %s Successfully Deleted!!!!",phonenumber);
fclose(f);
fclose(t);
getch();
}
void searchrecords()
{
FILE *f;
char phonenumber[20];
int flag=1;
f=fopen("data.dat","rb+");
if(f==0)
exit(0);
fflush(stdin);
system("cls");
printf("Enter Phone Number to search in our database");
scanf("%s", phonenumber);
while(fread(&s,sizeof(s),1,f)==1)
{
if(strcmp(s.phonenumber,phonenumber)==0)
{ system("cls");
printf(" Record Found ");
printf("\n\nPhonenumber: %s\nName: %s\nAmount: $ %0.2f\n",s.phonenumber,s.name,s.amount);
flag=0;
break;
}
else if(flag==1)
{ system("cls");
printf("Requested Phone Number Not found in our database");
}
}
getch();
fclose(f);
}
void modifyrecords()
{
FILE *f;
char phonenumber[20];
long int size=sizeof(s);
if((f=fopen("data.dat","rb+"))==NULL)
exit(0);
system("cls");
printf("Enter phone number of the subscriber to modify:");
scanf("%[^\n]",phonenumber);
fflush(stdin);
while(fread(&s,sizeof(s),1,f)==1)
{
if(strcmp(s.phonenumber,phonenumber)==0)
{
system("cls");
printf("\n Enter phone number:");
scanf("%s",&s.phonenumber);
printf("\n Enter name: ");
fflush(stdin);
scanf("%[^\n]",&s.name);
printf("\n Enter amount: ");
scanf("%f",&s.amount);
fseek(f,-size,SEEK_CUR);
fwrite(&s,sizeof(s),1,f);
break;
}
}
fclose(f);
}
void payment()
{
FILE *f;
char phonenumber[20];
long int size=sizeof(s);
float amt;
int i;
if((f=fopen("data.dat","rb+"))==NULL)
exit(0);
system("cls");
printf("Enter phone number of the subscriber for payment");
scanf("%[^\n]",phonenumber);
fflush(stdin);
while(fread(&s,sizeof(s),1,f)==1)
{
if(strcmp(s.phonenumber,phonenumber)==0)
{
system("cls");
printf("\n Phone No.: %s",s.phonenumber);
printf("\n Name: %s",s.name);
printf("\n Current amount: %f",s.amount);
printf("\n");
for(i=0;i<79;i++)
printf("-");
printf("\n\nEnter amount of payment :");
fflush(stdin);
scanf(" %f",&amt);
s.amount=(amt-s.amount);
fseek(f,-size,SEEK_CUR);
fwrite(&s,sizeof(s),1,f);
break;
}
}
system("cls");
printf("THANK YOU %s FOR YOUR TIMELY PAYMENTS",s.name);
getch();
fclose(f);
}


Payroll System in Java Using Text File

In this article I would like to showcase the work of my best friend and programming buddy Mr. Bernie Saligumba he is a programmer just like me that has a great passion in learning specially in writing codes. He called this program payroll system in Java using text file as the depository of records.

 If you have some questions please send me an email at jakerpomperada@gmail.com and jakerpomperada@yahoo.com.


People here in the Philippines can reach me at my mobile number 09173084360.


Thank you very much and Happy Programming.


Program Listing

//SALIGUMBA BERNIE//

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

class salary
{public double s(double rate,double hrs)
 {double sal=0;
  sal=(rate*hrs)/8;
  return sal;}
}
class time_in_hrs
{public int inhrs(int hrs)
 {int gen_in_minus=0;
  if(hrs<=805)
  {gen_in_minus=4;}
  else
  {gen_in_minus=12-(hrs/100);}
 return gen_in_minus;}
}
class time_out_hrs
{public int outhrs(int hrs)
 {int gen_out_minus=0;
  gen_out_minus=(hrs/100)-13;
  return gen_out_minus; }
}
class time_in_mins
{public double mins(int hrs)
 {int tmins=0;
  if(hrs<=805)
  {tmins=0;}
  else
  {tmins=hrs%100;}
  return tmins;}
}
class time_out_mins
{public double mouts(int hrs)
 {int tmins=0,m=0;
  tmins=hrs%100;
  if(tmins==0)
  {m=0;}
  else
  {m=60-tmins;}
  return m;}
}
class flxhrs
{public int flx_hrs(int hrs)
 {int gen_in_minus=0;
  gen_in_minus=hrs/100;
  return gen_in_minus;}
 }
class flx_mins_in
{public double flxmins(int hrs)
 {int tmins=0;
  if(hrs<805)
  {tmins=0;}
  else
  {tmins=hrs%100;}
  return tmins;}
 }
class flx_mins_out
{public double flxmouts(int hrs)
 {int tmins=0,m=0;
  tmins=hrs%100;
  if(tmins==0)
  {m=0;}
  else
  {m=60-tmins;}
  return m;}
 }

public class payroll1
{ public static void main(String[] args) throws IOException
    {String read;
     double ss=0, rate=0;
     int lop;
     String day[]={"Monday","Tuesday","Wednesday","Thursday","Friday"};
     String in="",out="",date="";

     double mon_in_hrs=0, mon_out_hrs=0, mon_in_mins=0, mon_out_mins=0,
     total_flxhrs1=0, total_flxhrs2=0, total_mins1=0, total_mins2=0,
             a_flxhrs=0,total_hrs1=0,total_hrs2=0,
             a_hrs=0,overallmins=0,a_mins=0,overall=0,tothrs=0;

     salary sals = new salary();
     time_in_hrs tih = new time_in_hrs();
     time_out_hrs toh = new time_out_hrs();
     time_in_mins tim = new time_in_mins();
     time_out_mins tom = new time_out_mins();
     flxhrs fhrs = new flxhrs();
     flx_mins_in fminsin= new  flx_mins_in();
     flx_mins_out fminsout = new  flx_mins_out();

     FileReader fr = new FileReader("employee.txt");
     BufferedReader br = new BufferedReader(fr);
     FileWriter fw = new FileWriter("DTR.txt",true);
     BufferedWriter bw = new BufferedWriter(fw);
     NumberFormat nf = new DecimalFormat("###,##0.00");

     System.out.print("\n CODE: ");
     Scanner cod=new Scanner(System.in);
     String code = cod.next();

     while((read=br.readLine())!=null)
     {String arr[]=read.split(",");
      if(code.equals(arr[1]))
      {System.out.print("\nEmployee name  : "+arr[0]);
       System.out.print("\nEmployee code  : "+arr[1]);
       System.out.print("\nEmployee level : "+arr[2]);

       if(arr[2].equals("1"))
       {rate=480.00;
        System.out.print("\n Employee  rate : "+nf.format(rate));
       }
       if(arr[2].equals("2"))
       {rate=580.00;
        System.out.print("\n Employee rate : "+nf.format(rate));
       }
       if(arr[2].equals("3"))
       {rate=700.00;
        System.out.print("\n Employee rate : "+nf.format(rate));
       }
       arr[1] = arr[1]+""; bw.write(arr[1]);
       System.out.println("");
       for(lop=0;lop<5;lop++)
       {System.out.print("\nDTR FOR "+day[lop]);
        System.out.print("\nLog_in: ");
        Scanner lin = new Scanner(System.in);
        in = lin.next();
        System.out.print("Log_out: ");
        Scanner lout = new Scanner(System.in);
        out = lout.next();

        String r_arr[]=in.split(":"); String r_arr1[]=out.split(":");
        int mon_in = Integer.parseInt(r_arr[0]+r_arr[1]);
        int mon_out = Integer.parseInt(r_arr1[0]+r_arr1[1]);

        if(mon_in>=800 && mon_out <=1200)
        {mon_in_hrs=fhrs.flx_hrs(mon_in);
         mon_out_hrs=fhrs.flx_hrs(mon_out);
         mon_in_mins=fminsin.flxmins(mon_in);
         mon_out_mins=fminsout.flxmouts(mon_out);

         total_flxhrs1=total_flxhrs1+mon_in_hrs;
         total_flxhrs2=total_flxhrs2+mon_out_hrs;
         a_flxhrs=total_hrs2-total_hrs1;
         total_mins1= total_mins1+mon_in_mins;
         total_mins2= total_mins2+mon_out_mins;
        }else if(mon_in>=1300 && mon_out <=1700)
        {mon_in_hrs=fhrs.flx_hrs(mon_in);
         mon_out_hrs=fhrs.flx_hrs(mon_out);
         mon_in_mins=fminsin.flxmins(mon_in);
         mon_out_mins=fminsout.flxmouts(mon_out);

         total_flxhrs1=total_flxhrs1+mon_in_hrs;
         total_flxhrs2=total_flxhrs2+mon_out_hrs;
         total_mins1= total_mins1+mon_in_mins;
         total_mins2= total_mins2+mon_out_mins;
         }else{
         mon_in_hrs=tih.inhrs(mon_in);
         mon_out_hrs=toh.outhrs(mon_out);
         mon_in_mins=tim.mins(mon_in);
         mon_out_mins=tom.mouts(mon_out);
         total_hrs1=total_hrs1+mon_in_hrs;
         total_hrs2=total_hrs2+mon_out_hrs;
         total_mins1= total_mins1+mon_in_mins;
         total_mins2= total_mins2+mon_out_mins;
         }
        in = in+";"; out = out+";";
        bw.write(in); bw.write(out);

       a_hrs = total_hrs1+total_hrs2;
       a_flxhrs = total_flxhrs2-total_flxhrs1;
       overallmins = (total_mins1-total_mins2)/60;

       a_mins = a_hrs- overallmins;

       overall =a_mins+a_flxhrs;
       tothrs = overall;

       ss = sals.s(rate, tothrs);

       }
       System.out.print("\nPayroll date  : ");
       Scanner dte = new Scanner(System.in);
       date = dte.next();

       System.out.print("\nEEmployee name  : "+arr[0]);
       System.out.print("\nEmployee  code  : "+arr[1]);
       System.out.print("\nEmployee  level : "+arr[2]);
       System.out.print("\nEmployee  rate  : "+nf.format(rate));
       System.out.print("\nEmployee  hours : "+nf.format(tothrs));
       System.out.print("\nEmployee salary : "+nf.format(ss));
       System.out.print("\nPayroll  date   : "+date);
       System.out.println("");
     }

  }
fr.close(); bw.close();
}

}

dtr.txt

A02-00058:00;17:00;7:59;17:00;8:23;17:00;8:00;17:00;8:00;17:00;

employee.txt

Juan_Santiago,A02-0001,2
Maricel_Trojillo,A02-0002,3
Vicky_Soberano,A02-0003,1
Garry_Lapinig,A0-0004,2
Franco_Castillo,A02-0005,3