Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- #include <stdbool.h>
- #include <limits.h>
- int main( void )
- {
- unsigned sum = 0;
- int num = -1, temp = 0, decimalNumber = 0, progress = 1;
- size_t counter, counter2;
- bool sentinel = false;
- while( !sentinel ) {
- puts( "Enter number:" );
- scanf( "%d", &num );
- if ( num < 0 ) {
- puts( "Value entered is incorrect. Try again." );
- continue;
- }
- else
- sentinel = true;
- }
- for ( counter = 0; counter <= num; ++counter ) {
- sum += ( pow( 2, counter ) - ( pow( -1, counter ))) / 3;
- temp = ( pow( 2, counter ) - ( pow( -1, counter ))) / 3;
- }
- printf( "\n%s%16d\n", "Your decimal number is: ", num );
- printf( "%s%18d\n", "Jacobsthal number is: ", temp );
- printf( "%s%9u\n", "Sum of Jacobsthal sequence is: ", sum );
- sum = 0;
- for ( counter = 0; sum < INT_MAX; ++counter ) {
- sum += ( pow( 2, counter ) - ( pow( -1, counter ))) / 3;
- if ( sum > INT_MAX )
- break;
- }
- decimalNumber = counter - 1;
- printf( "\n%s%12d\n\n", "Limit of int type values is ", INT_MAX );
- sum = 0;
- printf("%30s\n\n%c%19s%24s%25s\n\n","TABLE",'n',"Decimal number","Jacobsthal number","Sum of sequence");
- for ( counter = decimalNumber; counter >= decimalNumber - 2; --counter ) {
- temp = ( pow( 2, counter ) - ( pow( -1, counter ))) / 3 ;
- for ( counter2 = 0; counter2 <= counter; ++counter2 )
- sum += ( pow( 2, counter2 ) - ( pow( -1, counter2 ))) / 3;
- printf( "%d%7zu%28d%28u\n", progress++, counter, temp, sum );
- sum = 0;
- }
- puts( "" );
- return EXIT_SUCCESS;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement