Лучшие помощники
- Megamozg 2205 б
- Matalya1 1800 б
- DevAdmin 1720 б
- arkasha_bortnikov 900 б
- Dwayne_Johnson 870 б
3 апреля 2023 01:52
708
Даю 100 балловна C++ надо написать программу
задание с сириуса:
Выведите в порядке возрастания все простые числа на отрезке [l;r]. Оформите решение в виде функции bool isPrime(int n), проверяющей число на простоту, и функции vector primes(int l, int r), возвращающей список простых чисел на отрезке [l;r].
Входные данные
Дано два натуральных числа l и r (l≤r≤1000).
#include
#include
using namespace std;
bool isPrime(int n)
/* ВАШ КОД */
int main()
{
int l, r;
cin >> l >> r;
vector res = primes(l, r);
for (int i = 0; i < res.size(); ++i){
cout << res[i] << " ";
}
return 0;
}
Вот мой фрагмент кода который валится на 3-ем тесте:
{
for(int i = 2; i <= n / 2; i++){
if(!(n % i)){
return 0;
}
}
return 1;
}
vector primes(int l, int r){
vector A;
for(int i = l; i <= r; i++){
if(isPrime(i)){
A.push_back(i);
}
}
return A;
}
1
ответ
#include <iostream>
#include <vector>
std::vector<int> primes(int l, int r);
bool isPrime(int n);
int main()
{
int l,r;
std::cin >> l >> r;
std::vector<int> res = primes(l, r);
for (int i = 0;i < res.size();i++)
{
std::cout << res[i] << " ";
}
return 0;
}
std::vector<int> primes(int l, int r)
{
std::vector<int> primes;
for (int i = l; i < r; i++)
{
if (isPrime(i))
{
primes.push_back(i);
}
}
return primes;
}
bool isPrime(int n)
{
if (n <= 2)
return false;
for (int i = 3; i < n/2+1; i++)
if (n % i == 0)
return false;
return true;
}
#include <vector>
std::vector<int> primes(int l, int r);
bool isPrime(int n);
int main()
{
int l,r;
std::cin >> l >> r;
std::vector<int> res = primes(l, r);
for (int i = 0;i < res.size();i++)
{
std::cout << res[i] << " ";
}
return 0;
}
std::vector<int> primes(int l, int r)
{
std::vector<int> primes;
for (int i = l; i < r; i++)
{
if (isPrime(i))
{
primes.push_back(i);
}
}
return primes;
}
bool isPrime(int n)
{
if (n <= 2)
return false;
for (int i = 3; i < n/2+1; i++)
if (n % i == 0)
return false;
return true;
}
0
·
Хороший ответ
5 апреля 2023 01:52
Остались вопросы?
Еще вопросы по категории Информатика
Напишите программу, которая вычисляет квадратный корень введённого числа. Вычислите с её помощью квадратные корни из чисел 221841; 32005,21 и 15239,90...
Информационное сообщение объемом 1,5 Кб содержит 3072символа.Сколько симфолов содержит алфавит,при помощи которого было записано это сообщение?...
Единицы измерения информации служат для измерения различных характеристик, связанных с информацией. Чаще всего измерение информации касается измерения...
Система команд исполнителя Бета состоит из двух команд, которым присвоены номера: 1 — прибавь b; 2 — умножь на 2. Выполняя первую из них, Бета увеличи...
Заполните схему передача информации...