Giriş
(3)

Bilgisayar kodlama

meshvela
Arkadaşlar merhaba, ikigün tatili kapmış bir öğretmen olarak şöyle bir sorunum var. okulda yaptığım bir çalışma için şöyle bir şeye (sanırım programa) ihtiyacım var. istediğim sayıların benim belirlediğim sayıların toplamı şeklinde yazılmasını ve bu toplamda kaç tane sayı kullanıldığını öğrenmek ist
Arkadaşlar merhaba, ikigün tatili kapmış bir öğretmen olarak şöyle bir sorunum var. okulda yaptığım bir çalışma için şöyle bir şeye (sanırım programa) ihtiyacım var. istediğim sayıların benim belirlediğim sayıların toplamı şeklinde yazılmasını ve bu toplamda kaç tane sayı kullanıldığını öğrenmek istiyorum.

örneğin 9 sayısını 5 ve 1 kullanarak 5+1+1+1+1 şeklinde
veya 27 sayısını 10, 5,1 kullanarak 10+10+5+1 şeklinde yazılmasını istiyorum

yardımcı olabilecek arkadaşların bilgi aktarımına açığım teşekkür ederim:)

edit:sayılar birden fazla kullanılabilir ancak sayısının en az olması gerek yani

10 için 5+5 olması gerek

matematik öğretmeni olduğum için koddan pek anlamıyorum istediğim sanırım tam olarak şöyle bir şey. 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ı, ilgilenen arkadaşlara da teşekkür ederim
0
meshvela
(08.01.15)
// 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");
}


}
0
edy
(08.01.15)
sayılar birden fazla kullanılabilir ancak sayısının en az olması gerek yani

10 için 5+5 olması gerek
0
🌸meshvela
(08.01.15)
Bankamatiklerin algoritması da bu şekilde. Sonuçta minimum sayıda kağıt para vermeye çalışıyosun.

Google da vardır muhtemelen.
0
contavolta
(08.01.15)
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler basond, compumaster, fraise, kibritsuyu, rakicandir
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır.