Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => C/C++ => Konuyu başlatan: yusufburak - 20 Mart 2013, 16:21:21

Başlık: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 20 Mart 2013, 16:21:21
Merhaba. Temel olarak bildiğim C'yi ilerletmek için uğraşayım dedim de :)
Dev C derleyicisini ilk kez kullanıyorum ancak bu derleyiciden .exe'yi nasıl elde ederim ? bunu merak ediyorum.
İlginiz için teşekkürler...
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: AsHeS - 20 Mart 2013, 16:27:33
F9 a bas dosyayı açtığın yerde otomatik üretiyor
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: yusufburak - 20 Mart 2013, 16:37:54
Başlangıçta olmamıştı :) meğer ben 1.ders.c diye kaydettiğim için muhtemelen şimdi oldu :)

Çokkkk teşekkürler :)))
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: yusufburak - 22 Mart 2013, 15:46:53
Bi soru daha sorayım :)
.exe oluşturuyorum ama sayı istedi diyelim sayıyı giriyorum program kendiliğinden çalışıp kapanıyo...
Bekleme komutu hangisi acaba ? Ekranda dursun göstersin bana yani.
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: MC_Skywalker - 22 Mart 2013, 16:06:04
programını CMD içinde çalıştırsan sorun olmaz. önce CMD çalıştırıp DOS moduna git. orda derlediğin exe yi çalıştır. 
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: AsHeS - 22 Mart 2013, 16:19:52
Alıntı yapılan: yusufburak - 22 Mart 2013, 15:46:53
Bi soru daha sorayım :)
.exe oluşturuyorum ama sayı istedi diyelim sayıyı giriyorum program kendiliğinden çalışıp kapanıyo...
Bekleme komutu hangisi acaba ? Ekranda dursun göstersin bana yani.
Programın sonuna system("pause");   yaz
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: yusufburak - 22 Mart 2013, 16:26:16
Alıntı yapılan: AsHeS35 - 22 Mart 2013, 16:19:52
Programın sonuna system("pause");   yaz

c++'ta görmüştüm de denememiiştim oldu teşekkürler :)

Alıntı yapılan: MC_Skywalker - 22 Mart 2013, 16:06:04
programını CMD içinde çalıştırsan sorun olmaz. önce CMD çalıştırıp DOS moduna git. orda derlediğin exe yi çalıştır. 

Bu dediğiniz kitapta da anlatılıyordu ama bi türlü beceremedim bunu :S
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: Tagli - 22 Mart 2013, 18:29:17
Komut satırında .exe dosyasının bulunduğu adrese gidip orada .exe dosyasının adını yazmak gerekiyor. Yanlış hatırlamıyorsam .exe dosyasını siyah ekran üzerine sürükleyince bu iş kestirmeden halledilmiş oluyr ve geriye sadece enter'a basmak kalıyor.
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: yusufburak - 22 Mart 2013, 18:43:25
Alıntı yapılan: Tagli - 22 Mart 2013, 18:29:17
Komut satırında .exe dosyasının bulunduğu adrese gidip orada .exe dosyasının adını yazmak gerekiyor. Yanlış hatırlamıyorsam .exe dosyasını siyah ekran üzerine sürükleyince bu iş kestirmeden halledilmiş oluyr ve geriye sadece enter'a basmak kalıyor.

doğru hatırlıyosunuz :)
Başlık: Ynt: Dev C'den .exe Oluşturma
Gönderen: yusufburak - 26 Mart 2013, 13:46:34
Afedersiniz yeni konu açmamak için burdan sormak istedim... Bu kodda ortalamayı bi türlü bulamıyorum basit bi uygulama ama görmüyorum işte :S Sonucu - olarak veriyo ve baya büyük değerler veriyo :S

#include <stdio.h>

int main () {
    int not,not1,not2,not3,not4,not5,not6,not7,not8,not9;
    int toplam;
    float ort;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not);
    toplam=not;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not1);
    toplam+=not1;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not2);
    toplam+=not2;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not3);
    toplam+=not3;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not4);
    toplam+=not4;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not5);
    toplam+=not5;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not6);
    toplam+=not6;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not7);
    toplam+=not7;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not8);
    toplam+=not8;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not9);
    toplam+=not9;
   
   
    ort=toplam / 10;
   
    printf("yazilinin ortalamasi %f\n",ort);
   
    system("pause");
    return 0;
   


    }
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: Tesla.25 - 26 Mart 2013, 14:05:42
Alıntı yapılan: yusufburak - 26 Mart 2013, 13:46:34
Afedersiniz yeni konu açmamak için burdan sormak istedim... Bu kodda ortalamayı bi türlü bulamıyorum basit bi uygulama ama görmüyorum işte :S Sonucu - olarak veriyo ve baya büyük değerler veriyo :S

#include <stdio.h>

int main () {
    int not,not1,not2,not3,not4,not5,not6,not7,not8,not9;
    int toplam;
    float ort;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not);
    toplam=not;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not1);
    toplam+=not1;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not2);
    toplam+=not2;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not3);
    toplam+=not3;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not4);
    toplam+=not4;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not5);
    toplam+=not5;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not6);
    toplam+=not6;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not7);
    toplam+=not7;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not8);
    toplam+=not8;
   
    printf("Lutfen notu giriniz:");
    scanf("%f",&not9);
    toplam+=not9;
   
   
    ort=toplam / 10;
   
    printf("yazilinin ortalamasi %f\n",ort);
   
    system("pause");
    return 0;
   


    }



scanf içerisinde %d kullanın. not değişkenleri integer, ayrıca toplam değişkenini de float olarak tanımlayın. Bölümün sonucu kesirli olabilir.

mesaj birleştirme:: 26 Mart 2013, 14:06:58

Ve  sadece "not" şeklinde bir değişken kullanmayın derim. Dil için özel bir anlam ifade edebilecek bir kelime.

toplam, ort değişkenlerine ilk değerini verin. Yani sıfır. Alakasız sonuçları çıkmasının nedeni bu değişkenin ilklendirilmemesi. Bu yüzden o anda bellekte bulunan rastgele bir değeri alıyor.

mesaj birleştirme:: 26 Mart 2013, 14:11:04

Tabi böyle bir uygulamayı, diziler kullanarak yaparsanız daha esnek ve performanslı olur. 100 tane değişken olsaydı ne olacaktı? :D :D
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 26 Mart 2013, 14:21:48
Kitap takip ediyorum :) Kitapta dediğiniz gibi döngü kullanmayın diyo yoksa gece uyumadan önce bunu düşünüyodum :D sıfırdan başladm da :S
Ve teşekkür ederim oldu :) takıldıkça burdan sormaya devam ederim...
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: Tesla.25 - 26 Mart 2013, 14:27:46
Alıntı yapılan: yusufburak - 26 Mart 2013, 14:21:48
Kitap takip ediyorum :) Kitapta dediğiniz gibi döngü kullanmayın diyo yoksa gece uyumadan önce bunu düşünüyodum :D sıfırdan başladm da :S
Ve teşekkür ederim oldu :) takıldıkça burdan sormaya devam ederim...

Rica ederim.  ::)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: metaltrrocker - 26 Mart 2013, 14:29:53
ort=toplam / 10;
değilde
ort=toplam / 10.0;
şeklinde yaparsan küsüratı görmen daha da kolaylaşır.
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: EMP_Otto - 26 Mart 2013, 14:38:16
#include <stdio.h>
#include <conio.h>
main () {
int notilk,not1,not2,not3,not4,not5,not6,not7,not8,not9;
int toplam=0; // baslangıc degerleri vermen gerekli.Eger baslangıc degeri vermezsen derleyici o an ki ramin o bölümünde bulunan degri verir
float ort=0; //Ramin o bölümündeki deger 0 olabilecegi gibi baska degerlerde olabilir.Bu yüzden sonucun farklı cıkıyor.
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&notilk); //Ayrıca scanf ile degişkenleri alırken %f ile degil %d ile almalısın.Cünkü integer olarak tanımlamıssın
    toplam+=notilk;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not1);
    toplam+=not1;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not2);
    toplam+=not2;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not3);
    toplam+=not3;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not4);
    toplam+=not4;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not5);
    toplam+=not5;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not6);
    toplam+=not6;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not7);
    toplam+=not7;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not8);
    toplam+=not8;
   
    printf("Lutfen notu giriniz:");
    scanf("%d",&not9);
    toplam+=not9;
   
   
    ort=toplam / 10;
   
    printf("yazilinin ortalamasi %f\n",ort);
    getch();
    }

Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: polleme - 26 Mart 2013, 14:48:15
Dizi ve döngü kullanımıyla ortadaki 30 satırlık kod döngü ve 3 satırla halledilebilir. Örnek:

#include<stdio.h>
#include<conio.h>

main()
{
float i,toplam,sayi,ortalama;

toplam=0;

for (i=1;i<10;i++)
{
printf("%1.0f .sayi gir...",i);

scanf("%f",&sayi);

toplam+=sayi;
}
printf("Girilen Sayıların Toplamı=%f\n",toplam);

ortalama=toplam/10;

printf("Girilen Sayıların Ortalaması=%6.2f",ortalama);

getch();
}

Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: EMP_Otto - 26 Mart 2013, 14:52:22
Evet halledilebilir ama arkadas öyle yazdı diye bende uzun uzun yazdım(daha dogrusu kopyaladım ;D)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 26 Mart 2013, 14:54:20
:) hepinize teşekkür ediyorum...
Şimdilik sorun çözüldü devam ediyorum uygulama yapmaya İleri C Programlama kitabını takip ediyorum Altaş Yayınlarının orada kısa yolla yapmayın diye uyarı olduğu için döngülere girmedim :))

Tekrardan çok teşekkür ediyorum ileriki sorularda görümek üzere :D
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: polleme - 26 Mart 2013, 14:58:36
Bildiğinize göre sorun yok zaten. Kolaylıklar dilerim. :)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: Tesla.25 - 26 Mart 2013, 14:58:44
Kitabın mantıksızlığı. printf fonksiyonunu kullanmadan, kendiniz yazın bir fonksiyon ekrana bastırın dese tamam da, aynı satırı 10 kere yazdırmanın mantığı ne ki?
Kaan Aslan 'ın A 'dan Z 'ye C Klavuzu kitabını tavsiye ederim.
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: polleme - 26 Mart 2013, 15:01:21
Kaan Aslan'ın kitabı bu konuda başucu kitabımdır. Deitel'in kitabı da anlatım olarak çok güzel, hem C, hem C++ var.
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 26 Mart 2013, 15:06:33
Elazığ'da iken almıştım bu kitabı anlatımı güzel aslında belki daha kısa yolu da vardır ama bende genel olarak copy paste yaptım aynı noktalarda ve ben iyi bi yazılımcı olmak istiyorum o yüzden pek umurumda değil yazma kısmı :) Umarım iyice C öğrenirim... tabi şurda 16 günüm kaldı :)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: EMP_Otto - 26 Mart 2013, 15:08:52
Programlamayı C İle Öğreniyorum-
Muhammet Yorulmaz-Palme yayınevi
kitabını tavsiye ederim.Adım adım anlatıyor herşeyi


mesaj birleştirme:: 26 Mart 2013, 15:11:35

@ yusufburak  kardes elazıgda ne işin var acaba?  :)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 26 Mart 2013, 15:14:30
hocam orda üniversite okudum :)
artık bu kitabı takip edicem ya :S genelde Altaş Yayınlarının kitabı geçti hep elimize alıştık..
teşekkür ediyorum cümleten hocalarıma :)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: EMP_Otto - 26 Mart 2013, 15:17:53
Bende elazıgda mühendislik okuyorumda :)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 26 Mart 2013, 15:18:24
:) hayırlısı olsun ben bititrdim kurtuldum şükür :D
Hangi bölümdesin ?
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: EMP_Otto - 26 Mart 2013, 15:20:00
Mekatronik müh.   son dönem benimde bitiyor insallah :)
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 26 Mart 2013, 15:22:40
bitmiş maşAllah :) hayırlı olsun...
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 29 Mart 2013, 15:52:36
if (adet<10) {
                 fiyat*=adet;
                 printf ("%d adet kitap fiyati %f TL'dir.\n",adet,fiyat);
                 } else {
                       
    if (adet>=10 && adet<20) {
               
                 fiyat*=adet;
                 indirimsiz=fiyat*0.1;
                 indirimli=fiyat-indirimsiz;
                printf("%d adet kitap fiyati %.3f TL'dir.\nAncak indirimi ile beraber %.3f TL olmaktadir.\nIndirim orani 0.1'dir.\n",adet,fiyat,indirimli);
                   
                   } else {
                       
                       if (adet>=20) {
                                     
                                     fiyat*=adet;
                                     indirimsiz=fiyat*0.15;
                                     indirimli=fiyat-indirimsiz;
                                     printf("%d adet kitap fiyati %.3f TL'dir. \nAncak indirimi ile birlikte %.3f TL olmaktadir.\nIndirim orani 0.15'tir\n\n\n",adet,fiyat,indirimli);
                                     
                                     }
                   }
             }       




Hocalarım merhaba.
Ben bu örneği yaptım kendimce ama burda if - else yapısında kullanılan "{","}"
başlangıç ve sonlandırmaları pek anlamadım.
ilk else için bir "{" açıyoruz ve tüm işlemler bitene kadar kapatmıyoruz. Diğerleri için ise açıyoruz ama kapatmıyoruz.
Böyle mi ?
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: EMP_Otto - 29 Mart 2013, 16:58:37
Merhaba :)
Her if ve else yapısı içi {} parantez acıp kapatman gerekir.Ancak if içerisinde if ve else yapısını kullanabilirsin.
Mesela ;
if(x<10)
{
       if(x<5)
      {
         printf("x sayisi 5 ten kücükütür.");   
      }
      else
      {
         printf("x sayisi 5 ten büyük 10 dan kücüktür.");
      }
}

insallah anlatabilmişimdir.Anlamazsan daha detaylı anlatmaya calısırım.Kolay gelsin
Başlık: Ynt: Dev C'den .exe Oluşturma ve C Soruları
Gönderen: yusufburak - 29 Mart 2013, 19:25:23
tamam hocam anladım :) çiğ köfte sata sata beynim ağırlaştı :D