The Simply Fortran package includes a configured Fortran compiler, an integrated development environment, including an integrated debugger, and a collection of other development necessities. Designed from the beginning for the Fortran language, Simply Fortran delivers a reliable Fortran compiler with all the necessary productivity tools that professionals expect. Personally, I prefer the write(* ,* ) notation over print, but that's probably just personal style.Simply Fortran is a complete Fortran solution for Apple macOS. I'd also use some more line breaks and not put all variables on a single line. Thus, the strong advice to always use the implicit none statement. For any little more complex application it will become difficult to keep track of your variables, and you might end up with subtle changes in the behavior. I'd claim the program to be erroneous because of that. The most important omission in your program is an implicit none statement. Even when it's absolutely trivial & blatantly obvious what is being done on the line below, it benefits you (as practice for the more complex computations) and potential future readers (so that they know what is being done & why). This is general and not specific to Fortran, but I'm a big fan & proponent of comments. Fortran 2003 standards specify that absent values for the precision & radix are assumed to be zero. You are also not restricted to using integers associated with any particular precision (single or double) here, you can choose to use selected_real_kind(10,40), for instance. The first number in selected_real_kind is the decimal precision and the second number is the exponent range (-307 to +307). Where wp is typically short for "working precision" (some people choose to append an underscore in case they want to use wp as a variable). Integer, parameter :: wp = selected_real_kind(15,307) This is the default way to specify the precision without useing a module.
![reviews of simply fortran reviews of simply fortran](https://static.macupdate.com/screenshots/64190/m/simply-fortran-screenshot.png)
Kind specifier (part of the 1990 standard) Within it are C_double and C_long_double types that will match the equivalent C types. This module is for improved compatibility with C programs/functions. ISO_C_BINDING (need Fortran 2003 or later compiler) It is negative if a target platform does not support the particular kind. Kind type parameters to specify a REAL type with a storage size of 32, 64, and 128 bits. Within this big module is the real32, real64, and real132 types ISO_FORTRAN_ENV (needs Fortran 2008 or later compiler) Single precision is nice, but you can do better and there's a few ways how: The f12.6 means it's a floating-point type number with 12 total digits and 6 after the decimal, a3 means it is a character string of length 3 (you can make this one simply a and let the compiler figure it out). Since you're using single-precision, you probably want to output the first 6-7 decimal digits, print '(f12.6,a3,f12.6,a3,f12.6)', a," + ", b, " = ", AddTwoNums(a,b) You might also want to specify formats for the output. The pure specifier gives details to the compiler that can optimize/vectorize it in some cases (probably not much it can do here, but for some more complex cases it might be useful). Where the ellipses (.) mean I'm skipping over the other details.
![reviews of simply fortran reviews of simply fortran](https://img.informer.com/p6/codewarrior-v8-main-screen.png)
A more "Fortrany" way to do this might be to put calculations in their own functions, program Calc