NAPISZ W C++ PROGRAM W KTÓRYM ZADEKLARUJESZ 50-ELEMENTOWA TABLICĘ LICZB CAŁKOWITYCH. WYGENERUJ DLA NIEJ WARTOŚCI Z ZAKRESU <1;50> WYŚWIETL KOLEJNO WSZYSTKIE LICZBY PARZYSTE SPOSROD WYLOSOWANYCH. OBLICZ ILE ICH JEST WYDRUKUJ WARTOŚĆ NA EKRANIE
#include <iostream>
#include <cstdlib> // dla funkcji rand() i srand()
#include <ctime> // dla funkcji time()
int main() {
const int ROZMIAR = 50; // Rozmiar tablicy
int tablica[ROZMIAR]; // Deklaracja 50-elementowej tablicy
int licznikParzystych = 0; // Licznik liczb parzystych
// Inicjalizacja generatora liczb pseudolosowych
std::srand(std::time(0)); // Ustawiamy generator w oparciu o czas
// Wypełnianie tablicy liczbami losowymi z zakresu <1;50>
for (int i = 0; i < ROZMIAR; ++i) {
tablica[i] = std::rand() % 50 + 1; // Losujemy liczbę z zakresu <1;50>
}
// Wyświetlanie wylosowanych liczb
std::cout << "Wylosowane liczby: ";
for (int i = 0; i < ROZMIAR; ++i) {
std::cout << tablica[i] << " ";
}
std::cout << std::endl;
// Wyświetlanie liczb parzystych i liczenie ich ilości
std::cout << "Liczby parzyste: ";
for (int i = 0; i < ROZMIAR; ++i) {
if (tablica[i] % 2 == 0) { // Sprawdzamy, czy liczba jest parzysta
std::cout << tablica[i] << " ";
++licznikParzystych; // Zwiększamy licznik liczb parzystych
}
}
std::cout << std::endl;
// Wyświetlanie liczby liczb parzystych
std::cout << "Liczba parzystych liczb: " << licznikParzystych << std::endl;
return 0;
}
Deklaracja i inicjalizacja:
ROZMIAR
(50 elementów) jest deklarowana jako int tablica[50]
.std::srand(std::time(0))
w oparciu o aktualny czas.Generowanie liczb losowych:
for
losowane są liczby całkowite z zakresu od 1 do 50, wykorzystując wyrażenie std::rand() % 50 + 1
. Losowa liczba jest następnie przypisywana do kolejnych elementów tablicy.Wyświetlanie wszystkich liczb:
Selekcja liczb parzystych:
tablica[i] % 2 == 0
), jest wyświetlana na ekranie i zwiększany jest licznik licznikParzystych
.Wyświetlanie wyników:
Jeśli program wylosuje liczby:
Wylosowane liczby: 12 25 48 7 36 23 1 50 19 30 42 17 4 13 6 39 28 21 40 9 2 45 38 15 29 16 46 11 33 14 27 31 3 8 44 18 41 22 24 26 5 43 10 20 34 37 47 32 49 35
To liczby parzyste wyniosą:
Liczby parzyste: 12 48 36 50 30 42 4 6 28 40 2 38 16 46 14 8 44 18 22 24 26 10 20 34 32
Liczba parzystych liczb:
Liczba parzystych liczb: 25
<random>
zamiast std::rand()
ze względu na lepszą jakość generowanych liczb losowych.std::vector
) jest często używany zamiast tablic statycznych, ponieważ oferuje większą elastyczność i bezpieczeństwo.std::rand()
generuje liczby pseudolosowe, które są deterministyczne, jeśli nie zainicjalizujemy generatora za pomocą std::srand()
.%
zwraca resztę z dzielenia. Jeśli reszta wynosi 0, liczba jest podzielna przez 2, czyli parzysta.std::srand(42)
.std::rand()
ma ograniczenia w zakresie jakości generowanych liczb losowych. W bardziej zaawansowanych zastosowaniach warto używać generatorów z <random>
.<random>
w C++.std::vector
.<random>
i std::vector
.