You are reading the article Functions In C Programming With Examples: Recursive & Inline updated in December 2023 on the website Cattuongwedding.com. We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested January 2024 Functions In C Programming With Examples: Recursive & Inline
What is a Function in C?Function in C programming is a reusable block of code that makes a program easier to understand, test and can be easily modified without changing the calling program. Functions divide the code and modularize the program for better and effective results. In short, a larger program is divided into various subprograms which are called as functions
In this tutorial, you will learn-
Library Vs. User-defined FunctionsEvery ‘C’ program has at least one function which is the main function, but a program can have any number of functions. The main () function in C is a starting point of a program.
In ‘C’ programming, functions are divided into two types:
Library functions
User-defined functions
The difference between the library and user-defined functions in C is that we do not need to write a code for a library function. It is already present inside the header file which we always include at the beginning of a program. You just have to type the name of a function and use it along with the proper syntax. Printf, scanf are the examples of a library function.
Whereas, a user-defined function is a type of function in which we have to write a body of a function and call the function whenever we require the function to perform some operation in our program.
C programming functions are divided into three activities such as,
Function declaration
Function definition
Function call
Function DeclarationFunction declaration means writing a name of a program. It is a compulsory part for using functions in code. In a function declaration, we just specify the name of a function that we are going to use in our program like a variable declaration. We cannot use a function unless it is declared in a program. A function declaration is also called “Function prototype.”
The function declarations (called prototype) are usually done above the main () function and take the general form:
return_data_type function_name (data_type arguments);
The return_data_type: is the data type of the value function returned back to the calling statement.
The function_name: is followed by parentheses
Arguments names with their data type declarations optionally are placed inside the parentheses.
We consider the following program that shows how to declare a cube function to calculate the cube value of an integer variable
/*Function declaration*/ int add(int a,b); /*End of Function declaration*/ int main() {
Keep in mind that a function does not necessarily return a value. In this case, the keyword void is used.
For example, the output_message function declaration indicates that the function does not return a value: void output_message();
Function DefinitionFunction definition means just writing the body of a function. A body of a function consists of statements which are going to perform a specific task. A function body consists of a single or a block of statements. It is also a mandatory part of a function.
int add(int a,int b) { int c; c=a+b; return c; } Function callA function call means calling a function whenever it is required in a program. Whenever we call a function, it performs an operation for which it was designed. A function call is an optional part of a program.
result = add(4,5);Here, is th complete code:
int add(int a, int b); int main() { int a=10,b=20; int c=add(10,20); printf(“Addition:%dn”,c); getch(); } int add(int a,int b) { int c; c=a+b; return c; }
Output:
Addition:30 Function ArgumentsA function’s arguments are used to receive the necessary values by the function call. They are matched by position; the first argument is passed to the first parameter, the second to the second parameter and so on.
By default, the arguments are passed by value in which a copy of data is given to the called function. The actually passed variable will not change.
We consider the following program which demonstrates parameters passed by value:
int add (int x, int y); int main() { int a, b, result; a = 5; b = 10; result = add(a, b); printf("%d + %d = %dn", a, b, result); return 0;} int add (int x, int y) { x += y; return(x);}The program output is:
5 + 10 = 15Keep in mind that the values of a and b were passed to add function were not changed because only its value was passed into the parameter x.
Variable ScopeVariable scope means the visibility of variables within a code of the program.
In C, variables which are declared inside a function are local to that block of code and cannot be referred to outside the function. However, variables which are declared outside all functions are global and accessible from the entire program. Constants declared with a #define at the top of a program are accessible from the entire program. We consider the following program which prints the value of the global variable from both main and user defined function :
int global = 1348; void test(); int main() { printf(“from the main function : global =%d n”, global); test () ; return 0;}
void test (){ printf(“from user defined function : global =%d n”, global);}
Result:
from the main function : global =1348 from user defined function : global =1348We discuss the program details:
We declare an integer global variable with 1348 as initial value.
We declare and define a test() function which neither takes arguments nor returns a value. This function only prints the global variable value to demonstrate that the global variables can be accessed anywhere in the program.
We print the global variable within the main function.
We call the test function in order to print the global variable value.
In C, when arguments are passed to function parameters, the parameters act as local variables which will be destroyed when exiting the function.
When you use global variables, use them with caution because can lead to errors and they can change anywhere in a program. They should be initialized before using.
Static VariablesThe static variables have a local scope. However, they are not destroyed when exiting the function. Therefore, a static variable retains its value forever and can be accessed when the function is re-entered. A static variable is initialized when declared and needs the prefix static.
The following program uses a static variable:
void say_hi(); int main() { int i; for (i = 0; i < 5; i++) { say_hi();} return 0;} void say_hi() { static int calls_number = 1; printf(“Hi number %dn”, calls_number); calls_number ++; }
The program displays :
Hi number 1 Hi number 2 Hi number 3 Hi number 4 Hi number 5 Recursive FunctionsConsider the factorial of a number which is calculated as follow 6! =6* 5 * 4 * 3 * 2 * 1.
This calculation is done as repeatedly calculating fact * (fact -1) until fact equals 1.
A recursive function is a function which calls itself and includes an exit condition in order to finish the recursive calls. In the case of the factorial number calculation, the exit condition is fact equals to 1. Recursion works by “stacking” calls until the exiting condition is true.
For example:
int factorial(int number); int main() { int x = 6; printf(“The factorial of %d is %dn”, x, factorial(x)); return 0;} int factorial(int number) { if (number == 1) return (1); /* exiting condition */ else return (number * factorial(number – 1)); }
The program displays:
The factorial of 6 is 720Here, we discuss program details:
We declare our recursive factorial function which takes an integer parameter and returns the factorial of this parameter. This function will call itself and decrease the number until the exiting, or the base condition is reached. When the condition is true, the previously generated values will be multiplied by each other, and the final factorial value is returned.
We declare and initialize an integer variable with value”6″ and then print its factorial value by calling our factorial function.
Consider the following chart to more understand the recursive mechanism which consists of calling the function its self until the base case or stopping condition is reached, and after that, we collect the previous values:
Inline FunctionsFunction in C programming is used to store the most frequently used instructions. It is used for modularizing the program.
Whenever a function is called, the instruction pointer jumps to the function definition. After executing a function, instruction pointer falls back to the statement from where it jumped to the function definition.
In an inline function, a function call is directly replaced by an actual program code. It does not jump to any block because all the operations are performed inside the inline function.
Inline functions are mostly used for small computations. They are not suitable when large computing is involved.
An inline function is similar to the normal function except that keyword inline is place before the function name. Inline functions are created with the following syntax:
inline function_name () { }Let us write a program to implement an inline function.
inline int add(int a, int b) { return(a+b); } int main() { int c=add(10,20); printf("Addition:%dn",c); getch(); }Output:
Addition: 30Above program demonstrates the use of an inline function for addition of two numbers. As we can see, we have returned the addition on two numbers within the inline function only without writing any extra lines. During function call we have just passed values on which we have to perform addition.
Summary
A function is a mini-program or a subprogram.
Functions are used to modularize the program.
Library and user-defined are two types of functions.
A function consists of a declaration, function body, and a function call part.
Function declaration and body are mandatory.
A function call can be optional in a program.
C program has at least one function; it is the main function ().
Each function has a name, data type of return value or a void, parameters.
Each function must be defined and declared in your C program.
Keep in mind that ordinary variables in a C function are destroyed as soon as we exit the function call.
The arguments passed to a function will not be changed because they passed by value none by address.
The variable scope is referred to as the visibility of variables within a program
There are global and local variables in C programming
You're reading Functions In C Programming With Examples: Recursive & Inline
Working Of Md5() Functions In Php With Examples
Introduction to PHP md5()
The MD5() function of the PHP Programming Language will produce the hash of the string which is like encoding process. MD5() function works only on PHP 4, 5, 7 versions but for the other PHP version the hash encoder “md5()” may work or may not work mostly. Most of the times md5() function is not recommended to safely secure the passwords due to the function’s fast nature of encoding with the help of its inbuilt hashing algorithm. It accepts only two parameters. In those two only one is mandatory at all times.
Start Your Free Software Development Course
Syntax:
String md5 ($string, $getRawOutput)Explanation of Parameters in brief:
MD5() function of the PHP Programming Language takes two parameters at max. They are: $string parameter and $getRawOutput parameter.
$string: $string parameter will help us to expect the string to be hashed.
$getRawOutput: $getRawOutput parameter will help us to expect a Boolean value. For the TRUE result the function is going to return the HASH in raw binary format which is of the length 16.
Return type: The md5() function of PHP will return the hashed string ( it can either be in lowercase hex format character sequence which is of length 32 ( 32 character hexadecimal number )or for raw binary form which is of the length 16).
How do MD5() Functions work in PHP?MD5() function of the PHP Programming Language works for PHP 4, PHP 5 and PHP 7 versions up to now. Apart from these versions md5() function may not work mostly. It is a built-in function and by using the md5() function we initiate the HASHING algorithm inside of the PHP Programming Language. With the backend Hashing Algorithm, conversion of hashing of the specific numerical value/ string value/ any other will be done as needed. It is very helpful in the encoding process. MD5() function value will always be in 32 bit binary format unless second parameter is used inside of the md5() function. At that time md5() value will be 16 bit binary format.
Examples to Implement PHP md5()Below are the examples:
Example #1Code:
<?php $str1 = 'apples'; print "This is the value of HASH of apples :: "; $a1 = md5($str1); if (md5($str1) === '1f3870be274f6c49b3e31a0c6728957f') { echo "If the value of apples is :: 1f3870be274f6c49b3e31a0c6728957f then it will print :: "; } else{ }Output:
Example #2Code:
<?php $input_string1 = 'Pavan Kumar Sake'; echo '16 bit binary format :: '; $i1 = md5($input_string1,TRUE); echo $i1;Output:
Example #3Code:
<?php $k = 10; for($i=0;$i<=$k;$i++){ print "Hash code of $i :: "; print md5($i); } Example #4Code:
<?php $user1 = "Pavan Kumar Sake"; $pass1 = "pavansake123"; $user1_encode = md5($user1); $pass1_encode = md5($pass1); if (md5($user1)== "4c13476f5dd387106a2a629bf1a9a4a7"){ if(md5($pass1)== "20b424c60b8495fae92d450cd78eb56d"){ echo "Password is also correct so login will be successful"; } else{ echo "Incorrect Password is entered"; } } else{ echo "Incorrect Username is entered"; }Output:
ConclusionI hope you understood what is the definition of PHP md5() function with the syntax and its explanation, Info regarding the parameters in brief detail, Working of md5() function in PHP along with the various examples to understand the concept well.
Recommended ArticlesThis is a guide to PHP MD5(). Here we discuss the introduction, syntax, and working of MD5() in PHP along with different examples and code implementation. You can also go through our other related articles to learn more –
Learn Php Require_Once With Programming Examples
Introduction to PHP require_once
The require_once function of the PHP Programming Language helps in including a PHP file in another PHP file when that specific PHP file is included more than one time and we can consider it as an alternative for include function. If a PHP script file already included inside our required PHP file then that including will be ignored and again the new PHP file will be called just by ignoring the further inclusions. Suppose if chúng tôi is one of the PHP script file calling chúng tôi with require_once() function and it don’t fine chúng tôi chúng tôi stops executing and will cause a FATAL ERROR.
Start Your Free Software Development Course
Syntax:
require_once(' PHP file with the path '); How require_once works in PHP?The require_once function of the PHP language works only once even though if we include a specific PHP file or files inside of the main PHP script file. We can include a PHP script file/files as many times as we need but only once the specific PHP will be included and executed for the display of the output of the program. This require_once concept works only for PHP 4, PHP 5, PHP 7 versions and may be for PHP 7+ versions it will work. This first check whether the specific .PHP file is already included or not. If already included then the require_once function will leave including same .PHP file. If not, the specific .PHP file will be included. It is a very useful statement of the PHP Programming Language.
ExamplesBelow are the examples to implement the same:
Example #1Syntax of the Main PHP File:
</head> Engineers, Physics Nerds, Tech Enthusiasts to provide the better content.
Syntax of chúng tôi file:
<?php echo “This is by implementing the require_once statement of PHP..”; echo “Now you are in the chúng tôi files content!! because of require_once but calling twice don’t works with this”;
Syntax of chúng tôi file:
<?php echo “This is by implementing the require_once statement of PHP..”; echo “Now you are in the chúng tôi files content because of require_once but calling twice don’t works with this!!”;
<?php echo “This is by implementing the require_once statement of PHP..”; echo “Now you are in the chúng tôi files content because of require_once but calling twice don’t works with this!!”;
Output:
Example #2This is also another example of implementing this function. Here in the main original file (index.php) file, require_once() function is used 7 times to include chúng tôi In the chúng tôi file, only the chúng tôi file is included using the method few times. Then in the chúng tôi file, only chúng tôi file a few times and it is to include the content of the chúng tôi Here we didn’t mention any text in the chúng tôi files but at last in the chúng tôi file only sum code is implemented and that code will be executed and displayed along with the main original PHP file’s content/code. Footer code will be displayed inside of the horizontal lines. You can check the output for a better understanding.
Syntax of the main chúng tôi file:
<hrgt; Engineers, Physics Nerds, Tech Enthusiasts to provide better content.
Syntax of the chúng tôi file:
<?php require_once 'header1.php'; require_once 'header1.php'; require_once 'header1.php'; <?php require_once 'footer1.php'; require_once 'footer1.php'; require_once 'footer1.php'; require_once 'footer1.php';Syntax of the chúng tôi file:
<?php $i=10; $j=90; $k = $i + $j; echo "This content is included from the chúng tôi file - Code from chúng tôi file"; echo "This the sum of $i and $j values :: "; echo $k;
Output:
Advantages ConclusionI hope you learned what is the definition of the require_once function of the PHP Programming Language along with its syntax, How the PHP require_once function works along with some examples of which illustrate function, Advantages, etc. to understand this concept better and so easily.
Recommended ArticlesThis is a guide to PHP require_once. Here we discuss an introduction to PHP require_once, syntax, how does it work with examples to implement. You can also go through our other related articles to learn more –
C# Stack With Push & Pop Examples
What is Stack in C#?
The stack is a special case collection which represents a last in first out (LIFO) concept. To first understand LIFO, let’s take an example. Imagine a stack of books with each book kept on top of each other.
The concept of last in first out in the case of books means that only the top most book can be removed from the stack of books. It is not possible to remove a book from between, because then that would disturb the setting of the stack.
Hence in C#, the stack also works in the same way. Elements are added to the stack, one on the top of each other. The process of adding an element to the stack is called a push operation. To remove an element from a stack, you can also remove the top most element of the stack. This operation is known as pop.
Let’s look at the operations available for the Stack collection in more detail.
Declaration of the stackA stack is created with the help of the Stack Data type. The keyword “new” is used to create an object of a Stack. The object is then assigned to the variable st.
Stack st = new Stack() Adding elements to the stackThe push method is used to add an element onto the stack. The general syntax of the statement is given below.
Stack.push(element) Removing elements from the stackThe pop method is used to remove an element from the stack. The pop operation will return the topmost element of the stack. The general syntax of the statement is given below
Stack.pop() Count
This property is used to get the number of items in the Stack. Below is the general syntax of this statement.
Stack.Count ContainsThis method is used to see if an element is present in the Stack. Below is the general syntax of this statement. The statement will return true if the element exists, else it will return the value false.
Stack.Contains(element)Now let’s see this working at a code level. All of the below-mentioned code will be written to our Console application. The code will be written to our chúng tôi file.
In the below program, we will write the code to see how we can use the above-mentioned methods.
Example 1: Stack.Push() MethodIn this example, we will see
How a stack gets created.
How to display the elements of the stack, and use the Count and Contain methods.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Stack st = new Stack(); st.Push(1); st.Push(2); st.Push(3); foreach (Object obj in st) { Console.WriteLine(obj); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("The number of elements in the stack " +st.Count); Console.WriteLine("Does the stack contain the elements 3 "+st.Contains(3)); Console.ReadKey(); } } }Code Explanation:-
The first step is used to declare the Stack. Here we are declaring “st” as a variable to hold the elements of our stack.
Next, we add 3 elements to our stack. Each element is added via the Push method.
Now since the stack elements cannot be accessed via the index position like the array list, we need to use a different approach to display the elements of the stack. The Object (obj) is a temporary variable, which is declared for holding each element of the stack. We then use the foreach statement to go through each element of the stack. For each stack element, the value is assigned to the obj variable. We then use the Console.Writeline command to display the value to the console.
We are using the Count property (st.count) to get the number of items in the stack. This property will return a number. We then display this value to the console.
We then use the Contains method to see if the value of 3 is present in our stack. This will return either a true or false value. We then display this return value to the console.
If the above code is entered properly and the program is run the following output will be displayed.
Output:
From the output, we can see that the elements of the stack are displayed. Also, the value of True is displayed to say that the value of 3 is defined on the stack.
Note: You have noticed that the last element pushed onto the stack is displayed first. This is the topmost element of the stack. The count of stack elements is also shown in the output.
Example 2: Stack.Pop() MethodNow let’s look at the “remove” functionality. We will see the code required to remove the topmost element from the stack.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Stack st = new Stack(); st.Push(1); st.Push(2); st.Push(3); st.Pop(); foreach (Object obj in st) { Console.WriteLine(obj); } Console.ReadKey(); } } }Code Explanation:-
Here we just issue the pop method which is used to remove an element from the stack.
If the above code is entered properly and the program is run, the following output will be displayed.
Output:
We can see that the element 3 was removed from the stack.
Summary
A Stack is based on the last in first out concept. The operation of adding an element to the stack is called the push operation. The operation of removing an element to the stack is called the pop operation.
What Is C Programming Language? Basics, Introduction, History
Let’s learn about C language in this basics of C language tutorial:
What is C Programming Langauge?
C is a general-purpose programming language that is extremely popular, simple, and flexible to use. It is a structured programming language that is machine-independent and extensively used to write various applications, Operating Systems like Windows, and many other complex programs like Oracle database, Git, Python interpreter, and more.
It is said that ‘C’ is a god’s programming language. One can say, C is a base for the programming. If you know ‘C,’ you can easily grasp the knowledge of the other programming languages that uses the concept of ‘C’
It is essential to have a background in computer memory mechanisms because it is an important aspect when dealing with the C programming language.
IEEE-the best 10 top programming language in 2023
In this
History of C languageIn this C programming tutorial , you will learn basics of C language like:
The base or father of programming languages is ‘ALGOL.’ It was first introduced in 1960. ‘ALGOL’ was used on a large basis in European countries. ‘ALGOL’ introduced the concept of structured programming to the developer community. In 1967, a new computer programming language was announced called as ‘BCPL’ which stands for Basic Combined Programming Language. BCPL was designed and developed by Martin Richards, especially for writing system software. This was the era of programming languages. Just after three years, in 1970 a new programming language called ‘B’ was introduced by Ken Thompson that contained multiple features of ‘BCPL.’ This programming language was created using UNIX operating system at AT&T and Bell Laboratories. Both the ‘BCPL’ and ‘B’ were system programming languages.
In 1972, a great computer scientist Dennis Ritchie created a new programming language called ‘C’ at the Bell Laboratories. It was created from ‘ALGOL’, ‘BCPL’ and ‘B’ programming languages. ‘C’ programming language contains all the features of these languages and many more additional concepts that make it unique from other languages.
‘C’ is a powerful programming language which is strongly associated with the UNIX operating system. Even most of the UNIX operating system is coded in ‘C’. Initially ‘C’ programming was limited to the UNIX operating system, but as it started spreading around the world, it became commercial, and many compilers were released for cross-platform systems. Today ‘C’ runs under a variety of operating systems and hardware platforms. As it started evolving many different versions of the language were released. At times it became difficult for the developers to keep up with the latest version as the systems were running under the older versions. To assure that ‘C’ language will remain standard, American National Standards Institute (ANSI) defined a commercial standard for ‘C’ language in 1989. Later, it was approved by the International Standards Organization (ISO) in 1990. ‘C’ programming language is also called as ‘ANSI C’.
History of C
C Basic Commands
Following are the basic commands in C programming language:
C Basic commands Explanation
This command includes standard input output header file(stdio.h) from the C library before compiling a C program
int main() It is the main function from where C program execution begins.
{ Indicates the beginning of the main function.
Whatever written inside this command “/* */” inside a C program, it will not be considered for compilation and execution.
printf(“Hello_World! “); This command prints the output on the screen.
getch(); This command is used for any character input from keyboard.
return 0;
This command is used to terminate a C program (main function) and it returns 0.
}
It is used to indicate the end of the main function.
Where is C used? Key Applications
‘C’ language is widely used in embedded systems.
It is used for developing system applications.
It is widely used for developing desktop applications.
Most of the applications by Adobe are developed using ‘C’ programming language.
It is used for developing browsers and their extensions. Google’s Chromium is built using ‘C’ programming language.
It is used to develop databases. MySQL is the most popular database software which is built using ‘C’.
It is used in developing an operating system. Operating systems such as Apple’s OS X, Microsoft’s Windows, and Symbian are developed using ‘C’ language. It is used for developing desktop as well as mobile phone’s operating system.
It is used for compiler production.
It is widely used in IOT applications.
Why learn C Language?As we studied earlier, ‘C’ is a base language for many programming languages. So, learning ‘C’ as the main language will play an important role while studying other programming languages. It shares the same concepts such as data types, operators, control statements and many more. ‘C’ can be used widely in various applications. It is a simple language and provides faster execution. There are many jobs available for a ‘C’ developer in the current market.
‘C’ is a structured programming language in which program is divided into various modules. Each module can be written separately and together it forms a single ‘C’ program. This structure makes it easy for testing, maintaining and debugging processes.
‘C’ contains 32 keywords, various data types and a set of powerful built-in functions that make programming very efficient.
Another feature of ‘C’ programming is that it can extend itself. A ‘C’ program contains various functions which are part of a library. We can add our features and functions to the library. We can access and use these functions anytime we want in our program. This feature makes it simple while working with complex programming.
Various compilers are available in the market that can be used for executing programs written in this language.
How C Programming Language Works?C is a compiled language. A compiler is a special tool that compiles the program and converts it into the object file which is machine readable. After the compilation process, the linker will combine different object files and creates a single executable file to run the program. The following diagram shows the execution of a ‘C’ program
Nowadays, various compilers are available online, and you can use any of those compilers. The functionality will never differ and most of the compilers will provide the features required to execute both ‘C’ and ‘C++’ programs.
Following is the list of popular compilers available online:
Clang compiler
MinGW compiler (Minimalist GNU for Windows)
Portable ‘C’ compiler
Turbo C
Summary
‘C’ was developed by Dennis Ritchie in 1972.
It is a robust language.
It is a low programming level language close to machine language
It is widely used in the software development field.
It is a procedure and structure oriented language.
It has the full support of various operating systems and hardware platforms.
Many compilers are available for executing programs written in ‘C’.
A compiler compiles the source file and generates an object file.
A linker links all the object files together and creates one executable file.
It is highly portable.
To The Moon With C
Before President Kennedy promised America the Moon, NASA was already planning its manned lunar landing mission. What the spacecraft would look like and what rocket would launch it were major questions without obvious answers, but for the engineers at NASA’s Langley Research Centre, rendezvous — having two spacecraft meet and connect in space — was expected to be a key maneuver. The only unknown was whether the rendezvous would happen in Earth or lunar orbit, though in 1961 the former was the preferred method. Earth Orbit Rendezvous is the method John Bird sketched out in 1961 with the caption “To the Moon with C-1s or Bust.” Here’s what this mission would have looked like.
John Bird.
R_1967-L-03303 002
The first missions to the Moon were designed with one central assumption: that the entire spacecraft would land on the Moon, launch from its surface, then return to Earth. This meant, by default, that the spacecraft would be huge and heavy. It would have to carry all the fuel for the multistage mission and provisions to set up a launch site on the Moon without the help of specially trained ground crews.
Following this model, early estimates said the spacecraft could be as large as the Atlas rocket, the nearly 100-foot launch vehicle that sent the last four Mercury missions into orbit. To launch a spacecraft that big directly to the Moon required a massive rocket like Nova, the never-built rocket with eight engines in its first stage, three more than the Saturn V eventually had.
The alternative mission had astronauts assemble the same spacecraft in Earth orbit, a mission that required complicated rendezvous maneuvers but took a simpler path to orbit. Because each piece is lighter than the whole spacecraft, NASA could launch the mission on multiple smaller rockets. This is the mission, properly called an Earth Orbit rendezvous mission, that John Bird sketched out.
John Bird was an engineer at Langley, and in the early 1960s he worked on designs for a dedicated lunar landing vehicle as part of the centre’s studies into a potential Lunar Orbit Rendezvous mission (the mission profile eventually adopted by Apollo). Among Bird’s areas of expertise was the intricate business of assembling a spacecraft in Earth orbit. He became enough of an expert in the subject to be the voice of Earth orbital rendezvous maneuvers during meeting and presentations.
Bird’s sketch shows an Earth Orbit Rendezvous spacecraft configuration wherein the lunar spacecraft is assembled using ten C-1 rockets, the rocket that eventually became the Saturn I. According to this plan, NASA would have needed ten C-1s to launch this mission.
Bird’s “To the Moon or Bust” Sketch
Not only would it have been a challenge to launch all ten C-1s in quick enough succession to keep the mission running on schedule, it would have been a real feat for a crew to undertake all the rendezvous maneuvers to get every piece lined up in the right spot and docked. And all that before going to the Moon for a landing mission! Still, launching multiple rockets was preferred method for a lot of NASA centers. It forced development of rendezvous capability and promised jobs for the men and women who built the rockets.
“To the Moon with C-1s or Bust” was evidently the theme of the day at Langley on May 22, 1961, the day John Bird drew this sketch. These hand drawn concepts for missions are such a fascinating look into futures that didn’t materialize that they’re well worth sharing.
_Source, including Bird’s drawing: The Apollo Spacecraft Chronology volume 1 (Ivan Ertel and Mary Louise Morse). _
Update the detailed information about Functions In C Programming With Examples: Recursive & Inline on the Cattuongwedding.com website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!