Sunday, July 17, 2016

Payroll Program in Rust

In this article I would like to share with you a simple program that I wrote using Rust programming language a Payroll Program. This payroll program will ask the the numbers of day work of an employee and then the daily rate of salary of the employee. The code is very simple and easy to understand.

Add me at Facebook my address  is jakerpomperada@gmail.com and jakerpomperada@yahoo.com.

My mobile number here in the Philippines is 09173084360.





Sample Program Output


Program Listing

payroll.rs

// Payroll Program in Rust Programming language.
// Written By: Mr. Jake R. Pomperada, MAED-IT
// July 17, 2016

use std::io::{self, Write};
use std::fmt::Display;
use std::process;
 
fn main() {
       println!("\n");
       println!("\tPayroll Program in Rust");
       println!("\n");
 
    let days_worked: f32 = grab_input("How many days worked?  ")
        .unwrap_or_else(|e| exit_err(&e, e.raw_os_error().unwrap_or(-1)))
        .trim()
        .parse()
        .unwrap_or_else(|e| exit_err(&e, 2));

    let rate_per_day: f32 = grab_input("Rate Per Day?  ")
        .unwrap_or_else(|e| exit_err(&e, e.raw_os_error().unwrap_or(-1)))
        .trim()
        .parse()
        .unwrap_or_else(|e| exit_err(&e, 2));
 

    let  salary = days_worked * rate_per_day;
     
    println!("\n"); 
    println!("The salary of the employee is $ {:.2}. ",salary);
    println!("\n"); 
    println!("End of Program");
}
 
fn grab_input(msg: &str) -> io::Result<String> {
    let mut buf = String::new();
    print!("{}: ", msg);
    try!(io::stdout().flush());
 
    try!(io::stdin().read_line(&mut buf));
    Ok(buf)
}
 
fn exit_err<T: Display>(msg: T, code: i32) -> ! {
    let _ = writeln!(&mut io::stderr(), "Error: {}", msg);
    process::exit(code)
}

No comments:

Post a Comment