C ödevi için yardım

lorboloji

Doçent
Katılım
27 Haziran 2009
Mesajlar
584
Reaksiyon puanı
2
Puanları
0
Arkadaşlar öğretmen ödev verdi. Ancak pek yapamadım yardımlarınızı bekliyorum.

Soru şöyle;Bir kitapçı birden çok alımlar için özel indirimler yapıyor.Bu indirimler 5-9 arası kitap alırsan %5, 10-14 arası kitap alırsan %10,15-19 arasında kitap alırsan %15 ve 20 ve üzeri kitap alırsan %20 indirim yapıyor. Bir kitabın değeri 10 TL.

Bir C fonksiyonu yazacağız. Giriş değerimiz kitap adeti olucak ve işlemi yaptığında indirimden sonraki satış değerini bize yazıcak. Yani diyelim 5 yazdım giriş değerine (5*10)-(5*10)*5/100=47,5 TL çıkışı vermesi lazım.

Mümkün olan en yalın ve basit bir şekilde bunu nasıl yazabiliriz. sanırım If else kalıbıyla yazılıyormuş ama pek bilgim yok yardımcı olursanız sevinirim.
 

alpguclu

Öğrenci
Katılım
10 Mayıs 2010
Mesajlar
42
Reaksiyon puanı
0
Puanları
6
c de olaylar nasıl gelişiyor bilmiyorum ama c++'ta yazmak istersen şöyle yazarsın;

int bookNum;

cout<<"Kitap sayısı: ";
cin>>bookNum;
cout<<endl;
if(bookNum<5)
{
cout<<"Tutar: "<<(bookNum*10);
}
else if((bookNum>4) && (bookNum<10))
{
cout<<"Tutar: "<<((bookNum*10)-((bookNum*10)*(5/100)));
}


bu şekilde devam eder ama tabi senin bunu c haline getirmen lazım
 

lorboloji

Doçent
Katılım
27 Haziran 2009
Mesajlar
584
Reaksiyon puanı
2
Puanları
0
c de olaylar nasıl gelişiyor bilmiyorum ama c++'ta yazmak istersen şöyle yazarsın;

int bookNum;

cout<<"Kitap sayısı: ";
cin>>bookNum;
cout<<endl;
if(bookNum<5)
{
cout<<"Tutar: "<<(bookNum*10);
}
else if((bookNum>4) && (bookNum<10))
{
cout<<"Tutar: "<<((bookNum*10)-((bookNum*10)*(5/100)));
}


bu şekilde devam eder ama tabi senin bunu c haline getirmen lazım

C den çok farklıymış. Pek bişi anlamadım :)

Arkadaşlar ödevi teslim etmem için son iki gün. Lütfen yardımcı olursanız sevinirim. bu ödevi muhakkak vermem gerekiyor.
 

hakan_golf5

Asistan
Katılım
10 Ocak 2009
Mesajlar
109
Reaksiyon puanı
0
Puanları
0
Fonksiyonsuz hali de budur :)

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int bookNum=0;

printf("Kitap sayisini giriniz: ");
scanf("%d",&bookNum);

if(bookNum<5)
printf("Tutar: %.2f\n",(double)bookNum*10);
else if((bookNum>4) && (bookNum<10))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.05));
else if((bookNum>9) && (bookNum<15))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.1));
else if((bookNum>14) && (bookNum<20))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.15));
else
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.2));


system("PAUSE");
return 0;
}
 

lorboloji

Doçent
Katılım
27 Haziran 2009
Mesajlar
584
Reaksiyon puanı
2
Puanları
0
Fonksiyonsuz hali de budur :)

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int bookNum=0;

printf("Kitap sayisini giriniz: ");
scanf("%d",&bookNum);

if(bookNum<5)
printf("Tutar: %.2f\n",(double)bookNum*10);
else if((bookNum>4) && (bookNum<10))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.05));
else if((bookNum>9) && (bookNum<15))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.1));
else if((bookNum>14) && (bookNum<20))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.15));
else
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.2));


system("PAUSE");
return 0;
}

Çok teşekkürler :) Peki bizden tekrar tekrar kitap sayısını girmemizi nasıl ister? Yani demek istediğim şey bunda 1 kere kitap sayısı girebiliyoruz sonra kapanıyor. Ama biz kitap sayısını girdikten sonra fiyatı ekrana yansıttıktan sonra tekrar kitap sayısı girmemizi nasıl ayarlayabilirim? Anlatabildim mi bilmiyorum ama :)
 

Deleted-Name

Profesör
Cezalı
Katılım
24 Mayıs 2013
Mesajlar
2,602
Reaksiyon puanı
18
Puanları
38
Çok teşekkürler :) Peki bizden tekrar tekrar kitap sayısını girmemizi nasıl ister? Yani demek istediğim şey bunda 1 kere kitap sayısı girebiliyoruz sonra kapanıyor. Ama biz kitap sayısını girdikten sonra fiyatı ekrana yansıttıktan sonra tekrar kitap sayısı girmemizi nasıl ayarlayabilirim? Anlatabildim mi bilmiyorum ama :)
while döngüsü ile kitap sayısı -1 olmadığı sürece sürekli kitap sayısı girmeni ister Sentinel Controlled Program diye arat
 

lorboloji

Doçent
Katılım
27 Haziran 2009
Mesajlar
584
Reaksiyon puanı
2
Puanları
0
al bakalım :)

http://awesomescreenshot.com/05e2n6ul52

Tabi DOS'ta görmek için
#include <conio.h> ve en alta (main fonksiyonunun en altına) getch(); eklemeyi unutmuyosun dimi ;)

Çok teşekkür ederim görmemiştim seninkini. :)

while döngüsü ile kitap sayısı -1 olmadığı sürece sürekli kitap sayısı girmeni ister Sentinel Controlled Program diye arat

Teşekkürler while döngüsüyle hallederim işimi. :)
 

lorboloji

Doçent
Katılım
27 Haziran 2009
Mesajlar
584
Reaksiyon puanı
2
Puanları
0
Arkadaşlar kendimden emin konuşmuşum while döngüsünü yazamadım bu fonksiyona

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int bookNum=0;

printf("Kitap sayisini giriniz: ");
scanf("%d",&bookNum);

while( bookNum != -1 )


if(bookNum<5)
printf("Tutar: %.2f\n",(double)bookNum*10);
else if((bookNum>4) && (bookNum<10))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.05));
else if((bookNum>9) && (bookNum<15))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.1));
else if((bookNum>14) && (bookNum<20))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.15));
else
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.2));


system("PAUSE");
return 0;
}

kırmızıyla yazdığım yere yazıyorum ama işlemi yapmıyo nerede hata yapıyorum nereye yazmam gerekiyor ?
 

Deleted-Name

Profesör
Cezalı
Katılım
24 Mayıs 2013
Mesajlar
2,602
Reaksiyon puanı
18
Puanları
38
Arkadaşlar kendimden emin konuşmuşum while döngüsünü yazamadım bu fonksiyona

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int bookNum=0;

printf("Kitap sayisini giriniz: ");
scanf("%d",&bookNum);

while( bookNum != -1 )


if(bookNum<5)
printf("Tutar: %.2f\n",(double)bookNum*10);
else if((bookNum>4) && (bookNum<10))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.05));
else if((bookNum>9) && (bookNum<15))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.1));
else if((bookNum>14) && (bookNum<20))
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.15));
else
printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.2));


system("PAUSE");
return 0;
}

kırmızıyla yazdığım yere yazıyorum ama işlemi yapmıyo nerede hata yapıyorum nereye yazmam gerekiyor ?
Şöyle olacak
Kod:
printf("Kitap sayisini giriniz: ");
while(booknum!=-1){
işlemler();
printf("Kitap sayisini giriniz: ");
scanf("%d",&bookNum)
}
 

lorboloji

Doçent
Katılım
27 Haziran 2009
Mesajlar
584
Reaksiyon puanı
2
Puanları
0
Şöyle olacak
Kod:
printf("Kitap sayisini giriniz: ");
while(booknum!=-1){
işlemler();
printf("Kitap sayisini giriniz: ");
scanf("%d",&bookNum)
}

Error veriyor anlamadım neyi yanlış yaptığımı. Dedikelrini harfiyen uyguladım ama. Sen fonksiyonda direk üstüne yazar mısın?
 

Deleted-Name

Profesör
Cezalı
Katılım
24 Mayıs 2013
Mesajlar
2,602
Reaksiyon puanı
18
Puanları
38
Error veriyor anlamadım neyi yanlış yaptığımı. Dedikelrini harfiyen uyguladım ama. Sen fonksiyonda direk üstüne yazar mısın?
Kod:
[URL="http://forum.shiftdelete.net/usertag.php?do=list&action=hash&hash=include"]#include[/URL][COLOR=#333333][COLOR=#333333][I] <stdio.h>[/I][/COLOR][/COLOR][I]
[URL="http://forum.shiftdelete.net/usertag.php?do=list&action=hash&hash=include"]#include[/URL][COLOR=#333333][COLOR=#333333][I] <stdlib.h>[/I][/COLOR][/COLOR][I]

[COLOR=#333333][COLOR=#333333][I]int main(int argc, char *argv[])[/I][/COLOR][/COLOR][I]
[COLOR=#333333][COLOR=#333333][I]{[/I][/COLOR][/COLOR][I]
[COLOR=#333333][COLOR=#333333][I]int bookNum=0;[/I][/COLOR][/COLOR][I]

[COLOR=#333333][COLOR=#333333][I]printf("Kitap sayisini giriniz: ");[/I][/COLOR][/COLOR][I]
[COLOR=#333333][COLOR=#333333][I]scanf("%d",&bookNum);[/I][/COLOR][/COLOR][I]
[B][COLOR=#ff0000]
while( bookNum != -1 ) [/COLOR]

[COLOR=#333333][I]if(bookNum<5)[/I][/COLOR][I]
[COLOR=#333333][I]printf("Tutar: %.2f\n",(double)bookNum*10); [/I][/COLOR][I]
[COLOR=#333333][I]else if((bookNum>4) && (bookNum<10))[/I][/COLOR][I]
[COLOR=#333333][I]printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.05));[/I][/COLOR][I]
[COLOR=#333333][I]else if((bookNum>9) && (bookNum<15))[/I][/COLOR][I]
[COLOR=#333333][I]printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.1));[/I][/COLOR][I]
[COLOR=#333333][I]else if((bookNum>14) && (bookNum<20))[/I][/COLOR][I]
[COLOR=#333333][I]printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.15));[/I][/COLOR][I]
[COLOR=#333333][I][I][I][I][I][I][COLOR=#333333][I]printf("Kitap sayisini giriniz: ");[/I][/COLOR][I][I]
[COLOR=#333333][I]scanf("%d",&bookNum);[/I][/COLOR][/I][/I][/I][/I][/I][/I][/I]
[/I][/COLOR][I]}
[COLOR=#333333][I]printf("Tutar: %.2f\n",(float)(bookNum*10)-((bookNum*10)*0.2));[/I][/COLOR][I]


[COLOR=#333333][I]system("PAUSE"); [/I][/COLOR][I]
[COLOR=#333333][I]return 0;[/I][/COLOR][I]
[COLOR=#333333][I]}[/I][/COLOR][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/B][/I][/I][/I][/I][/I][/I][/I]
 

sdmh

Profesör
Katılım
22 Ağustos 2008
Mesajlar
1,108
Reaksiyon puanı
14
Puanları
38
While'den sonra { eksik sanki
 

mehmet0321

Doçent
Katılım
23 Ağustos 2012
Mesajlar
744
Reaksiyon puanı
0
Puanları
16
Yaş
30
Kendin uğraşıp yazsan daha iyi olur.Başkasının yazdığını alırsan sadece ödevi verirsin ama asla kendini geliştiremezsin [MENTION=71475]lorboloji[/MENTION]
 

sinan60

Öğrenci
Katılım
3 Eylül 2009
Mesajlar
81
Reaksiyon puanı
1
Puanları
8
Kod:
#include <stdio.h>
#include <stdlib.h>


int main()
{
    int bookNum = 0;
    while (bookNum != -1)
    {
        printf("Kitap sayisini giriniz: ");
        scanf("%d", &bookNum);
        if (bookNum<5)
            printf("Tutar: %.2f\n", (double)bookNum * 10);
        else if ((bookNum>4) && (bookNum<10))
            printf("Tutar: %.2f\n", (float)(bookNum * 10) - ((bookNum * 10)*0.05));
        else if ((bookNum>9) && (bookNum<15))
            printf("Tutar: %.2f\n", (float)(bookNum * 10) - ((bookNum * 10)*0.1));
        else if ((bookNum>14) && (bookNum < 20))
            printf("Tutar: %.2f\n", (float)(bookNum * 10) - ((bookNum * 10)*0.15));
        else if (bookNum>=20)
            printf("Tutar: %.2f\n", (float)(bookNum * 10) - ((bookNum * 10)*0.2));
}


system("PAUSE");
return 0;
}
 

Archi

Öğrenci
Katılım
9 Mayıs 2014
Mesajlar
26
Reaksiyon puanı
0
Puanları
0
Arkadaşlar öğretmen ödev verdi. Ancak pek yapamadım yardımlarınızı bekliyorum.

Soru şöyle;Bir kitapçı birden çok alımlar için özel indirimler yapıyor.Bu indirimler 5-9 arası kitap alırsan %5, 10-14 arası kitap alırsan %10,15-19 arasında kitap alırsan %15 ve 20 ve üzeri kitap alırsan %20 indirim yapıyor. Bir kitabın değeri 10 TL.

Bir C fonksiyonu yazacağız. Giriş değerimiz kitap adeti olucak ve işlemi yaptığında indirimden sonraki satış değerini bize yazıcak. Yani diyelim 5 yazdım giriş değerine (5*10)-(5*10)*5/100=47,5 TL çıkışı vermesi lazım.

Mümkün olan en yalın ve basit bir şekilde bunu nasıl yazabiliriz. sanırım If else kalıbıyla yazılıyormuş ama pek bilgim yok yardımcı olursanız sevinirim.
ödevlerde direk kod ile yardım etmeyi doğru bulmuyorum sonuçta öğretmenin ödev vermiş çokda zor birşey değil çocuk işi.yaparsın zorlasan bence
 

emincelik50

Öğrenci
Katılım
21 Ocak 2015
Mesajlar
9
Reaksiyon puanı
0
Puanları
0
Benim Calismamda Şu Şekilde


#include <stdio.h>


main(){
int ki;
float para;
printf("Kac Kitap Alicaksiniz?\n");
scanf("%d",&ki);
if(ki<5)
{
para=10*ki;
printf("%d Kitabin degeri %f'' dir.\n",ki,para);
}
else if(ki>5 && ki<10)
{
para=10*ki;
para=para-(para*5/100);
printf("%d Kitabin Degeri %f'dir.\n",ki,para);
}
else if(ki>=10 && ki<15)
{
para=10*ki;
para=para-(para*10/100);
printf("%d Kitabin Degeri %f'dir.\n",ki,para);
}
else if(ki>=15 && ki<19)
{
para=10*ki;
para=para-(para*15/100);
printf("%d Kitabin Degeri %f'dir.\n",ki,para);
}
else
{
para=10*ki;
para=para-(para*20/100);
printf("%d Kitabin Degeri %f'dir.\n",ki,para);
}
return 0;
}
 

algea

Doçent
Katılım
15 Temmuz 2011
Mesajlar
505
Reaksiyon puanı
22
Puanları
18
Visual studio kullansana Visual Studio's IntelliSenseile nerede hata yaptığını daha kolaya bulabilirsin….
 

özgürm

Öğrenci
Katılım
8 Nisan 2015
Mesajlar
2
Reaksiyon puanı
0
Puanları
0
Soru 1: Sırasıyla üç ayrı vektöre isteğe bağlı sayıda değerler veren ve bu oluşan üç vektör için ayrı ayrı en küçüğünü, en büyüğünü ve ortalamasını bulduran programı C++ yazınız.
Soru 2: Üç basamaklı sayılardan rakamlarının küpleri toplamı kendine eşit olan sayıları yazdıran C++ programını yazınız.
Soru 3: Bir balık çiftliğinde üç tane balık havuzu bulunmaktadır. Bu havuzlardan birincisi 125lt, ikincisi 148lt, üçüncüsü ise 156lt’dir. İlk başta tüm havuzlar boştur. Havuzlar dolmaya birinci havuzdan başlayıp sırayla gidecektir. Bir havuzun tamamı dolmadan diğer havuza su aktarılmayacaktır. Havuzlara balık atma işlemi esnasında, ilk havuz dolarken her 1 litreye 1 balık, ikinci havuzda her 2 litreye 3 balık, üçüncü havuzda ise her 4 litreye 3 balık olacak şekilde balıklar havuzlara atılacaktır. Bu durumda havuzlar tam kapasite doldurulduğunda içerisinde kaç balık olacağının hesabını yapan bir C++ programını yazınız.
arkadaşlar bu soruşarı yapamıyorum yardımcı olacak olursa cok sevinirim .
 
Üst