c++ Soru

Başlatan TRKağan, 18 Nisan 2016 - 19:52:52

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

TRKağan

Herkese merhaba. C++ da yeniyim ve yavaş yavaş öğreniyorum.
Ancak bir sorun var. Ben C++  da bir edebiyat sözlüğü gibi bir şey yapacağım.
Mesela kullanıcı yazar ismini girdiğinde o yazarın tüm eserleri sıralanacak. Bunu if else ya da başka bir türde nasıl yapabilirim? Birde bunu ubuntuda değil windowsta yapacağım.
Yardımlarınız için şimdiden teşekkürler.
Son olarak kendi yaptığım hesap makinesinin kodları bitince paylaşacağım. Biraz gelişmiş bir hesap makinesi:)

ahmet_matematikci

#1
Ben java da çözmeye çalıştım soruyu.
Ama Algoritma buna yakındır.


Kabaca mantığı bu.
for(){
if() {
/////
for() {
/////
         }
      }
}


Fikir olması açısından yazdım.

Bu konuda uzman arkadaşlar daha güzel cevap vereceklerdir ama sen neler yaptığını ortaya koymadan cevap geleceğini düşünmüyorum.


Soru hakkında detay verilmediği ve verilerin veritabanında, mı .txt formatında mı  yada .xls formatında olup olmadığı belirtilmediği için
Yazarlar ve kitapları dizi olarak düşündüm.
String[][] Yazarlar = { { "1", "a" }, { "2. Yazar ", "{x,y,z}" }, {"3.Yazar  ", "{k,l,m,n}" } };

2 boyutlu bir dizi tanımladığım için iç içe 2 adet for döngüsü kullandım
package Bolum8Kutuphaneler;

import java.util.Scanner;

public class YazarBul {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);
String YazarBul;
System.out.println("Aranacak yazar ismini giriniz");
YazarBul = input.next();
System.out.println("Arama başladı");
// ilk indisler 1,2 ve 3 yazarlar olsun
String[][] Yazarlar = { { "orhan", "--->java kitabı" }, { "ali", "--->{aynali,titanic,cevale}" }, { "veli", "---->{ubuntu,linıx,mint,nane}" } };
for (int i = 0; i < Yazarlar.length; i++) {

if (YazarBul.equals(Yazarlar[i][0])) {
System.out.println("Yazarlar bulundu");
System.out.println("Aranana yazar " + Yazarlar[i][0]);
System.out.println("Kitaplarıa");
for (int j = 0; j < Yazarlar[i].length; j++) {

System.out.print(Yazarlar[i][j]);

}
}

}

}

}

♥ Kız tavlamak için kahraman olmak gerekmez. Doğru kadın zaten sizi kahraman yapar ;)

TRKağan

Az önce forumda, yaptığım gelişmiş hesap makinesini paylaştım.  https://forum.ubuntu-tr.net/index.php?topic=51521.0
Bunun gibi bir consol uygulaması olacak veriler .txt formatında olabilir.

Amenofis

Anahtar-değer çifti tutan herhangi bir veri yapısı kullanabilirsin, tercihen std::map.

map<string, vector<string> > eserler;
gibi...