Herkese merhaba, C++ Örnek Projeler – Kolay Seviye 6 Adet #3 yazım ile C++ derslerine devam ediyorum. Bu dersimizde C++ üzerine kolay seviyede 6 adet problem ve çözümlerine bakacağız. Daha önceki iki dersimizde giriş seviyelere 2 ayrı derste bakmıştık. Buradan ve buradan o derslere ulaşabilirsiniz. Biliyorsunuz Yapay zeka dersleri için C++ ‘a öğrenmeye başlamıştım. Yapay zeka konusunda bir kaç sıralama algoritmasına değinmiştik. Yakın zamanda güzel bir kurs bulmuştum. O kursta 75 tane örnek yer alıyor. Bu dersin github sayfasına giderseniz ilgili kursun bağlantısına ulaşabilirsiniz.
C++ Örnek Projeler – Kolay Seviye 6 Adet #3
Bu yazımda 6 tane örnekten bahsedeceğim. Bu örnekler kolay seviye örneklerdir. Önceki iki derste giriş seviye yani aşırı kolay konulardı. Giriş kısmında da bahsettiğim kursu bulmamdan dolayı bu yazıları yazma gereği duydum. İlgili kursa, alt kısımda vereceğim github sayfasından ulaşabilirsiniz.
1 – Parametre olarak gönderilen string ifadesi boş ise (space karakteri boş değildir) True, boş değil ise False değer döndüren metodu yazın.
// Kod Egzersizi 1 // String boş ise yani hiç karakter yok ise true var ise false dönen metot. #include <iostream> bool isEmpty(std::string str) { /*Çözüm 1:*/ //if (str.length() == 0) return true; else return false; /*Çözüm 2:*/ //return (str.length() == 0) ? true : false; /*Çözüm 3:*/ //return (str.length() == 0); /*Çözüm 4:*/ return str.size() == 0; }
Burada 4 farklı çözüm görebiliyorsunuz.
- length uzunluk ifade eder. Değer içerisindeki karakter sayısını verir
- size uzunluk ifade eder. Uzunluğu byte cinsinden ifade eder.
2 – Parametre olarak aldığı dizinin ilk karakterini döndüren metodu yazın.
// Kod Egzersizi 2 // Parametre olarak aldığı dizideki ilk karakteri döndğren metotu yazın. #include <vector> #include <iostream> int getFirstValue(std::vector<int> arr) { return arr[0]; }
Dizi olduğu için 0. indexteki ifadeyi alıyoruz.
3 – Parametre olarak aldığı ad ve soyadı, soyad, ad şeklinde döndüren metodu yazın.
// Kod Egzersizi 3 // parametre olarak aldığı isim ve soyismi, soyisim, isim şeklinde yazıdran metodu yazın. #include <iostream> std::string concatName(std::string firstName, std::string lastName) { return lastName + ", " + firstName; }
4 – Aldığı parametreler üzerinden prob (kar), prize (ödül) ve pay (ödeme) üzerinden prob*prize > pay doğru ile True değilse False döndüren metodu yazın.
// Kod Egzersizi 4 // kar * ödül > ödeme karşılaştırması doğru ise true, değil ise false gönderecek metodu yazın. bool profitableGamble(float prob, int prize, float pay) { return prob * prize > pay; }
Burada > operatörü kullandığımız için işlemin sonucu olarak direk logic value yani mantıksal değer döner.
5 – Parametre olarak girilen iki string değerin karakter sayıları aynı ise True değilse False dönene metodu yazın.
// Kod Egzersizi 5 // dışarıdan girilen değerlerin karakter sayıları aynı ise true, değil ise false dönen metodu yazın. #include <iostream> bool comp(std::string str1, std::string str2) { return str1.length() == str2.length(); //return str1.size() == str2.size(); }
Lenght ve Size arasındaki fark 1. örnekte verilmiştir.
6 – Bir pasta düşünün. yazılacak metot dilim sayısı, kişi sayısı ve kişi başına düşen dilim sayısı parametrelerini alsın. Pasta, kişilere yetiyor ise True yetmiyor ise False dönen metodu yazın.
// Kod Egzersizi 6 // bir pasta olsun, metota verilen parametreler pastadaki dilim, kişi sayısı, kişi başı dilim sayısıdır. // kişilerin yediği dilimler, pastadaki dilim sayısını geçerse false, değilse true dönen metodu yazın bool equalSlices(int total, int people, int each) { if (people == 0) return false; else if (people * each <= total) return true; else return false; /*En kısa cevap*/ //return people*each<=total; }
Gördüğünüz gibi arkadaşlar, önceki iki derslere göre bu örnekler daha zor ve giderek daha da zorlanıyor.
C++ Örnek Projeler – Kolay Seviye 6 Adet #3 yazımda bu kadardı arkadaşlar. Bu dersler Yapay Zeka temelinde olduğundan dolayı ilgili kategorinin derslerine ulaşmak için bağlantıya tıklayabilirsiniz. Ayrıca C++ dersleri içinde bir sayfa hazırladım. O sayfaya da bağlantıya tıklayarak ulaşabilirsiniz.
Her zamanki gibi Github projesine bağlantıya tıklayarak ulaşabilir ve indirebilirsiniz. Ayrıca bu yazının PDF’ine buraya ve ya buraya tıklayarak ulaşabilirsiniz. Discord’a katılmayı unutmayın.
Diğer derslerde görüşürüz.
Bol Kodlu günler! ?