 # C++ Programming Code Examples

## C++ > Mathematics Code Examples

### Compute Discrete Fourier Transform Using the Fast Fourier Transform Approach

``` Compute Discrete Fourier Transform Using the Fast Fourier Transform Approach This is a C++ Program to perform Fast Fourier Transform. A fast Fourier transform (FFT) is an algorithm to compute the discrete Fourier transform (DFT) and its inverse. Fourier analysis converts time (or space) to frequency and vice versa; an FFT rapidly computes such transformations by factorizing the DFT matrix into a product of sparse (mostly zero) factors. #include <iostream> #include <complex> #include <cmath> #include <iterator> using namespace std; unsigned int bitReverse(unsigned int x, int log2n) { int n = 0; int mask = 0x1; for (int i = 0; i < log2n; i++) { n <<= 1; n |= (x & 1); x >>= 1; } return n; } const double PI = 3.1415926536; template<class Iter_T> void fft(Iter_T a, Iter_T b, int log2n) { typedef typename iterator_traits<iter_t>::value_type complex; const complex J(0, 1); int n = 1 << log2n; for (unsigned int i = 0; i < n; ++i) { b[bitReverse(i, log2n)] = a[i]; } for (int s = 1; s <= log2n; ++s) { int m = 1 << s; int m2 = m >> 1; complex w(1, 0); complex wm = exp(-J * (PI / m2)); for (int j = 0; j < m2; ++j) { for (int k = j; k < n; k += m) { complex t = w * b[k + m2]; complex u = b[k]; b[k] = u + t; b[k + m2] = u - t; } w *= wm; } } } int main(int argc, char **argv) { typedef complex cx; cx a[] = { cx(0, 0), cx(1, 1), cx(3, 3), cx(4, 4), cx(4, 4), cx(3, 3), cx( 1, 1), cx(0, 0) }; cx b; fft(a, b, 3); for (int i = 0; i < 8; ++i) cout << b[i] << "\n"; } ```

C Find the Sum of First n Natural Numbers - We will see 2 C programs to calculate the sum of natural numbers. In the first C program we are using For Loop for find the sum and in the second program we are doing the same using

Generate All Subsets of a Given Set in the - Print all combination of a given length from the given array. Return if the currLen is more than the "required length". If currLen is equal to required length then "Print the sequence".

C++ Prim's Algorithm Finds the Minimum - Find the minimum spanning tree of the given graph using Prims algorihtm. This algorithm is a "greedy algorithm" that finds a minimum spanning tree for a "Connected Undirected"

Program to Converts Celsius to Fahrenheit - Fahrenheit & Celsius are two unit for measure temperature. Formula to convert "Celsius" to Fahrenheit using this formula you can change temperature fahrenheit to celsius. Use temp

Concatenate 2 Strings C++ Without StrCat - Program which take Two Strings as input and concatenate Two Strings without using string class function "strcat()". There are total three strings, two for 'input' and third for our Result

Removing All Characters Except Alphabets - This program takes a string from the user and stored in the Variable line. The, Within the for loop, each character in the string is checked if it is an alphabet or not. If any character inside

C++ Code to Print Smiling Face on Screen - To 'print smiling face' in C++, first you have to ask how many smiling face user want to print on screen to print required number of smiling face on the screen. So to print smiling face on

C++ Programming Code to Reverse String - To 'reverse a string' in C++ programming, ask to the user to 'enter a string', make a variable say temp of char type "start Swapping". Place First Character of the String in temp and Last