Commit 5f59683e by Patryk Czarnik

Zajęcia nr 4 - random

parent 6c5f8ef6
#include <iostream>
#include <cstdlib>
using namespace std;
// Ta wersja programu generuje zawsze te same liczby, bo generator liczb pseudolosowych
// startuje zawsze z tego samego miejsca.
int main() {
int x, y, z;
x = random();
y = random();
z = random();
cout << "Wylosowane liczby: " << x << " " << y << " " << z << endl;
// Często potrzebujemy wylosować liczbę z jakiegoś zakresu,
// np. liczby od 0 do 9 - jak uzyskać taką liczbę?
// Można użyć reszty z dzielenia wylosowanej liczby przez 10.
x = random() % 10;
y = random() % 10;
z = random() % 10;
cout << "Wylosowane liczby z zakresu: " << x << " " << y << " " << z << endl;
return 0;
}
// Ta wersja programu generuje już różne liczby, gdy jest uruchamiana w różnych
// momentach czasu, gdyż generator liczb pseudolosowych jest inicjalizowany
// odczytem zegara w momencie uruchomienia programu.
// Jednak odczyt zegara odbywa się z dokładnością do 1 sekundy, więc i tak jest dość prawdopodobne
// uruchomienie programu w tej samej sekundzie na różnych kompach.
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int x, y, z;
srand(time(nullptr));
x = random();
y = random();
z = random();
cout << "Wylosowane liczby: " << x << " " << y << " " << z << endl;
// Często potrzebujemy wylosować liczbę z jakiegoś zakresu,
// np. liczby od 0 do 9 - jak uzyskać taką liczbę?
// Można użyć reszty z dzielenia wylosowanej liczby przez 10.
x = random() % 10;
y = random() % 10;
z = random() % 10;
cout << "Wylosowane liczby z zakresu: " << x << " " << y << " " << z << endl;
return 0;
}
/* Program losuje dwie liczby tak, żeby odpowiadało to rzutowi dwiema kostkami,
tzn powinny wyjść wartości od 1 do 6 włącznie.
Program wypisuje te liczby, a w dodatku:
- jeśli te dwie liczby są sobie równe, to wypisuje tekst "dublet"
- a jeśli są to dwie szóstki, to wypisuje "brawo, jesteś mistrzem"
*/
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
srand(time(nullptr));
int x, y;
x = random() % 6 + 1;
y = random() % 6 + 1;
cout << "Wylosowane: " << x << " " << y << endl;
if(x == y) {
cout << "Dublet!\n";
} else {
cout << "Różne liczby\n";
}
if(x == 6 && y == 6) {
cout << "Jesteś mistrzem!\n";
}
if(x == 1 || y == 1) {
cout << "Masz co najmniej jedną jedynkę\n";
}
return 0;
}
/* Program losuje dwie liczby z zakresu np. od 1 do 10 (ale ten zakres łatwo zmienić)
i pyta użytkownika, jaki jest wynik mnożenia tych liczb.
Np "ile to jest 4 × 7" ?
Użytkownik wprowadza odpowiedź, a program sprawdza, czy jest ona poprawna.
*/
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
srand(time(nullptr));
int x, y, odp;
x = random() % 10 + 1;
y = random() % 10 + 1;
cout << "Ile to jest " << x << " razy " << y << "?\n";
cin >> odp;
if(odp == x*y) {
cout << "dobrze :)\n";
} else {
cout << "źle :(\n";
}
return 0;
}
/* Program losuje dwie liczby z zakresu
i pyta użytkownika, jaki jest wynik mnożenia tych liczb.
Np "ile to jest 4 × 7" ?
Pytanie jest ponawiane tak długo, aż w końcu user poda dobrą odpowiedź.
Jest to przykład "pętli while".
*/
#include <iostream>
#include <cstdlib>
using namespace std;
const int MAX = 20;
int main() {
srand(time(nullptr));
int x, y, odp;
x = random() % MAX + 1;
y = random() % MAX + 1;
cout << "Ile to jest " << x << " razy " << y << "?\n";
cin >> odp;
while(odp != x*y) {
cout << "błędna odpowiedź, spróbuj jeszcze raz\n";
cin >> odp;
}
cout << "Brawo, udało się obliczyć!\n";
return 0;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment