Gönderen Konu: C problemleri  (Okunma sayısı 76614 defa)

Çevrimdışı bahadirhtp

  • Üye
  • İleti: 262
    • Profili Görüntüle
C problemleri
« : 06 Eki 2009, 15:56:24 Sal »
Kod: [Seç]
#include <stdio.h>

int main( void )
{
   int integer1; /* first number to be input by user  */
   int integer2; /* second number to be input by user */
   int sum;      /* variable in which sum will be stored */

   printf( "Enter first integer\n" );
   scanf( "%d", &integer1 );          /* read an integer */

   printf( "Enter second integer\n" );
   scanf( "%d", &integer2 );           /* read an integer */

   sum = integer1 + integer2;

   printf( "Sum is %d\n", sum ); /* print sum */

   return 0;




include<canio>
getch
kullanmalımıyım?



bırde cıktı almak ıcın-- dosya --seklınde nasıl kaydedebılırım???



Düzenleme: code tagleri eklendi. Ases
« Son Düzenleme: 09 Ara 2009, 02:32:21 Çrş Gönderen: Ases »

nymph73

  • Ziyaretçi
C problemleri
« Yanıtla #1 : 15 Eki 2009, 14:34:10 Prş »
ben de devc++ kullanıyorum ve aynı sorunu yasıyorum.getchar komutu bende bazı programlarda işe yaramadı, ben de pause diye bir değişken tanımlayıp return 0 dan önce scanf("%d", &pause) yazıyorum ve herhangi bi sorun kalmıyor  ;)
yalnız döngülerde sorun oluyor, onda da gerek yok zaten

ancak daha ileride sorun olur mu ki acaba bu?

Çevrimdışı bahadirhtp

  • Üye
  • İleti: 262
    • Profili Görüntüle
C problemleri
« Yanıtla #2 : 15 Kas 2009, 13:48:17 Paz »
Üstteki programda gırılen ıkı sayının toplamı verılır pekıya programda hangı desıklıklerı yaparsak kac sayı gırılırse gırılsın sana toplamı verır?
yanı benım ıstedıgım genel bı toplam (hesap makınesı gıbı)
array olarak yazmamız gerekıyor sanırım ama bunun ıcnde kac tane sayı gırılıyorsa ınteger'ları ona ogre sırala nasıl dıyecegımı bılmıyorum

Çevrimdışı bahadirhtp

  • Üye
  • İleti: 262
    • Profili Görüntüle
C problemleri
« Yanıtla #3 : 16 Kas 2009, 19:40:52 Pzt »
Merhaba
ben turbo C++ kullanıyorum
ıkı hata ıle karsılasıyorum

unable to open include file 'stdio.h'
unable to create output file '/TC/FİG02_05.obj'

yardım edermısınız???


kutuphanelerın eksık ve C harddısk D harddisk kontrolu yap
bunuda yanlıs hatırlamıyorsam program ıcerısınde kontrollerde sag ust kose yanı sag bastan ıkıncıde yapacaksın



Benim yazdığım programlar hemen kapanmıyor.Fakat programı çalıştıramıyorum.Sadece ekranda iki sayı giriniz yazıyor ama ben iki sayı girip entere basınca program kapanıyor.Ne yapmam gerek?


yazdığım kodlar bunlar

#include<stdio.h>
int main( void )
{
   float sayi1,sayi2,ortalama;
   printf("İki sayı giriniz> ");
   scanf("%f%f",&sayi1,&sayi2);
   ortalama = ( sayi1 + sayi2 ) / 2;
   printf("Ortalama sonucu: %f'dir",ortalama);
   return 0;
}


scanf yaptırdıktan sonra return yapıyor cunku senınde pause yapman gerek

merhaba bende C Proglama dersi II deki ücret hesaplama programını kendim yazmaya çalıştım. getchar kullandıgım halde toplam ücreti gösterip hemen kapandı program sonra foruma girdim ve system("pause") yi ekledim program şimdi toplam ücreti gösteriyor fakat sonucu 0,00000 olarak gösteriyor. sanki benim girdigim sayıları 0 ile çarpıyor. yazdıgım program burda ben bulamadım hatamı sizden yardım istiyorum


#include<stdio.h>
#include<stdlib.h>
int main (void)

{
    char calisan_ismi;
    int calisma_saati;
    float saat_ucreti,toplam_ucret;
   
    printf (" calisan ismini giriniz   :  ");
    scanf  ("%c", & calisan_ismi);
    printf (" calisma saatini giriniz  :  ");
    scanf  ("%d", & calisma_saati);
    printf (" saat ucretini giriniz    :  ");
    scanf  ("%f", & saat_ucreti);
    toplam_ucret = calisma_saati * saat_ucreti;
    printf ("toplam_ucret %f\n", & toplam_ucret);
    system("PAUSE");
    return 0;
   
}

bı excat bı float kullanmıssın sanırım hata burdan kaynaklanıyor

Çevrimdışı punxlew

  • Üye
  • İleti: 51
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #4 : 19 Kas 2009, 04:30:03 Prş »
Kod: [Seç]
#include <stdio.h>
#include <conio.h> // getch fonksiyonu icin
main() {
int sayi1,sayi2;
int toplam=0;
int sonuc=0;
char isleme_devam;
   do {
       printf("2 sayi giriniz:");
       scanf("%d%d",&sayi1,&sayi2);
       toplam=sayi1+sayi2;           // toplam degiskeni ile disardan girilen 2 sayi toplaniyor
       sonuc=sonuc+toplam;           // sonuc ile bir onceki sonucu ve girilen 2 sayiyi yani toplam degiskenini topluyoruz            
       printf("isleme devam edilsinmi..evet icin 1 e basiniz\n");                        
       isleme_devam=getch();                        
   }  while( isleme_devam=='1');  // disardan ilk 2 sayi girisi aliniyor.
                                  // do while dongusu icerisinde toplama islemi gerceklestiriliyor
                                  // isleme_devam isminde bir degisken sayesinde islemin devami kontrol ediliyor
                                  //1 disinda herhangi bir tusa basildiginda islem sona eriyor                  
  printf("islemin sonucu=%d",sonuc);  
    
getch();    // bu getch dev-c de ekranin kapanmasini engellemek icin
    }


Düzenleme: code tagleri eklendi. Ases
« Son Düzenleme: 09 Ara 2009, 02:33:36 Çrş Gönderen: Ases »

Çevrimdışı punxlew

  • Üye
  • İleti: 51
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #5 : 19 Kas 2009, 04:32:11 Prş »
bu program sureklı ıkıserlı toplam ıcındır.

Çevrimdışı bahadirhtp

  • Üye
  • İleti: 262
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #6 : 05 Ara 2009, 23:52:03 Cts »
evet ve harıcen bir tusa basman gerekiyor falan
kısaltmanın bir yolu yokmu???

Çevrimdışı arlfan

  • Üye
  • İleti: 89
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #7 : 10 Ara 2009, 10:18:31 Prş »
merabalar bende c ye yeni başladım bi' sorum olucaktı,
while ı kullanarak faktöriyel hesabı yapmak istiyorum ama program biraz garip oldu bi' bakar mısınız???

Kod: [Seç]
#include<stdio.h>
#include<conio.h>
int main(void)
{
    int a,carpim=1,carpan;
    printf("a degeri giriniz\n");
    scanf("%d %d %d",&a,&carpan,&carpim);
    while(a>0)
    {
              carpim=carpan*a;
              a--;
              printf("%d",a);
              }
              getch();
              return 0;
              }


Düzenleme Ases
« Son Düzenleme: 10 Ara 2009, 13:39:36 Prş Gönderen: Ases »

Çevrimdışı Ases

  • Admin
  • Üye
  • İleti: 594
    • Profili Görüntüle
    • Kişisel Sitem
Ynt: C problemleri
« Yanıtla #8 : 10 Ara 2009, 13:46:48 Prş »
Kod: [Seç]
scanf("%d %d %d",&a,&carpan,&carpim);
Kısmını değiştirsen iyi olur gibi geldi bana. Çünkü senin değer olarak sadece a değişkenini alman yeterli. Bunun dışında carpan değişkenine ihtiyacın yok. İşlemin olduğu satırı

Kod: [Seç]
carpim = carpim * a;
olarak düzelt. Scanf in içinden carpan ve carpimi kaldır. Problem çözülecektir.
http://www.canbu.info - Benim blogum, benim fikirlerim, benim dünyam...
----------------------------------------------------------------------------
There is a crack in everything, that's where the light gets in.

Çevrimdışı arlfan

  • Üye
  • İleti: 89
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #9 : 10 Ara 2009, 22:11:10 Prş »
çok teşekkür ederim cvbınız için dediğinizi yaptım fakat ekrana diyelim 5 için 43210 yazıyor 5ten başlaması ve de çarpım sonucunu neden göstermiyor olabilir ?

bir de ben scanf te tam olr neyi tanımlamam gerek onu anlamadım sanırım kullandığım bütün değişkenleri yazıyorum içine bunu neye göre yapmam gerekiyor?

Çevrimdışı arlfan

  • Üye
  • İleti: 89
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #10 : 10 Ara 2009, 22:29:22 Prş »
bir sorum daha olucaktı..
girilen n tane sayıdan en büyüğünü bulan programı yazmak istiyorum..

while içinde if kullanıcam..mesela ilk girdiğim sayıyı en büyük sayı seçsem sonra 2.sayıyla onu kıyaslasam eğer 2. sayı daha büyükse 2.sayıyla 3.sayıyı kıyaslasam değilse 1.sayıyla 3.sayıyı kıyaslasam..atama işlemleriyle bunu gerçekleştirsem :( :( :(

ama bunları düzgün bi algoritmaya yazamadığım için programıda yazamadım..

bi yol gösterir misiniz?(sadece yol gösterin programı yazmayın ben uğraşmak istiyorum ;)

Çevrimdışı Ases

  • Admin
  • Üye
  • İleti: 594
    • Profili Görüntüle
    • Kişisel Sitem
Ynt: C problemleri
« Yanıtla #11 : 10 Ara 2009, 23:51:59 Prş »
scanf in içine kullanıcıdan almak istediğin değişkeni yazacaksın sadece. Senin durumunda bu faktöriyeli hesaplanacak sayı.

Ekrana 43210 yazma sebebi. a değişkenini azalttıktan sonra yazdırıyorsun. Kodu şöyle değiştiririsen 54321 görürsün.
Kod: [Seç]
printf("%d",a);
a--;

Çarpımı göstermek içinde while bloğunun dışına yine bir printf kullanarak çarpım değişkenini yazmak istediğini bilgisayara söylemelisin. Şu anda sadece hesaplıyor.

En büyük sayı için şöyle bir yöntem izle. İlk girilen sayıyı enBuyuk diye bir değişkene ata ondan sonra her girilen değeri bununla kıyasla ve eğer büyükse enBuyuk değişkeninin yeni değeri bu olsun.
http://www.canbu.info - Benim blogum, benim fikirlerim, benim dünyam...
----------------------------------------------------------------------------
There is a crack in everything, that's where the light gets in.

Çevrimdışı arlfan

  • Üye
  • İleti: 89
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #12 : 11 Ara 2009, 00:02:37 Cum »
ewt oldu teşekkür ederim :)

Çevrimdışı arlfan

  • Üye
  • İleti: 89
    • Profili Görüntüle
Ynt: C problemleri
« Yanıtla #13 : 12 Ara 2009, 13:49:38 Cts »
tek karakter girdiğimizde char diye tanımlıyoruz peki birden fazla karakter girdiğimizde ne yazıcaz??

Çevrimdışı Ases

  • Admin
  • Üye
  • İleti: 594
    • Profili Görüntüle
    • Kişisel Sitem
Ynt: C problemleri
« Yanıtla #14 : 12 Ara 2009, 16:01:34 Cts »
o zaman char dizisi yapman gerekiyor. Dizileri hiç kullandın mı bilmiyorum ama şu şekilde tanımlanır örnek bir char dizisi :
Kod: [Seç]
char isim[10]
http://www.canbu.info - Benim blogum, benim fikirlerim, benim dünyam...
----------------------------------------------------------------------------
There is a crack in everything, that's where the light gets in.