Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 20.12.2012
Сообщений: 25

Из промежутка от а до б найти все простые числа. Нужно составить блок-схему

14.11.2013, 00:56. Показов 1402. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.11.2013, 00:56
Ответы с готовыми решениями:

Найти все простые числа из промежутка от 1 до n
В чём тут проблема ? #include <iostream> using namespace std; void prch(int n) { bool x = true; for (int i = 2; i <=...

Как найти все простые числа из промежутка от a до b?
создать программу в методах Даны натуральные числа от a до b (a < b). Найти все простые числа из промежутка от a до b. ( простые числа...

Составить блок-схему: Напечатать все совершенные числа до заданного числа N
Здравствуйте. Помогите пожалуйста составить блок-схемы к задачам. Завтра зачет, без вариантов надо сдать. Обещаюсь научиться всему в...

11
 Аватар для vodav
572 / 141 / 37
Регистрация: 12.03.2012
Сообщений: 403
14.11.2013, 15:12
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
DEFINT a-z
DIM a,b,i,j
INPUT "Enter a: ",a
INPUT "Enter b: ",b
FOR i=a TO b
  FOR j=2 TO i\2
    IF i MOD j=0 THEN EXIT FOR
    IF j=i\2 THEN PRINT i
  NEXT j
NEXT i
END
1
1045 / 315 / 74
Регистрация: 13.07.2013
Сообщений: 1,270
14.11.2013, 17:45
Цитата Сообщение от vodav Посмотреть сообщение
i\2
Что это? "Обратное деление"? Или возведение в степень 1/2? По-моему, "обратное деление"...
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
14.11.2013, 21:30
Что это?
Целочисленное деление.
1
0 / 0 / 0
Регистрация: 18.11.2013
Сообщений: 12
16.12.2013, 17:32
если ввести 1 и 9 он выводит 5 и 7, потеряв 2 и 3 и собственно единицу
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
29.05.2016, 18:03
refery07
В программе опечатка.
Поменяйте местами строки 8 и 9 и все будет работать верно.
0
 Аватар для Sasha_Smirnov
5562 / 1370 / 150
Регистрация: 08.02.2009
Сообщений: 4,109
Записей в блоге: 30
29.05.2016, 18:58
geh, проверьте, пожалуйста в QB мой «древнегреческий» (Архимедов) вариант:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Sub vodav_primes_with_booster()
    Dim a, b, i, j
    a = 10 ^ 9
    b = 10 ^ 9 + 100
        For i = a To b
        
            For j = 2 To Sqr(i)  ' To i \ 2
                If i Mod j = 0 Then Exit For
            Next j
            
            If j > Sqr(i) Then N = N + 1: 'Debug.Print i (см. по Ctrl-G при запуске из Word)
        Next i
    MsgBox "Всего простых промежутке [" & a & "; " & b & "]: " & N
End Sub
У меня верхний предел 1010 (не включительно).
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
29.05.2016, 19:33
Sasha_Smirnov
Я определил для i и j тип LONG и все заработало.
Это не самая быстрая программа. Если брать не
Все числа подряд, а только нечетные, то будет
работать в двое быстрее. Ну а если брать числа
вида 6n +/-1, то будет работать в трое быстрее.
1
 Аватар для Sasha_Smirnov
5562 / 1370 / 150
Регистрация: 08.02.2009
Сообщений: 4,109
Записей в блоге: 30
29.05.2016, 20:41
Цитата Сообщение от refery07 Посмотреть сообщение
собственно единицу
к простым числам не надо причислять.

У меня (хотя и не в QBasic’е) верно печатает (2-3-5-7-11…) вот такая модификация «циклов vodav’а»:
Visual Basic
1
2
3
4
5
6
    For i = a To b
        For j = 2 To i \ 2
          If i Mod j = 0 Then Exit For
        Next j
        If j = i \ 2 + 1 Then Print i 'в VB индекс здесь не равен верхнему пределу [i\2], а больше его на 1
    Next i
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
29.05.2016, 20:54
Sasha_Smirnov
Единица (1) - не является ни простым ни составным числом
В быстрых программах числа 2 и 3 не вычисляют, а сразу
печатают. Вы верно модифицировали программу. Дело в том,
что если число является ТОЧНЫМ КВАДРАТОМ, то при работе
с вещественными числами оно может попасть в разряд
простых чисел, хотя таковым может и не быть.
0
 Аватар для Sasha_Smirnov
5562 / 1370 / 150
Регистрация: 08.02.2009
Сообщений: 4,109
Записей в блоге: 30
08.07.2016, 16:28
А я — с целыми, geh!
0
6180 / 945 / 313
Регистрация: 25.02.2011
Сообщений: 1,381
Записей в блоге: 1
09.07.2016, 05:59
Цикл по j лучше организовать не до i\2, а до sqr(i), это даст существенный прирост скорости для больших a и b
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
DIM i AS LONG, j AS LONG, a AS LONG, b AS LONG
a = 10 ^ 9
b = a + 100
FOR i = a TO b
    IF i MOD 2 = 1 OR i = 2 THEN
        FOR j = 3 TO SQR(i) STEP 2
            IF i MOD j = 0 THEN EXIT FOR
        NEXT j
        IF j > SQR(i) AND i > 1 THEN PRINT i
    END IF
NEXT i
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.07.2016, 05:59
Помогаю со студенческими работами здесь

Получить все простые числа из промежутка
Написать програму, использую цикл for. Задача: Даны натуральные числа a, b (a<b). Получить все простые числа р, удовлетворяющие...

Найдите все простые числа из промежутка (a,b)
Здравствуйте. Я только учусь программировать. Запуталась с одной задачкой. Помогите, пожалуйста. Найдите все простые числа из промежутка...

Найти и распечатать в порядке убывания все простые числа из заданного промежутка, используя "решето Эратосфена"
Составить программу поиска и печати в порядке убывания все простые числа из промежутка (2..201), используя метод «решето Эратосфена»

Вывести все простые числа из заданного промежутка
#include <stdio.h> #include <math.h> int main() {int i,M,N,f=1; scanf("%d%d", &M,&N); for ( ; M <= N; M++) { for (i = 2; i...

Вывести на экран все простые числа из данного промежутка
Вывести на экран все простые числа из данного промежутка.


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru