/* Part of this work is copied from http://www.sanfoundry.com/c-program-to-reverse-a-given-number/ */
#include <stdio.h>
revint()
{
long num, reverse = 0, temp, remainder;
printf("Enter the number \n");
scanf("%ld",&num);
temp = num;
while ( num > 0 )
{
remainder = num % 10;
reverse = reverse * 10 + remainder;
num /= 10;
}
printf("Given number = %ld \n", temp);
printf("It's reverse = %ld \n", reverse);
}
/* http://stackoverflow.com/questions/15349723/reversing-an-integer-in-java-using-a-for-loop */
/* http://math.stackexchange.com/questions/480068/how-to-reverse-digits-of-an-integer-mathematically */
Hacking with an algorithm to reverse an integer
$./app Sign detection [1] Power of two [2] Counting No. of bits set [3] Set or clear bits without branching[4] Find maximum value[5] Finding least common multiple[6] Finding the greatest commom divisor[7] Finding if a number is an Armstrong number or not[8] Finding if a given number is prime number[9] Finding the number of twin prime numbers[10] Finding if a number is palindrome or not[11] Finding prime factor of a number[12] Finding the value of M^N[13] Finding factorial of a number[14] Finding the sum of the series 1! + 2! +...+N! [15] Finding the sume of the series 1 + 2 +...+N [16] Finding Parity of an Integer [17] Finding the biggest among three numbers [18] Finding the sum of even and odd numbers up to a number N [19] Finding the sum and number of integers divisible by 5 [20] Swapping Values [21] Finding the decimal value for a binary [22] Finding the reverse of an integer [23] 23 Enter the number 47124907242424245782424578 Given number = 9223372036854775807 It's reverse = 7085774586302733229 $
Calculus – The Fundamental Theorem, Part 1
[youtube https://www.youtube.com/watch?v=9bJ2Z1jbIAE?list=PLE259EE5D5CED4069&w=640&h=360]
Lec 1 | MIT 6.002 Circuits and Electronics, Spring 2007
[youtube https://www.youtube.com/watch?v=AfQxyVuLeCs?rel=0&w=480&h=360]
How to write an algorithm to do a binary to decimal conversion ?
/* part of work copied from http://www.sanfoundry.com/c-program-binary-number-into-decimal/ */
#include <stdio.h>
btd()
{
int num, binary_val, decimal_val = 0, base = 1, rem;
printf("Enter a binary number : ");
scanf("%d",&num);
binary_val = num;
while ( num > 0 )
{
rem = num % 10;
decimal_val = decimal_val + rem * base;
num = num / 10;
base = base * 2;
}
printf("The binary number is : %d \n",binary_val);
printf("It's decimal equivalent is: %d \n",decimal_val);
}
/* http://numbermonk.com/ */
/* remainder -- a part that is still to come to make things perfect
(or make something working fully) */
/* http://www.mathsisfun.com/definitions/remainder.html */
/* "num" is considered as a number which has to be broken
into 10 pieces beacuse the resulting number is built
using a maximum of 10 building blocks.
How to write an algorithm to swap values ?
/* part of work copied from http://www.sanfoundry.com/c-program-swap-values/ */
#include <stdio.h>
swap_values()
{
int temp;
int *ptr1, *ptr2;
int a, b;
printf("Enter integer values to be swapped: ");
scanf("%d %d",&a,&b);
ptr1 = &a;
ptr2 = &b;
temp = *ptr1;
*ptr1 = *ptr2;
*ptr2 = temp;
printf("Swapped values are: %d %d \n",a,b);
}
/* http://www.programmingsimplified.com/c-program-swap-two-numbers */
/* http://betterexplained.com/articles/swap-two-variables-using-xor/ */
/* http://www.science.unitn.it/~fiorella/guidelinux/tlk/node27.html */
Hacking with integer divisibility
/* work copied from http://www.sanfoundry.com/c-program-number-divisible-by-5/ */
#include <stdio.h>
numberdivi()
{
int i, num1, num2, count = 0, sum = 0;
printf("Enter the value of num1 and num2 : ");
scanf("%d %d",&num1,&num2);
for (i = num1; i < num2 ; i++)
{
if ((i % 5) == 0)
{
printf("%3d,",i);
count++;
sum = sum + i;
}
}
printf("\n Number of integers divisible by 5 between %d and %d = %d \n",num1,num2,count);
printf("The sum of all integers that are divisible by 5 = %d\n",sum);
}
/* http://en.wikipedia.org/wiki/Divisibility_rule */
/* http://stackoverflow.com/questions/18473730/algorithm-in-hardware-to-find-out-if-number-is-divisible-by-five */
Hacking with a binary using file and strip commands
$file simple | awk '{ print $(NF-1) $(NF-0) }'
notstripped
$du -h simple
8.0K simple
$./simple
Hello World
$strip ./simple
$du -h simple
8.0K simple
$./simple
Hello World
$file simple | awk '{ print $(NF-1) $(NF-0) }'
BuildID[sha1]=6cf0bed752a904372cd42a85bc560c266a7c91b3,stripped
$
Hacking with debian netselect-apt command
$sudo netselect-apt -t 2 -c IN
Using distribution stable.
Retrieving the list of mirrors from www.debian.org...
--2014-08-31 23:00:07-- http://www.debian.org/mirror/mirrors_full
Resolving www.debian.org (www.debian.org)... 140.211.15.34, 128.31.0.51
Connecting to www.debian.org (www.debian.org)|140.211.15.34|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 350858 (343K) [text/html]
Saving to: ‘/tmp/netselect-apt.Pjgwxz’
100%[====================================================================================>] 3,50,858 110KB/s in 3.1s
2014-08-31 23:00:11 (110 KB/s) - ‘/tmp/netselect-apt.Pjgwxz’ saved [350858/350858]
Choosing a main Debian mirror using netselect.
(will filter only for mirrors in country IN)
Running netselect to choose 2 out of 4 addresses.
...........
Only found 1 hosts out of 2 requested.
The fastest 2 servers seem to be:
http://debian.mirror.net.in/debian/
Of the hosts tested we choose the fastest valid for HTTP:
http://debian.mirror.net.in/debian/
Writing sources.list.
sources.list exists, moving to sources.list.1409506243
Done.
$
How to write an algorithm to find factorial of a given number ?
#include <stdio.h>
factorial()
{
int p = 1;
int i = 1;
int n;
printf("Enter a Number greater than 0 \n");
scanf("%d",&n);
while ( i <= n)
{
p = p * i;
i = i + 1;
}
printf("Factorial of the input is %d \n",p);
}