Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.
Aktivasyon mailiniz gelmediyse buraya tıklayın.
Mayıs 12, 2008, 09:15:50 am
41788 Mesaj 9067 Konu Gönderen: 17463 Üye
Son üye: sandstormx
Turk-Php.Com Forum  |  Yardım Forumları  |  Diğer Programlama Dilleri Yardım Forumu  |  C de Aritmetik ve Degerler « önceki sonraki »
Sayfa: [1] Yazdır
Yazan Konu: C de Aritmetik ve Degerler  (Okunma Sayısı 1070 defa)
cellfish
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 42



Üyelik Bilgileri
C de Aritmetik ve Degerler
« : Şubat 20, 2007, 02:27:10 pm »

"C dilinde aritmetik ve degerler" char tipi ornegi ile:

Bu program basit bir aritmetik orneyi dir char tipi ile. char tipi dedigimiz karakter tipi degisken kulandigimiz zaman gereken terimdir.


#include <stdio.h>

void main()
{
   char birinci = 'A' ;
   char ikinci = 'B' ;
   char sonuncu = 'Z' ;

   char sayi = 40 ;

   char yap1 = birinci + 2 ;           /* A ya 2 ekle */
   char yap2 = ikinci - 1 ;              /* B den 1 cikar */
   char yap3 = sonuncu + 2;        /* Z ye 2 ekle */

   printf("Karakter degerleri  %-5c%-5c%-5c", yap1, yap2, yap3) ;
   printf("\nSayisal esdegerler %-5d%-5d%-5d", yap1, yap2, yap3) ;
   printf("\nSayi 40 dir kareketer kodu %c\n", sayi, sayi) ;
}



Programi calistirdiginiz zaman asagidaki cikar:

Karakter degerleri    C      A      \
Sayisal esdeger       67    65    92
Sayi 40 dir kareketer kodu


Programi calistirmak icin:

Windows kulanicilar genelde "Borland" veya "Visual C++" programi kulanirlar. Gayet basit bir sekilde calistirabilirsiniz, ustdeki tabler de gayet acik yaziyor calistirmak icin tikliyip programi yurutebilirsiniz.
 
Unix/Linux kulanicilar derleyicinize gore calisir, genelde gcc programismi.c komutu ile problemsiz calisir. Bazi derleyicilerde programismi.c dosyanizi calistirabilmek icin calisabilir hale getirmeniz gerekebilir. Bunu chmod a+x programismi.c ile calisabilen program yapabilirsiniz.


Program ile ilgili herhangi bir soru veya ogrenmek istediginiz varsa C dilinde, memnuniyetle yardimci olurum.
Iler de daha cok C ve Perl dilin de deney/ornek vericem.

cellfish
Logged

CELLF1SH
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GAT dpu s+:++ a---- C++(+++)>$ UL++++ P+>++ L++>++++ E W++ ?N ?o K w
O M+ ?V PS PE Y+ ?PGP t+@ 5 X++ R+ tv+ b+++(+) DI D+++ G++ e-<++ h@
r--(++) y
------END GEEK CODE BLOCK------
Quadim
PHP Stajyeri
**
Offline Offline

Mesaj Sayısı: 338


Üyelik Bilgileri
Ynt: C de Aritmetik ve Degerler
« Yanıtla #1 : Şubat 20, 2007, 10:07:07 pm »

%-5c%-5c%-5c böyle bir kaşlıp hatırlamıyorum
%5c olma ihtimali war mı ? ayrıca arada \t yok ondan dolay ıfarklı cıkmaz yan yanan cıkarlar..
yanlıssam duzelt.
bılgıler ıcın saol
Logged
andelek
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 80


Üyelik Bilgileri
Ynt: C de Aritmetik ve Degerler
« Yanıtla #2 : Şubat 21, 2007, 01:02:34 am »

Guzel bir bilgi yazmissin sag ol!
Logged
cellfish
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 42



Üyelik Bilgileri
Ynt: C de Aritmetik ve Degerler
« Yanıtla #3 : Şubat 21, 2007, 10:50:00 am »

%-5c%-5c%-5c böyle bir kaşlıp hatırlamıyorum
%5c olma ihtimali war mı ? ayrıca arada \t yok ondan dolay ıfarklı cıkmaz yan yanan cıkarlar..
yanlıssam duzelt.
bılgıler ıcın saol

Bu iki deyim uc degiskenin cikisini gosteriyor iki degisik yolardan.

1.  printf("karakter degerleri  %-5c%-5c%-5c", yap1, yap2, yap3) ;
2.  printf("\nSayisal esdegerler %-5d%-5d%-5d", yap1, yap2, yap3) ;

ilk deyim kaydedilen degeri ceviriyor %-5c kulanarak, donusturme belirticisi (conversion specifier). Bu belirtici, cikicak olan sonucu karakter olarak ve soldaki sirada olmasini sagliyor. Genisligi de 5 degerin de olarak.

ikinci deyimin ayni degiskenleri cikartiyor ama bu sefer degerler tam sayi (integer)  olarak ceviriyo. Bunu da %-5d belirtici ile yaptim. Hiza ve genislik ayni, ama d tam sayi olarak belirtiyor cikisi. Bu iki deyimde gorebiliyorsun ki uc karaketer ve cikislari ASCI kodla siraya giriyor bundan sonraki deyim de.

printf("\nSayi 40 dir kareketer kodu %c\n", sayi, sayi) ;

umarim yardimci olabildim, su an okuldayim, eger yeterli degilse daha sonra genis bir sekilde aciklamasani yaparim arkadasim.

cellfish
« Son Düzenleme: Şubat 21, 2007, 10:57:15 am Gönderen: cellfish » Logged

CELLF1SH
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GAT dpu s+:++ a---- C++(+++)>$ UL++++ P+>++ L++>++++ E W++ ?N ?o K w
O M+ ?V PS PE Y+ ?PGP t+@ 5 X++ R+ tv+ b+++(+) DI D+++ G++ e-<++ h@
r--(++) y
------END GEEK CODE BLOCK------
Quadim
PHP Stajyeri
**
Offline Offline

Mesaj Sayısı: 338


Üyelik Bilgileri
Ynt: C de Aritmetik ve Degerler
« Yanıtla #4 : Şubat 21, 2007, 05:56:29 pm »

%s %c %d %f %a %e bunların warlıgını bılıyorum
benım demek ıstedıgım  ------ işaretinin warlıgıydı.
1 dönem boyunca c dersi aldım su anda da object oriented (ileri c ve squery yapıları) nı goruyorum. aradakı - işareti biraz ters geldi ondan dolayı dedim.
boşluk (null karekter) olsa tmmda. - işaretini tek olarak cıkaramazsın. yani
 
   Programi calistirdiginiz zaman asagidaki cikar:

Karakter degerleri C       A          \
Sayisal esdeger    67     65         92
Sayi 40 dir kareketer kodu
olarak cıktı vermez. output ekranından bahsedıyordum..
Edit -->
Deneme fırsatım yenı oldu :)
[Warning] return type of `main' is not `int'  hatasını alıyorum tam olarak hata da denemez warning.
çözümüde bazı c derleyicilerinde void main() yerine main() kullanabılıyor olman.
void boş değer döndürme / döndürmeme olarak algılıyor..
« Son Düzenleme: Şubat 21, 2007, 06:08:40 pm Gönderen: Quadim » Logged
cellfish
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 42



Üyelik Bilgileri
Ynt: C de Aritmetik ve Degerler
« Yanıtla #5 : Şubat 21, 2007, 07:31:48 pm »

%s %c %d %f %a %e bunların warlıgını bılıyorum
benım demek ıstedıgım  ------ işaretinin warlıgıydı.
1 dönem boyunca c dersi aldım su anda da object oriented (ileri c ve squery yapıları) nı goruyorum. aradakı - işareti biraz ters geldi ondan dolayı dedim.
boşluk (null karekter) olsa tmmda. - işaretini tek olarak cıkaramazsın. yani
 
   Programi calistirdiginiz zaman asagidaki cikar:

Karakter degerleri C       A          \
Sayisal esdeger    67     65         92
Sayi 40 dir kareketer kodu
olarak cıktı vermez. output ekranından bahsedıyordum..
Edit -->
Deneme fırsatım yenı oldu :)
[Warning] return type of `main' is not `int'  hatasını alıyorum tam olarak hata da denemez warning.
çözümüde bazı c derleyicilerinde void main() yerine main() kullanabılıyor olman.
void boş değer döndürme / döndürmeme olarak algılıyor..

Evet   :)
dogrusu bugun okulda denedim, bende de o bahsetdigin warning cikdi ama evde cikmiyor, derleyici ye gore degisiyor. Aslinda dedigin gibi sadece main() kulanip da olur, veya  int main()  de olur cunku sonucda tam sayi veriyor bize   :)

int  (tam sayi) anlamina geliyor bilmeyen arkadaslar icin.


cellfish


Logged

CELLF1SH
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GAT dpu s+:++ a---- C++(+++)>$ UL++++ P+>++ L++>++++ E W++ ?N ?o K w
O M+ ?V PS PE Y+ ?PGP t+@ 5 X++ R+ tv+ b+++(+) DI D+++ G++ e-<++ h@
r--(++) y
------END GEEK CODE BLOCK------
glikoz
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 141


Üyelik Bilgileri
Ynt: C de Aritmetik ve Degerler
« Yanıtla #6 : Mart 11, 2007, 05:41:19 pm »

Teşekkürler '-'yi ben de bilmiyordum.
Bu haliyle bende sorunsuz çalışıyor. (Derleyici: CodeBlocks)
Kod:
#include <stdio.h>

int main()
{
   char birinci = 'C' ;
   char ikinci = 'B' ;
   char sonuncu = 'Z' ;

   char sayi = 40 ;

   char yap1 = birinci + 1 ;           /* A ya 2 ekle */
   char yap2 = ikinci - 1 ;              /* B den 1 cikar */
   char yap3 = sonuncu + 2;        /* Z ye 2 ekle */

   printf("Karakter degerleri  %-5c%-5c%-5c", yap1, yap2, yap3) ;
   printf("\nSayisal esdegerler %-5d%-5d%-5d", yap1, yap2, yap3) ;
   printf("\nSayi 40 dir kareketer kodu %c\n", sayi, sayi) ;
   return false;
}
Logged
Sayfa: [1] Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer: