// 1,5,10,20,50,100,200 şeklinde yazan c kodu
//
www.tutorialspoint.com adresinden deneyebilirsiniz
#include <stdio.h>
int main()
{
//iki program lazım birisinde 1,5,10,20,50,100 200 sayılarıyla benim istediğim sayıyı yazabilmesi; diğerinde ise 1,2,4,8,16,32,64sayılarıyla benimistediğim sayıyı toplam şeklinde yazması
// alacağımız sayı
int sayi = 0;
// kaç tane yüz, elli, yirmi olduğunu tutmak için kullanacağımız sayılar
int ikiyuz = 0;
int yuz = 0;
int elli = 0;
int yirmi = 0;
int on = 0;
int bes = 0;
int bir = 0;
int i;
printf("sayiyi gir: ");
scanf("%d", &sayi);
ikiyuz = sayi/200;
sayi -= 200*ikiyuz;
yuz = sayi/100;
sayi -= 100*yuz;
elli = sayi/50;
sayi -= 50*elli;
yirmi = sayi/20;
sayi -= 20*yirmi;
on = sayi/10;
sayi -= 10*on;
bes = sayi/5;
sayi -= 5*bes;
bir = sayi;
for(i=0; i<ikiyuz; i++){
if(i<ikiyuz-1)
printf("200 + ");
else if(i==ikiyuz-1 && (yuz!=0 || elli!=0 || yirmi!=0 || on!=0 || bes!=0 || bir!=0))
printf("200 + ");
else printf("200\n");
}
for(i=0; i<yuz; i++){
if(i<yuz-1)
printf("100 + ");
else if(i==yuz-1 && (elli!=0 || yirmi!=0 || on!=0 || bes!=0 || bir!=0))
printf("100 + ");
else printf("100\n");
}
for(i=0; i<elli; i++){
if(i<elli-1)
printf("50 + ");
else if(i==elli-1 && (yirmi!=0 || on!=0 || bes!=0 || bir!=0))
printf("50 + ");
else printf("50\n");
}
for(i=0; i<yirmi; i++){
if(i<yirmi-1)
printf("20 + ");
else if(i==yirmi-1 && (on!=0 || bes!=0 || bir!=0))
printf("20 + ");
else printf("20\n");
}
for(i=0; i<on; i++){
if(i<on-1)
printf("10 + ");
else if(i==on-1 && (bes!=0 || bir!=0))
printf("10 + ");
else printf("10\n");
}
for(i=0; i<bes; i++){
if(i<bes-1)
printf("5 + ");
else if(i==bes-1 && bir!=0)
printf("5 + ");
else printf("5\n");
}
for(i=0; i<bir; i++){
if(i<bir-1)
printf("1 + ");
else printf("1\n");
}
}
///////////////////////**************************************\\\\\\\\\\\\\\\\\\\\\
// bu da 64,32,16... için olanı
#include <stdio.h>
int main()
{
//iki program lazım birisinde 1,5,10,20,50,100 200 sayılarıyla benim istediğim sayıyı yazabilmesi; diğerinde ise 1,2,4,8,16,32,64sayılarıyla benimistediğim sayıyı toplam şeklinde yazması
// alacağımız sayı
int sayi = 0;
// kaç tane yüz, elli, yirmi olduğunu tutmak için kullanacağımız sayılar
int altmisdort = 0;
int otuziki = 0;
int onalti = 0;
int sekiz = 0;
int dort = 0;
int iki = 0;
int bir = 0;
int i;
printf("sayiyi gir: ");
scanf("%d", &sayi);
altmisdort = sayi/64;
sayi -= 64*altmisdort;
otuziki = sayi/32;
sayi -= 32*otuziki;
onalti = sayi/16;
sayi -= 16*onalti;
sekiz = sayi/8;
sayi -= 8*sekiz;
dort = sayi/4;
sayi -= 4*dort;
iki = sayi/2;
sayi -= 2*iki;
bir = sayi;
for(i=0; i<altmisdort; i++){
if(i<altmisdort-1)
printf("64 + ");
else if(i==altmisdort-1 && (otuziki!=0 || onalti!=0 || sekiz!=0 || dort!=0 || iki!=0 || bir!=0))
printf("64 + ");
else printf("64\n");
}
for(i=0; i<otuziki; i++){
if(i<otuziki-1)
printf("32 + ");
else if(i==otuziki-1 && (onalti!=0 || sekiz!=0 || dort!=0 || iki!=0 || bir!=0))
printf("32 + ");
else printf("32\n");
}
for(i=0; i<onalti; i++){
if(i<onalti-1)
printf("16 + ");
else if(i==onalti-1 && (sekiz!=0 || dort!=0 || iki!=0 || bir!=0))
printf("16 + ");
else printf("16\n");
}
for(i=0; i<sekiz; i++){
if(i<sekiz-1)
printf("8 + ");
else if(i==sekiz-1 && (dort!=0 || iki!=0 || bir!=0))
printf("8 + ");
else printf("8\n");
}
for(i=0; i<dort; i++){
if(i<dort-1)
printf("4 + ");
else if(i==dort-1 && (iki!=0 || bir!=0))
printf("4 + ");
else printf("4\n");
}
for(i=0; i<iki; i++){
if(i<iki-1)
printf("2 + ");
else if(i==iki-1 && bir!=0)
printf("2 + ");
else printf("2\n");
}
for(i=0; i<bir; i++){
if(i<bir-1)
printf("1 + ");
else printf("1\n");
}
}