mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.9 KiB
1.9 KiB
Scalar
Instructions
Create the following functions, which each receives two parameters:
sum
, which returns the sum between two values from 0 to 255diff
, which returns the difference between two values from -32768 to 32767pro
, which returns the product of the multiplication between two values from -128 to 127quo
, which returns the quotient of the division between two values (32bit and you have to figure out the second part)rem
, which returns the remainder of the division between two values (32bit and you have to figure out the second part)
You must complete the Expected functions parameters data type accordingly (Replace the Xs)!
Notions
Expected functions (Incomplete, you must precise the Data Types)
pub fn sum(a: X , b: X) -> X {
}
pub fn diff(a: X, b: X) -> X {
}
pub fn pro(a: X, b: X) -> X {
}
pub fn quo(a: X, b: X) -> X {
}
pub fn rem(a: X, b: X) -> X {
}
Usage :
Note that There is no output for this test for you to train to comment accordingly.
use scalar::*;
fn main() {
// sum
println!("sum : {}", sum(234, 2)); // 'sum : 236'
println!("sum : {}", sum(1, 255)); // 'ERROR: attempt to add with overflow'
// diff
println!("diff : {}", diff(234, 2)); // 'diff : 232'
println!("diff : {}", diff(-32768, 32766)); // 'ERROR: attempt to subtract with overflow'
// product
println!("pro : {}", pro(23, 2)); // 'pro : 46'
println!("pro : {}", pro(-128, 2)); // 'ERROR: attempt to multiply with overflow'
// quotient
println!("quo : {}", quo(22.0, 2.0));// 'quo : 11'
println!("quo : {}", quo(-128.23, 2.0));// 'quo : -64.115'
// remainder
println!("rem : {}", rem(22.0, 2.0));// 'rem : 0'
println!("rem : {}", rem(-128.23, 2.0));// 'rem : -0.22999573'
}