feat: ✨ help function
This commit is contained in:
parent
e8706182b4
commit
792dec4e92
2 changed files with 26 additions and 6 deletions
|
@ -3,6 +3,7 @@ use std::{
|
|||
env::args,
|
||||
fs::{File, OpenOptions},
|
||||
io::{self, BufRead, BufReader, Write},
|
||||
process::exit,
|
||||
};
|
||||
|
||||
use food::FoodSource;
|
||||
|
@ -24,10 +25,15 @@ impl Input {
|
|||
let mut read_file = false;
|
||||
for arg in args().collect::<Vec<String>>() {
|
||||
match arg.as_str() {
|
||||
"-r" | "--read-file" => read_file = true,
|
||||
"-r" | "--read_file" => read_file = true,
|
||||
"-h" | "--help" => {
|
||||
show_help();
|
||||
exit(0);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
|
||||
if read_file {
|
||||
Input::read_config_file_input()
|
||||
} else {
|
||||
|
@ -128,7 +134,7 @@ pub fn give_output(
|
|||
let mut write_file = false;
|
||||
for arg in args().collect::<Vec<String>>() {
|
||||
match arg.as_str() {
|
||||
"-w" | "--write-file" => write_file = true,
|
||||
"-w" | "--write_file" => write_file = true,
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
|
@ -144,7 +150,7 @@ pub fn give_output(
|
|||
standard_deviation(fitness_results, fitness_results_arithmetic_mean);
|
||||
write!(
|
||||
print_buffer,
|
||||
"[function_calculation_results]\narithmetic_mean = {:e}\nstandard_deviation = {:e}\n\n[fitness_calculation_results]\narithmetic_mean = {:e}\nstandard_deviation = {:e}",
|
||||
"[function_calculations_results]\narithmetic_mean = {:e}\nstandard_deviation = {:e}\n\n[fitness_calculations_results]\narithmetic_mean = {:e}\nstandard_deviation = {:e}",
|
||||
function_results_arithmetic_mean, function_results_standard_deviation, fitness_results_arithmetic_mean, fitness_results_standard_deviation
|
||||
)
|
||||
.unwrap();
|
||||
|
@ -205,3 +211,13 @@ fn standard_deviation(results: &[f64], arithmetic_mean: f64) -> f64 {
|
|||
}
|
||||
f64::sqrt(total_difference_square / (results.len() - 1) as f64)
|
||||
}
|
||||
|
||||
fn show_help() {
|
||||
println!("\n\n\n");
|
||||
println!(" Arguments | Details ");
|
||||
println!("----------------------------------------------------------------------");
|
||||
println!(" -r -> --read_file | Reads Config from abc_config.toml File");
|
||||
println!(" -w -> --write_file | Writes Results to abc_result.toml File");
|
||||
println!(" -h -> --help | Shows Help ");
|
||||
println!("\n\n\n");
|
||||
}
|
||||
|
|
|
@ -14,7 +14,11 @@ fn main() {
|
|||
);
|
||||
|
||||
for run_counter in 0..input.run {
|
||||
let mut best_food_source = food_sources.iter().max_by(|x,y|x.fitness_calculation.total_cmp(&y.fitness_calculation)).unwrap().clone();
|
||||
let mut best_food_source = food_sources
|
||||
.iter()
|
||||
.max_by(|x, y| x.fitness_calculation.total_cmp(&y.fitness_calculation))
|
||||
.unwrap()
|
||||
.clone();
|
||||
for food_source in &food_sources {
|
||||
if best_food_source.fitness_calculation < food_source.fitness_calculation {
|
||||
best_food_source = food_source.clone();
|
||||
|
@ -47,7 +51,7 @@ fn main() {
|
|||
most_tried_index = i;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for food_source in &food_sources {
|
||||
if best_food_source.fitness_calculation < food_source.fitness_calculation {
|
||||
best_food_source = food_source.clone();
|
||||
|
@ -68,7 +72,7 @@ fn main() {
|
|||
}
|
||||
function_results.push(best_food_source.function_calculation);
|
||||
fitness_results.push(best_food_source.fitness_calculation);
|
||||
|
||||
|
||||
give_output(
|
||||
&best_food_source,
|
||||
&function_results[..],
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue