Program do slowek na niemiecki...

0

Witam. Jestem uczniem mam na jutro na uczyć się słowek na niemiecki, więc wpadłem na pomysł że napisze program do nauki tych słówek. Poniżej podam kod do którego wpisałem pare słowek aby wypróbować program. Prosiłbym o rade, czy może to tak zostać czy można zastosować jakiś lepszy sposób?? (slowek będzie ponad 30) Prosze o pomoc.


#include <iostream>
#include <conio.h>

using namespace std;
class slowka
{
public:
string szalik,obuwie,bluzka;

void wczytaj()
{

    cout<<"1-szalik :";
    cin>>szalik;
    cout<<"2-obuwie :";
    cin>>obuwie;
    cout<<"3-bluzka :";
    cin>>bluzka;

}
void sprawdz()
{
    string a="dobrze";
    string b="zle";
    if(szalik=="halstuch")
    {cout<<"1- "<<a<<endl;} else {cout<<"1- "<<b<<endl;}
    if(obuwie=="schuhe")
    {cout<<"2- "<<a<<endl;} else {cout<<"2- "<<b<<endl;}
    if(bluzka=="bluse")
    {cout<<"3- "<<a<<endl;} else {cout<<"3- "<<b<<endl;}
}
};

int main()
{
slowka s1;
s1.wczytaj();
cout<<endl;
s1.sprawdz();
    getch();
    return 0;
}
2

i daj sobie slowek 1000 nadal bedziesz tak to robic?
Bedzie Ci sie chcialo?

uzyj kontenera std::map w tym przypadku

 std::map <string, string>
1

@The Hound odpowiada sie w postach nie w komentarzach

takie rzeczy sie googluje
http://en.cppreference.com/w/cpp/container/map/operator_at

1
fasadin napisał(a):

@The Hound odpowiada sie w postach nie w komentarzach

takie rzeczy sie googluje
http://www.cplusplus.com/reference/map/map/operator[]/

std::map<std::string, std::string> slownik {
    { "pies", "Der Hund" },
    { "kot", "Die Katze" },
    { "lalka", "Die Puppe" }
};

jest seksowniejsze

0

Dzieki, nie wiedziałem nowy jestem na tym forum .

0

Sam uczyłem się w taki sposób.

#include <string>
#include <iostream>
#include <vector>
#include <random>
#include <fstream>

using namespace std;

int main() {
  random_device re;
  mt19937 generator(re());
  uniform_int_distribution<int> dist(0, 10000);
  string eng, pl;
  vector<pair<string, string>> vec;
  fstream file("input", ios::in);
  while(file >> eng >> pl) {
    vec.push_back(make_pair(pl, eng));
  }  
  file.close();
  while(!vec.empty()) {
    int index = dist(generator) % vec.size();
    auto p = vec[index];
    cout << p.first << '\n';
    cin >> eng;
    if(eng == p.second) {
      cout << "OK\n";
      vec.erase(vec.begin() + index);
    }
    else cout << "NOT OK!\n";
  }
  return 0;
} 

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0