summaryrefslogtreecommitdiff
path: root/exercises/conversions/using_as.rs
diff options
context:
space:
mode:
Diffstat (limited to 'exercises/conversions/using_as.rs')
-rw-r--r--exercises/conversions/using_as.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/exercises/conversions/using_as.rs b/exercises/conversions/using_as.rs
new file mode 100644
index 0000000..37eb69f
--- /dev/null
+++ b/exercises/conversions/using_as.rs
@@ -0,0 +1,16 @@
+// Type casting in Rust is done via the usage of the `as` operator.
+// Please note that the `as` operator is not only used when type casting.
+// It also helps with renaming imports.
+
+// The goal is to make sure that the division does not fail to compile
+fn average(values: &[f64]) -> f64 {
+ let total = values
+ .iter()
+ .fold(0.0, |a, b| a + b);
+ total / values.len()
+}
+
+fn main() {
+ let values = [3.5, 0.3, 13.0, 11.7];
+ println!("{}", average(&values));
+} \ No newline at end of file