-
-
Save gokhanyavas/5267057 to your computer and use it in GitHub Desktop.
//1'den 999'a kadar olan tam sayılar içeresinden basamaklarının küp değeri toplamı kendisine eşit olan program | |
-------------------- HATALI OLAN KODLAR ------------------------------- | |
/* | |
#include <stdio.h> | |
#include <conio.h> | |
int main() | |
{ | |
// while(1) // sonsuz döngü | |
// %g virgülden sonraki sıfırları göstermiyor | |
int i,n,kuptoplam,bir,onb,yuz; | |
for (i=1; i<=999; i++ ); | |
{ | |
yuz=i/100; | |
onb=(i-yuz*100)/10; | |
bir = i-(yuz*100+onb*10); | |
kuptoplam = bir*bir*bir+onb*onb*onb+yuz*yuz*yuz; | |
if (i= kuptoplam) | |
printf ("%d\n",i); | |
} | |
getch(); | |
// ekranın kapanmasını engelliyor.. | |
}*/ | |
------------------- DOGRU KODLAR ----------------------------- | |
#include <stdio.h> | |
int main() | |
{ | |
int i, n, kuptoplam, birler, onlar, yuzler; | |
for (i = 1; i <= 999; i++) | |
{ | |
yuzler=i/100; | |
onlar= (i-yuzler*100)/10; | |
birler = i-((yuzler*100)+(onlar*10)); | |
kuptoplam = (birler * birler * birler) + (onlar * onlar * onlar) + (yuzler * yuzler * yuzler); | |
if (i == kuptoplam){ | |
printf ("-----------------------\n"); | |
printf ("%d\n",i); | |
} | |
} | |
} | |
--------------------- CEVAP ------------------ | |
----------------------- | |
1 | |
----------------------- | |
153 | |
----------------------- | |
370 | |
----------------------- | |
371 | |
----------------------- | |
407 | |
Basamaklarının küpü kendisine eşit olan demişsiniz program 1000 veriyor
1000'in basamaklarının küpü kendisine mi eşit ?
Biraz gec olmus olabilir ama lazimsa su kodu kullanabilirsin.Daha dogru calisiyor.
#include<stdio.h>
int main(){
int i,j,toplam=0;
for(i=1;i<=999;i++)
{
int gecci = i;
int gecici=toplam;
devam:
if(gecci%10>1)
{
int a = gecci%10;
gecici+=a*a*a;
gecci/=10;
goto devam;
}
else
{
gecici+=gecci*gecci*gecci;
}
if(gecici==i)
{
printf("%d sayisinin rakamlarinin kupleri toplami kendisine esit(Toplam:%d)\n",i,gecici);
}
}
}
Basamaklarının küpü kendisine eşit olan demişsiniz program 1000 veriyor
1000'in basamaklarının küpü kendisine mi eşit ?
Biraz gec olmus olabilir ama lazimsa su kodu kullanabilirsin.Daha dogru calisiyor.#include<stdio.h>
int main(){
int i,j,toplam=0;for(i=1;i<=999;i++) { int gecci = i; int gecici=toplam; devam: if(gecci%10>1) { int a = gecci%10; gecici+=a*a*a; gecci/=10; goto devam; } else { gecici+=gecci*gecci*gecci; } if(gecici==i) { printf("%d sayisinin rakamlarinin kupleri toplami kendisine esit(Toplam:%d)\n",i,gecici); } }
}
çalıştırdığımda senin örneği yanlış çalışıyor. tekrar kontrol et dostum. doğru şeklini yukarıda bulacaksın ;)
Basamaklarının küpü kendisine eşit olan demişsiniz program 1000 veriyor
1000'in basamaklarının küpü kendisine mi eşit ?
küçük hatalar olduğunu gördüm. mesela for'dan hemen sonra ; ve kimse görememiş 7 yıldır :))
Basamaklarının küpü kendisine eşit olan demişsiniz program 1000 veriyor
1000'in basamaklarının küpü kendisine mi eşit ?
Biraz gec olmus olabilir ama lazimsa su kodu kullanabilirsin.Daha dogru calisiyor.#include<stdio.h>
int main(){
int i,j,toplam=0;for(i=1;i<=999;i++) { int gecci = i; int gecici=toplam; devam: if(gecci%10>1) { int a = gecci%10; gecici+=a*a*a; gecci/=10; goto devam; } else { gecici+=gecci*gecci*gecci; } if(gecici==i) { printf("%d sayisinin rakamlarinin kupleri toplami kendisine esit(Toplam:%d)\n",i,gecici); } }
}
çalıştırdığımda senin örneği yanlış çalışıyor. tekrar kontrol et dostum. doğru şeklini yukarıda bulacaksın ;)
rezil olduk:)
Basamaklarının küpü kendisine eşit olan demişsiniz program 1000 veriyor
1000'in basamaklarının küpü kendisine mi eşit ?
Biraz gec olmus olabilir ama lazimsa su kodu kullanabilirsin.Daha dogru calisiyor.#include<stdio.h>
int main(){
int i,j,toplam=0;for(i=1;i<=999;i++) { int gecci = i; int gecici=toplam; devam: if(gecci%10>1) { int a = gecci%10; gecici+=a*a*a; gecci/=10; goto devam; } else { gecici+=gecci*gecci*gecci; } if(gecici==i) { printf("%d sayisinin rakamlarinin kupleri toplami kendisine esit(Toplam:%d)\n",i,gecici); } }
}
çalıştırdığımda senin örneği yanlış çalışıyor. tekrar kontrol et dostum. doğru şeklini yukarıda bulacaksın ;)
Algoritmayi kendim yazdim.yani o benim cocugum gibi.Kodu seninki gibi yapmadan duzeltebilirmiyim?
#include <stdio.h>
#include <stdlib.h>
int main() {
int birler, onlar, yuzler, i, total;
total=0;
for (i=1;i<1000;i++)
{
birler=i%10;
onlar=(i/10)%10;
yuzler=i/100;
total=(birler*birler*birler)+(onlar*onlar*onlar)+(yuzler*yuzler*yuzler);
if(i==total)
{
printf("%d \n\n",total);
}
}
return 0;
}
output
1
153
370
371
407
//0 da kattım ama isterseniz for içindeki 0'ı 1 yapabilirsiniz.
#include <stdio.h>
#include <conio.h>
int main() {
int x,a,b,c,d;
for (x=0;x<=999;x++){
a=x/100;
b=(x/10)%10;
c=(x%10)%10;
d=(a*a*a)+(b*b*b)+(c*c*c);
if (x==d) {
printf("%d\n",x);
}
}
getch();
return 0;
}
sizinkiler baya da kısa olmuş :) benim yaptığım uzun oldu sizinkine göre
Basamaklarının küpü kendisine eşit olan demişsiniz program 1000 veriyor
1000'in basamaklarının küpü kendisine mi eşit ?