/* More about variables! Hooray.
 * Reviewing the basic variable types.
 * First type: Integers.  */
int dansShoeSize = 11; 
int dansWeight = 100;

/* Second: Floating-point numbers.
 * These things store non-integers,
 * in case you've all forgotten.  */
double alexsHeight = 77.1;
double alexsTemperature = 98.6;

/* Finally: Characters  */
char satyamsBloodType = 'O';
char satyamsShirtSize = 'L';

/* Intro to Functions 
 * In calculus:   f(x) = 2x + 2  
 * In C:          int f(int x) {
 *                   return 2*x + 2;
 *                }
 */
int f(int x) {
   return 2*x + 2;
} 
/* The structure of functions.
 * All functions need a function signature.
 * This consists of the name of the function,
 * what values the function needs to take in
 * to perform its operation, and the type that
 * it will return when it is complete.
 *
 * The syntax for this is as follows:
 *     <return type> <function name> ( <parameters> )
 *
 * Parameter is just another way of saying an
 * input variable to the function.  */
double convertCelsiusToFahrenheit(double temperature) {
   double tempValue = 1.8*temperature;
   tempValue = tempValue + 32.0;
   return tempValue;  
}

double calculateArea (double length, double width) {
   return width*length;  
}

int main() {
   double currentTempInCelsius = 24.3;
   double currentTempInFahrenheit = convertCelsiusToFahrenheit(currentTempInCelsius);
}

/* If a function doesn't need any information to perform
 * its operation, then the parentheses remain empty.
 * And if the variable doesn't need to return anything,
 * the return type that is used is "void".  */
