Skip to content

Latest commit

 

History

History
83 lines (46 loc) · 3.17 KB

README.md

File metadata and controls

83 lines (46 loc) · 3.17 KB

ST-1 UNIT-тестирование с использованием Googletest C++ (1)

GitHub pull requests GitHub closed pull requests

Срок выполнения задания:

по 03.03.24 Relative date

Задание

Написать прототип библиотеки для работы с простыми (prime) числами и модульные тесты с использованием фреймворка Googletest (не менее 10 штук)

Состав проекта

   - bool checkPrime(uint64_t value) - проверка числа на простоту.
   - uint64_t nPrime(uint64_t n) - нахождение n-ого простого числа (в ряду).
   - uint64_t nextPrime(uint64_t value) - нахождение ближайшего следующего простого числа к value.
   - uint64_t sumPrime(uint64_t hbound) - сумма всех чисел до hbound (не включая его)

Пояснение

Требуется написать несколько функций на языках С/С++, выполняющих поставленные задачи и протестировать работу этих функций с помощью модульных тестов

Функции должны иметь заданную сигнатуру и располагаться в файле alg.cpp:

bool checkPrime(uint64_t value) {

}
  • value - проверяемое значение

Функция возвращает true, если число value простое и false в противном случае.

uint64_t nPrime(uint64_t n) {

}
  • n - n-ое число в ряду. Например, 2 - первое простое число, 3 - второе, 5 - третье...

Функция возвращает найденное простое число.

uint64_t nextPrime(uint64_t value) {

}
  • value - исходное число, начиная с которого мы ищем ближайшее простое. Само value при поиске не учитывается. Например, для числа 4 следующим простым будет 5, а для 11 следующим простым будет 13.

Функция возвращает найденное простое число.

uint64_t sumPrime(uint64_t hbound) {
   
}

Функция находит сумму простых чисел до hbound (сама граница в сумму не включается)

Функция возвращает сумму простых чисел.

Функции должны располагаться в файле src/alg.cpp.

Задание 2

Найти сумму всех простых чисел, меньше двух миллионов.

Написать модульный тест для проверки решения этой задачи

Тесты размещаются в файле test/tests.cpp