Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <ctime>
- using namespace std;
- void zamijeni(char& a, char&b) {
- char c = a;
- a = b;
- b = c;
- }
- string nasumicni() {
- string znamenke = "0123456789";
- int a, b;
- srand(time(NULL));
- for (int i = 0; i < 1000; i++) {
- a = rand() % 10;
- b = rand() % 10;
- zamijeni(znamenke[a], znamenke[b]);
- }
- return znamenke.substr(0, 4);
- }
- int t(string pogodi, string pokusaj) {
- int brojac = 0;
- for (int i = 0; i < 4; i++) {
- if (pogodi[i] == pokusaj[i])
- brojac++;
- }
- return brojac;
- }
- int v(string pogodi, string pokusaj) {
- int brojac = 0;
- for (int i = 0; i < 4; i++) {
- for (int j = 0; j < 4; j++) {
- if (pogodi[i] == pokusaj[j] && pogodi[i] != pokusaj[i]) {
- brojac++;
- break;
- }
- }
- }
- return brojac;
- }
- bool jesu4(string pokusaj) {
- if (pokusaj.length() == 4)
- return true;
- return false;
- }
- bool jesuZnamenke(string pokusaj) {
- string znamenke = "0123456789";
- bool znamenka;
- for (int i = 0; i < 4; i++) {
- znamenka = false;
- for (int j = 0; j < 10; j++) {
- if (pokusaj[i] == znamenke[j]) {
- znamenka = true;
- break;
- }
- }
- if (!znamenka)
- return false;
- }
- return true;
- }
- bool ponavljanje(string pokusaj) {
- for (int i = 0; i < 4; i++) {
- for (int j = i+1; j < 4; j++) {
- if (pokusaj[i] == pokusaj[j])
- return true;
- }
- }
- return false;
- }
- bool pogodak(string pogodi, string pokusaj) {
- if (pogodi == pokusaj)
- return true;
- return false;
- }
- int main() {
- string pogodi = nasumicni(), pokusaj;
- cout << "Zamislio sam cetveroznamenkasti broj!\nPokusaj ga pogoditi!\n";
- do {
- cout << "Unos: ";
- getline(cin, pokusaj);
- if (jesu4(pokusaj)) {
- if (jesuZnamenke(pokusaj)) {
- if (!ponavljanje(pokusaj)) {
- if (v(pogodi, pokusaj))
- cout << v(pogodi, pokusaj) << "V ";
- if (t(pogodi, pokusaj))
- cout << t(pogodi, pokusaj) << "T";
- }
- else {
- cout << "Znamenke se ne smiju ponavljati!\n";
- }
- }
- else {
- cout << "Moras unjeti znamenke!\n";
- }
- }
- else {
- cout << "Moras unjeti 4 znamenke!\n";
- }
- cout << "\n\n";
- } while (!pogodak(pogodi, pokusaj));
- cout << "Bravo broj je pogoden!\n";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement