1729 is known as the Ramanujan number, after an anecdote of the British mathematician G. H. Hardy when he visited Indian mathematician Srinivasa Ramanujan in hospital. He related their conversation:
"I remember once going to see him when he was ill at Putney. I had ridden in taxi cab number 1729 and remarked that the number seemed to me rather a dull one, and that I hoped it was not an unfavourable omen. "No," he replied, "it is a very interesting number; it is the smallest number expressible as the sum of two cubes in two different ways."
The two different ways are:
1729 = 1^3 + 12^3 = 9^3 + 10^3
(Source: https://en.wikipedia.org/wiki/1729_(number))
Next such number is 4104.
4104 = 16^3 + 2^3 = 9^3 + 15^3
I want to find more such numbers. I have tried several time but not able to write code for it. The codes I have written didn't run.
Asked
Active
Viewed 6,144 times
-2

Vartika
- 77
- 1
- 6
-
2Show us what you have tried,then we will help.https://stackoverflow.com/help/how-to-ask – Gaurav Bahadur Nov 07 '18 at 02:48
-
@Gaurav Bahadur Yes I will add my code – Vartika Nov 07 '18 at 02:51
1 Answers
4
Although, You must have shown your work.
Try it:
#include <stdio.h>
int main(){
int i, a, b, x, y, k;
printf("Input nos. between which you want to find Ramanujan No.: ");
scanf("%d %d", &a, &b);
for(i=a;i<b;i++){
k=0;
for(x=1;x*x*x<i;x++){
for(y=x+1;x*x*x+y*y*y<=i;y++){
if(x*x*x+y*y*y==i){
k++;
x++;
}
}
}
if(k==2){
printf("%d ", i);
}
}
return 0;
}

GIRISH
- 101
- 1
- 8