[Çözüldü] C ??

Başlatan Mendax, 15 Kasım 2015 - 16:16:42

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Mendax



void main(){
int sayi, k[10], sayi1;
printf("Bir sayı giriniz; ");
scanf("%d", &sayi);
int basamak = 0;
int yeni_sayi = 0;
sayi1 = sayi;
int sayac;

while(sayac < 5)
{

while(sayi > 0) // Sayının kaç basamaklı olduğunu bulalım.
{
basamak++;
sayi = sayi / 10;
}

int i;
for ( i = 0; i < basamak; i++) // Her bir basamakdaki sayıları k dizisine atayalım.
{
k[i] = sayi1 % 10;
sayi1 = sayi1 / 10;
}

// for(int j = 0; j < basamak; j++)
// printf("%d basamak = %d\n", j+1, k[j]);


for(int y= 0; y<basamak; y++){
yeni_sayi = yeni_sayi + k[y] * k[y];


}
printf("%d, ", yeni_sayi);

sayi = yeni_sayi;
sayi1 = yeni_sayi;

sayac++;

}
}




Girilen sayının basamak değerlerinin karesini toplayım yeni sayı oluşuyor bu işlem böyle devam edip bir döngü oluşana kadar olması gerek ama ilk sayının kareleri toplamından sonrakiler yanlış çıkıyor??
Yardım edebilecek olan??

freeman

Şu konu başlıklarını daha uygun açsanız ?
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

blackwidow


int basamakSayim(int newSayi);
void main(){
int sayi, k[10], sayi1;
printf("Bir sayı giriniz ");
scanf("%d",&sayi);
int basamak = 0;
int yeni_sayi = 0;
int sayac=0;
int yeniDeger=0;
int t;
for(t = 0 ;  t < 5 ; ++t)
{
sayi1 = sayi;
basamak = basamakSayim(sayi);
printf("basamak sayısı %d = \n", basamak);

int i;
for ( i = 0; i < basamak; i++) // Her bir basamakdaki sayıları k dizisine atayalım.
{
k[i] = sayi1 % 10;
printf("%d index = %d\n",i, k[i] );
sayi1 = sayi1 / 10;
}
for(i = 0 ; i < basamak ; ++i)
yeniDeger+= k[i]*k[i];

sayi = yeniDeger;
printf("yeni sayi = %d\n",sayi);

}

}

int basamakSayim(int newSayi)
{
int i , basamak = 0;
i = newSayi;
while(i > 0)
{
basamak++;
i = i / 10;
}
return basamak;
}


dostum sanırım dediğin şekile geldi kod , eğer hatalı ise söylersen yardımcı olabilirim tam anlayamadım sorunu ancak kendi anladığım kadarını yaptım :)

kolay gelsin  :)

Mendax

Aynen olmuş teşekkürler. :) :)

Reverser

@Mendax, çözülen konularımız için şu şekilde [1] bir uygulamamız var.
[1] cozuldukonusu

XFCE ROCKS !
Powered by Thunar & XFWM4



Mendax

Tamam sağolasın bilgilendirdiğin için. :)

Reverser

etiket için teşekkürler, konuyu kapatıyorum. :)

XFCE ROCKS !
Powered by Thunar & XFWM4