The motor is 8-Fun BPM
I think you have a good idea but the program logic is not very logical.
You can't build a virtual bike from components that people input to the screen alone, the result won't match reality unless you have intime knowledge of what each component is caapable of and how it influences other components. For example, you calculated power = battery voltage * controller Amps. Power varies greatly with speed, wind direction and speed, local gradient etc. A mid position crank drive gives different torque and power values depending on the front/rear transmission ratio and bike speed, much more complicated calculation than a hub motor.
You should start by building a database by asking people to input their trip data, which bike, from, to, speed, wind direction, wind speed, biker's fitness, weight etc and their time. From that, you can work out the + and - points and how efficient each system is. You can look up the manufacturers' website for its component list.
Then when somebody asks for advice, you pull out of the database the nearest matches.