C++ Dersleri – 15 – C++ Diziler Konu Anlatımı

Merhabalar arkadaşlar.C++ dersleri videolu anlatımlarımıza kaldığımız yerden devam ediyoruz.Önceki dersimizde şuana kadar işlediğimiz C++ olguları ile ilgili örnekler çözmüştük.Bu dersimizde ise diziler konusuna giriş yapıyoruz.Elimden geldiğince C++’ta dizilerin mantığını anlatmaya çalıştım.C++ dizi tanımlama,c++ dizi örnekleri,c++ dizi boyutları,c++ dizi sıralama gibi dizilerdeki genel mantığı verdiğimi düşünüyorum.Ardından konuyla ilgili pekiştirici örnekler çözdüm ve dersi bitirdim.

Katar dizileri neden yok diyen arkadaşlar; bir sonraki dersimizde katar dizilerini ayrıntılı olarak anlatacağım.3-5 dakikaya sıkıştırmak istemedim katar dizileri gibi önemli bir konuyu.

C++ Diziler Konu Anlatımı 1. Kısım

C++ Diziler Konu Anlatımı 2. Kısım

One thought on “C++ Dersleri – 15 – C++ Diziler Konu Anlatımı

  1. Hocam öncelikle herşey için cok teşekkür ederim.ama bişey diyecem ben videoları izlerken video önde gidiyo ses arkadan gelıyo bu benden mi kaynaklanıyodur nasıl çözebilirim..?

  2. @Umut; yorumun için teşekkürler.
    Sesin arkadan videonun önden gitmesi olayı benim hızlı anlatırken konuşmamı sonradan yapmamdan kaynaklanıyordu.İleriki derslerde buna daha çok dikkat ettim..

  3. hocam c++ ile windows uygulaması nasıl geliştirebiliriz
    her yerde komut satırı çıkıyo karşıma

  4. Muhammde hocam ben meb de bir sınava hazırlanıyorum da, önceki çiıkmış soruları çözerken bir c sorusu kafamı karıştırdı.
    soru şöyle:
    char isim [1000][10]; isim değişkeni için aşağıdakilerden hangisi doğrudur?
    doğru şık : “isim 10 elamanlı 1000 byte uzunluğunda karekter bir dizidir”
    Bunu ben anlamadım sorudaki dizi iki boyutlu 1000×10 elamanlı bir dizi değilmidir? doğru şık biraz enteresan değil mi? bu dizi nasıl 10 elemanlı olur ve 1000 byte uzunluğu neye göre diyor.
    Hocam bunu açıklarsan sevinirim.

  5. @ahmet;Windows uygulamaları geliştirmeyi vs.. yüksek düzeyde şeyleri C# ile anlatacağım.

    @Levent;.İlk baştaki int değil char. Eğer int olsaydı dediğiniz doğruydu tabiki.Ancak char olunca cevap doğru ( : Yani sanırsam ( :

  6. Sağol Muhammed Hocam açıklaman için, bu C++ beni programcılıkta okurken de korkutmuştu, okulu geçecek kadar çalıştık şimdi senav vs. yine karşımıza çıktı. bu C++ dan kurtuluş yok ya öğreneceğiz ya da öğreneceğiz..

  7. son örnekteki iki boyutlu dizide programın aynısını yazıyorum ama satır ve sütunların hepsinde 29 yazıyor

    1. Enteresan.Muhtemelen bir yerde parantez hatası falan yapıyorsunuzdur.İnceledikten sonra aynı hatayı alırsanız tekrar yazın elimden geldiğince yardımcı olayım..

  8. 2.videoda dizileri sıralarken for döngüsü kullanarak x ile y 0 1
    1 0
    fln şeklinde alt alta sıralanmasını anlayamadım normalde
    1 1
    1

  9. 2.videoda dizileri sıralarken for döngüsü kullanarak x ile y 0 1
    1 0
    fln şeklinde alt alta sıralanmasını anlayamadım normalde
    0 0
    1 1
    2 2
    şeklinde gitmesi gerekmezmi o kısmı anlamdım yardımcı olursanız sevinirim iyi çalışmalar…

    1. Şöyle düşün uygar;
      x 0 iken y 0,
      x 0 iken y 1,
      x 0 iken y 2 gibi gidiyor.
      x 0’lar bittikten sonra artık x 1 e geçiyor.
      x 1 iken y 0,
      x 1 iken y 1
      bu şekilde devam ediyor..

  10. Hocam bu matrislerde yani 2 boyutlu dizilerde satır sutun elemanlarını kucukten buyuge sıralama olayı var
    bunu bır tane ornekle acıklarmısın?
    Birde n*n matris dendıgı zaman bunu nasıl tanıtıcaz
    örnegın
    int deneme[n][n];
    gibimi yoksa içi boş mu kalıcak?

    1. Örneğin;3’e 3’lük matris diyorsa int x[3][3]; diye tanıtırız.
      İlk soruda da 2 tane for döngüsü kurarsın,i-j değişken tipi tanımlarsın mesela.Yazdırırsın hepsini sırayla ve sıralatırsın.
      Önceki for döngüleri konusunda buna benzer şeyler anlatmıştım yanlış hatırlamıyorsam..

  11. Sagolasın cevaplamıssın daha onceden gorememıstım de
    şimdi ben bi program yazdım bu programda Bir n*n seklındekı kare matrisin transpozesini bulucam ve buldugum matrisinde en buyuk ve en kucuk elemanlarını bulucam ama bıyerde tıkandım yardım edeblırmsn
    #include
    main()
    {
    int i,j,n,A[10],B[10];
    cout<>n;
    for(i=0;i<n;i++)
    {
    for(j=0;j<n;j++)
    {
    cout<>A[i][j];
    }
    }
    for(i=0;i<n;i++)
    {
    for(j=0;j<n;j++)
    {
    cout<<"B[i][j]="<<A[j][i];
    }
    }
    return 0;
    }

    1. Hocam artık kendinizin yazdığınız sorulara cevap vermiyorum maalesef,vaktim çok kısıtlı çünkü,kusura bakmayın..

  12. hocam, bu konu anlatiminda yaptiginiz ornegin birini denedim ve sizin elde ettiginiz gibi ayni sonuc elde edemedim? acaba compiler de mi bir hata var, bende sizin gibi devc++ kullaniyorum, defalarca kontrol etmeme ragmen bir turlu sonucu elde edemedim.

    main () {

    int deneme[3][2]={(1,2),(5,7),(8,4)};
    int x,y;

    for(x=0; x<3; x++)
    for(y=0; y<2; y++) {

    //cout << "[" << x << "][" << y << "]: ";
    cout << deneme[x][y] << "\n"; }

    getch(); return 0; }

    programi boyle yazmama ragmen elde ettigim sonuc :
    0 0 : 2
    0 1 : 4
    1 0 : 7
    1 1 : 0
    2 1 : 0
    2 2 : 0
    seklinde… sorun nerededir ?

  13. hocam sizden çok faydalandık.hacettepe üniversitesi bilgisayar programcılığı bölümü sizin derslerinizle işleniyor.çook teşekkürler emeğinize sağlık.siz olmasaydınız bunları anlamak gerçekten zordu.

  14. katar dizi : string dizileridir yani ki ;
    char hafta_isimleri[][12]={“Pazartesi”,”Sali”,”Carsamba”};
    gibi tanımlama yapılması sağlanır.
    ilk [] kaç tane ekleyeceğin ,2.si ise bir kelimenin maksimum uzunluğudur.

  15. şefik söylediğin programın nette bir çok örneği varr.. Google yaz.İstediğinden fazla sonuç bulursun bence.Kolay gelsin

  16. hocam sesin sonradan gelmesi diziler gibi önemli bir konuda gerçekten izleyiciler açısından büyük bir eksiklik tam olarak hiç bir şey anlayamadım..

  17. Eline sağlık Muhammed kardeşim.Emeklerine teşekkürler canı gönülden.
    Bir sorum olacak bu derslerin hepsini anlayarak bitirdiğimi var sayıyorum.Kendimi bu konuda yetkin hissedebilir miyim.Yoksa daha fazla incelemem gereken döküman,konu vs olacak mı ?Eğer varsa önerebilir misin Şimdiden teşekkürler.

  18. Merhaba..
    Bu Katar dizilerine başlangıç değeri atama videosunda kullandığınız
    char a[][80]={“pazar”,”pazartesi”,”salı”};
    for(i=0; i<=a[i][0]; i++) … döngüsünde döngüyü bitiren ifadenin ne olduğunu anlayamadım i değerinin üst sınırı değil ama j bitiriyo olabilir ama genede anlayamadım?

  19. Hocam bize random ile ilgili örnekler sunma imkanınız varmı? okulda hoca ödev verdi nasıl yapıcam bilemiyorum?

  20. merhaba benm bir sorum olcak.
    c++ da mesela verilen 20 tane sayı var, bu sayıların en büyük ilk 5 tanesini ve en küçük 5 taneyi sıralayıp yazdıran bir programı nasıl yazdırırız? sanırım dizilere giriyor bu soru yapamadım hiç fikrim yok bu konuda yardımcı olur musunuz

  21. merhaba,

    muhammed kardeş, bazı derslerinde sesin videodan önce gidiyor, bu da anlamamızı oldukça zorlaştırıyor. bir arkadaş daha bahsetmiş bu durumdan, sen sorun benden kaynaklanıyor demişsin ama alakası yok. ilgilenebilirsen sevinirim, iyi çalışmalar.

  22. Hocam elinize sağlık güzel anlatmışsınızda C++ sadece bu kadar dersten mi oluşuyor? Mesala ben program içinde başka bir pencere açmak istiyorum dosya açmak istiyorum bu kodlar yeterli olacak mı?

  23. Yazacağınız C++ programı aşağıdaki işlemleri gerçekleştirecektir.

    1-Programınız parametre olarak bir dizin ismi alacaktır. Bu bilgiyi nasıl alacağınızı bulmak için daha önceki bilgilerinizi kullanınız. main fonksiyonuna parametre olarak gelen değerleri okuyunuz.

    2-Parametre olarak gelen dizin içindeki bütün dosyalar okunacak içinde geçen kelimeler ile dosya arasında bir ilişki tutulacaktır.

    Bu ilişkiyi aşağıdakine benzer bir class ile tutabilirsiniz:
    class dokuman{

    public:

    private:
    char dosyaismi[50];
    char kelimeler[1000][21];
    }

    Bu şekilde tuttuğunuz yapı sayesinde, hangi dosyanın hangi kelimeleri içerdiği bilgisini saklayabiliyorsunuz. Dosya isimleri en fazla 50 karakter, kelimeler de en fazla 20 karakter olarak kabul edilebilir. Bir dosyada en fazla 1000 kelime olacağını da varsayabilirsiniz. Parametre olarak verilecek klasor icinde en fazla 2000 dosya olacagini varsayabilirsiniz.

    3-Programınız çalıştıktan sonra dosyaların içindeki kelimeleri dokuman classı türündeki objelere yükleyecektir. Yükleme esnasında noktalama işaretlerini kelimelere dahil etmeyecektir. Yalnızca üstten kesme işareti olan ‘ kelimeye dahil edilebilecektir. Yükleme bittikten sonra, programınız aranacak kelimeyi soracaktır.

    4-Aranacak kelime olarak -1 yazıldığında programdan çıkılacaktır.

    5-Aranacak kelime girildiğinde, programınız içinde aranan kelime geçen dosyaların isimlerini listeleyecektir. Ardından tekrar aranacak kelimeyi soracaktir veya -1 ile çıkılacaktır.

    Bu ödevi yapabilmeniz için C++ kullanarak dosya okuma ve yazma ile ilgili araştırma yapınız.

    Kesinlikle arama esnasında dosyalardan okuma yapılmayacaktır! Programınız ilk önce verilen klasörün içindeki bütün dosyaları yukarıda belirtilen yapılar halinde modelleyecektir. Arama dosyaların kendileri üzerinde değil, bu yapılar üzerinde yapılacaktır.

    yardımcı olrmsnz

  24. Hocam ın emeğine sağlık Allahtan okulda filan değiliz hocamızı seçme imkanımız var

  25. Selam.. C++ kitabınız bende mevcut fakat orada olmayan daha doğrusu az anlatılmış bir konu hakkında size sorum olacaktı. Pointer’lar ve Array’ler arasındaki ilişki… Hocamız bu konuya çok dikkat çekmişti ve finalde çıktı,yapamadım. Büyük ihtimal bütünlemedede çıkacak. Kafamda pointer lar hakkında az çok birşey var. Aynı şekilde array ler içinde geçerli. Ama arasındaki ilişki diyince,kafamda birşey belirmiyor. Yani sanırım konulara tam hakim olamayışımdan..

    Bu konuyla ilgili bir videonuz varsa linkini gönderirmisiniz. Eğer yoksa kısaca anlatabilirmisiniz??

  26. Hocam,
    peki dizileri oluştururken dizinin herhangi bir karekteri yerine nasııl boşluk karakteri kullanabilirim..

  27. Sevgili muhammed,

    Seni tebrik ederim şu anda 15. Dersi bitirmiş bulunmaktayım. Zamanında Üniversite 1. sınıfta algoritma diye bir dersimiz vardı. Algoritma dersinde C++ öğrenmiştik ancak seni tebrik ederim senin sayende çok daha iyi anladım. Asıl amacım C# öğrenmekti ama internetteki kaynakların çoğunda C# daha zor dedikleri için C++ öğrenerek kolaydan başlamak istedim. Çok iyi anlatıyorsun seni tekrar tebrik ederim. Başarılarının devamını dilerim.

    İkinci olarak burada benimle birlikte dersleri takip eden arkadaşlar için diziler konusu ile ilgili kendim bir örnek program yazdım daha önce öğrendiğimiz do while , if else gibi komutlar kullanarak sadece istenilen satır ve sütundaki değeri veren bir program. Mesajımın altında kodları paylaşacağım eğer düzgün çıkmazsa diye not defterine yazılmış halde link veriyorum : http://s3.dosya.tc/server29/oyj1hT/YeniMetinBelgesi.txt.html

    #include
    #include
    using namespace std;

    main() {

    int x,y;
    int dizi[5][2]={{1,2},{3,4},{5,6},{7,8},{9,10}};

    do{

    cout << "3 Satir ve 5 sutundan olusan \ndizinin elemanlarini gormek icin\n\n\n";
    cout <> x;
    cout <> y;

    cout << "\n\n\n";
    if (x-1 && y-1){
    cout << "[" << x << "][" << y << "]: ";
    cout << dizi [x][y] << endl << endl << endl;

    }
    else{
    cout << "\n\n\nYanlis Bir Satir veya Sutun Numarasi Girdiniz\n";
    cout << "Lutfen Tekrar Deneyiniz.\n\n\n\n\n";
    }

    cout <<"Devam Etmek Icin Bir Tusa Basiniz..\n\n\n";
    }while(getch());
    return 0;
    }

  28. selam arkadaşlar yardımcı olursanız sevinirim .

    bir matrisin tersini bulma: nasıl yapılıyor programı yapabilen varsa cevaplayabilir mi ?

    çok önemli rica ederim.

  29. #include “stdafx.h”
    #include
    using namespace std;

    int main()
    { int a[3][2]={{1,2},{3,4}};

    for(int i=0; i<=3; i++)

    for(int j=0; j<=2; j++)

    cout<<a[i][j]<<endl;

    system("pause");
    return 0;
    }
    hatayı anlayamıyorum. normalde adresleri cıkmaması gerekıyor ? yardım edebilirmisiniz

  30. Hocam tüm emeklerin için çok sağol sayende öğreniyorum 🙂 yıl olmuş 2015 ben hariç hiç yorum yok bu tarihte 🙂 Daha önce çoğu kişi, yorumda yaptığı denemeleri atmış ben de bu derste anlatılanları kendimce harmanladım ve tabloyu görsel anlamda da excel gibi dos ortamına aktardım eksiksiz çalışıyor.İnsan yaptıkça mutlu oluyor 🙂

    #include
    #include

    using namespace std;

    main() {
    int tablo[3][3]={{1,2,3},{4,5,6},{7,8,9}};
    int x,y;
    cout << "Bu Bir Tablodur.\n\n";
    for(x=0;x<3;x++){
    for (y=0;y<3;y++){
    if(x==0 && y==2){
    cout << "[" << x << "] [" << y << "] :";
    cout << tablo[x][y] << "\n";
    continue;
    }
    if(x==1 && y==2){
    cout << "[" << x << "] [" << y << "] :";
    cout << tablo[x][y] << "\n";
    continue;
    }
    cout << "[" << x << "] [" << y << "] :";
    cout << tablo[x][y] << "\t";

    }

    }
    getch ();
    return 0;
    }

    Budur.Biraz uğraştım tabi yeni öğreniyorum ama tablo halini dosa uyarladım.

  31. Muhammet Bey boylesi ogretici bir dille C++ u anlattiginiz icin size minnettarim, bir kabustan kurtuoldum desem yeridir. sizden bir ricam var acaba C++ Diziler Konu Anlatımı 1. Kısım ve 2. kisim videolarini da koyabilir misiniz? tesekkurler, iyi gunler

  32. Merhaba 15.Diziler Konu anlatımı 1 ve 2.kısım açılmıyor ilgilenirseniz sevinirim teşekkürler.

  33. Hocam, bunun gibi bazı videolar çalışmıyor. Lütfen bakar mısınız?

    Bu videoları youtube den aramaktan bıktım!

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir