All pastes #457861 Raw Edit

David

public cpp v1 · immutable
#457861 ·published 2007-04-25 16:34 UTC
rendered paste body
#include <iostream>#include <vector>#include <string>using namespace std;// Accio que dibuixa la forcavoid dibuxa_forca(string acertat, int errors) {    cout << " " << acertat << endl;    cout << endl << " +----+" << endl;        // Primera linia    cout << " |/";    if (errors >= 1) cout << "   |";    cout << endl;        // Segona linia    cout << " |";    if (errors >= 1) cout << "    O";    cout << endl;        // Tercera linia    cout << " |";    if (errors >= 2) cout << "   /|\\";    cout << endl;        // Cuarta linia    cout << " |";    if (errors >= 3) cout << "   / \\";    cout << endl;        // Base    cout << "-+-" << endl;    }// Funcio que diu si una lletra es troba dins d'una paraulabool hi_es(string paraula, char x) {    for (int i = 0; i < paraula.size(); ++i) {        if (paraula[i] == x) return true;    }    return false;}// Accio que mostra les lletres acertadesvoid mostrar(string paraula, string& acertat, char lletra) {    for (int i = 0; i < paraula.size(); ++i) {        if (paraula[i] == lletra) acertat[i] = lletra;    }}int main() {    string paraula;    cin >> paraula;    string resposta = "******";        int errors = 0; // Contador d'errors        vector<bool> abecedari(26, false);    dibuxa_forca(resposta, errors);    cout << endl;        while (resposta != paraula and errors < 3) {        char x;        cin >> x;        if (not abecedari[x - 'A']) {            abecedari[x - 'A'] = true;            if (hi_es(paraula,x)) mostrar(paraula, resposta, x);            else ++errors;        }        else ++errors;                dibuxa_forca(resposta, errors);        cout << endl;            }    cout << " FINAL" << endl;}