Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 22.10.2020
Сообщений: 25
1

Реализовать алгоритм поиска простых чисел с использованием блока try\catch

04.05.2021, 17:08. Показов 1222. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание:
1.Реализовать алгоритм поиска простых чисел не превышающих 1000, применив метод генерации исключения для пропуска вывода текущего числа при обнаружении его первого делителя.

Здравствуйте, нужна помощь с заданием. Впервые пробую работать с обработкой исключений, вроде заданьице простенькое, но я никак не могу допереть как это правильно реализовать. Если не затруднит подкиньте решение, по возможности подкрепляя комментариями.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2021, 17:08
Ответы с готовыми решениями:

Реализовать алгоритм поиска простых чисел
Реализовать алгоритм поиска простых чисел ("Решето Эратосфена") до 200. Подскажите как плиз

Алгоритм поиска n простых чисел
Помогите, пожалуйста, составить батник, находящий простые числа в заданном интервале.

Алгоритм поиска простых чисел
Доброго времени суток. Помогите пожалуйста с алгоритмом поиска простых чисел в массиве. Искал...

Алгоритм поиска простых чисел.
Нашел пример алгоритма, используемого для получения всех простых чисел от 2 до заданного путем...

7
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
04.05.2021, 17:26 2
Цитата Сообщение от revenge3371 Посмотреть сообщение
Реализовать алгоритм поиска простых чисел с использованием блока try\catch
А try/catch здесь причем?
0
0 / 0 / 0
Регистрация: 22.10.2020
Сообщений: 25
04.05.2021, 17:42  [ТС] 3
Цитата Сообщение от Croessmah Посмотреть сообщение
А try/catch здесь причем?
Лабораторная работа по теме обработки исключений, конкретно это задание указано реализовать с использованием try\catch
0
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
04.05.2021, 18:30 4
Цитата Сообщение от revenge3371 Посмотреть сообщение
Лабораторная работа по теме обработки исключений, конкретно это задание указано реализовать с использованием try\catch
Сделай сначала без исключений. Потом добавишь.
0
0 / 0 / 0
Регистрация: 22.10.2020
Сообщений: 25
04.05.2021, 19:08  [ТС] 5
Цитата Сообщение от oleg-m1973 Посмотреть сообщение
Сделай сначала без исключений.
Без исключений то я сделал, но с добавлением уже проблемы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main()
{
    setlocale(0, "");
    int flag = 1;
    for (int i = 1; i <= 1000; i++)
    {
        for (int j = 2; j < i; j++)
        {
            if (i % j == 0)
            {
                flag = 1;
                break;
            }
        }
        if (flag == 0)
        {
            cout << i << " ";
        }
        flag = 0;
    }
    return 0;
}
Пробовал по разному уже, всё равно ничего не выходит. Не могу додумать как сделать так, чтобы как только встретило первый делитель, я его словил и перевел цикл на следующую итерацию, а если я так и не обнаружу, выводить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
int main()
{
    setlocale(0, "");
    int flag = 1;
    for (int i = 1; i <= 1000; i++)
    {
        for (int j = 2; j < i; j++)
        {
            try
            {
                if (i % j == 0)
                {
                    throw;
                }
            }
            catch(...){}
        }
        /*if (flag == 0)
        {
            cout << i << " ";
        }
        flag = 0;*/
    }
    return 0;
}
0
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
04.05.2021, 19:15 6
Лучший ответ Сообщение было отмечено revenge3371 как решение

Решение

Цитата Сообщение от revenge3371 Посмотреть сообщение
Пробовал по разному уже, всё равно ничего не выходит. Не могу додумать как сделать так, чтобы как только встретило первый делитель, я его словил и перевел цикл на следующую итерацию, а если я так и не обнаружу, выводить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    for (int i = 1; i <= 1000; i++)
    {
        try
        {
            for (int j = 2; j < i; j++)
                if (i % j == 0)
                    throw "!!!";
            cout << i << " ";
        }
        catch (const char *)
        {
        }
    }
1
0 / 0 / 0
Регистрация: 22.10.2020
Сообщений: 25
04.05.2021, 19:19  [ТС] 7
Во как, спасибо, выручили
0
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
04.05.2021, 19:22 8
Цитата Сообщение от revenge3371 Посмотреть сообщение
Во как, спасибо, выручили
На самом деле лучше использовать свой тип для исключения
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int main()
{
    using namespace std;
    setlocale(0, "");
 
    struct not_prime {};
    for (int i = 1; i <= 1000; i++)
    {
        try
        {
            for (int j = 2; j < i; j++)
                if (i % j == 0)
                    throw not_prime();
            cout << i << " ";
        }
        catch (not_prime)
        {
        }
    }
    return 0;
}
1
04.05.2021, 19:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.05.2021, 19:22
Помогаю со студенческими работами здесь

Эффективный алгоритм поиска простых чисел на С++
Хотел написать функцию которая вычисляет простое число или сложное, но оно не вычисляется. Цикл...

Cоставить алгоритм поиска N простых чисел
составить алгоритм поиска N простых чисел

Линейный алгоритм поиска простых чисел
Здравствуйте, помогите пожалуйста написать линейный алгоритм на языке си, желательно с...

Алгоритм поиска целых простых чисел
Предлагаю простой алгоритм проверки и поиска простых чисел, приглашаю к сотрудничеству в написании...

Алгоритм поиска количества простых чисел в заданном массиве
алгоритм поиск количества простых чисел в заданном целочисленном массиве из 50 элементов. Помогите...

Реализовать алгоритм поиска заданного слова в исходном тексте с использованием хеш-функции
Реализовать алгоритм поиска заданного слова в исходном тексте с использованием хеш-функции. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru