Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 10.06.2015
Сообщений: 3

Напечатать все пары чисел близнецов из отрезка

31.03.2016, 00:33. Показов 3708. Ответов 5

Студворк — интернет-сервис помощи студентам
Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (например, 41 и 43). Напечатать все пары «близнецов» из отрезка [n, 2n], где n - заданное натуральное число больше 2.

 Комментарий модератора 
5.16 Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.03.2016, 00:33
Ответы с готовыми решениями:

Процедуры и функции. Напечатать все пары чисел-«близнецов» из отрезка [n,2n]
Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (например, 41 и 43). Напечатать все пары «близнецов» из...

Напечатать все пары «близнецов» из отрезка [n, 2n]
Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (например, 41 и 43). Напечатать все пары «близнецов» из...

Напечатать все пары «близнецов» из отрезка
Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (например, 41 и 43). Напечатать все пары «близнецов» из...

5
24 / 24 / 13
Регистрация: 19.05.2010
Сообщений: 151
01.04.2016, 18:33
Попробуйте так:
Java
1
2
3
4
5
6
7
8
9
 int n1=10;
 int n2 = 20;
     for(int a=n1;a<n2;a++){
         if(a+2<=n2){
             System.out.print(a);
             System.out.print(a+2);
             System.out.println("");
         }    
     }
0
4 / 4 / 3
Регистрация: 01.04.2016
Сообщений: 136
02.04.2016, 09:17
Лучший ответ Сообщение было отмечено midvad как решение

Решение

Лучше так:
Java
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
26
27
28
29
30
public class poiuy {
    //функция определения простоты числа:
    public static boolean prost(int n) {
        int kolvo=0;
        for (int i=1; i<=(int) Math.sqrt(n); i++) {
            if (n%i==0) {
                if (i==Math.sqrt(n)) 
                    kolvo++;
                else kolvo+=2; 
                
            }
        }    
        if (kolvo==2) return true;//если число простое
        else return false;//если число составное
        }
 
        public static void main(String[] args) {
           int a=1,aa=a,b=600,kvo=0;//kvo -  кол-во чисел-близнецов
           
           System.out.print("Числа: ");
           while (aa%6!=0) aa++;
           for (int i=aa; i<=b; i+=6) {
               if (prost(i-1) && prost(i+1)) {//если оба числа простые
                   if (!((i-1)<aa || (i+1)>b))  {kvo++; System.out.print((i-1)+" "+(i+1)+" ");} //если оба числа в границах
                                                                                                                       //промежутка
               }   
           }
           System.out.print("Кол-во пар чисел-близнецов на отрезке ["+a+"; "+b+"] :"+kvo);
        }
}
Примечание: пара чисел-близнецов имеет вид (6n+1) и (6n-1), если оба простые, поэтому лучше параметр цикла увеличивать на 6 (растет скорость работы) и проерять оба числа на простоту.
1
0 / 0 / 0
Регистрация: 10.06.2015
Сообщений: 3
03.04.2016, 20:24  [ТС]
senek, Cпасибо А можно добавить ввод отрезка [n,2n] в консоли?
0
4 / 4 / 3
Регистрация: 01.04.2016
Сообщений: 136
04.04.2016, 07:20
Можно:
Добавьте в главный класс функцию ввода строки:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public static String readln() {
            InputStream inputStream = System.in;
            Reader inputStreamReader = new InputStreamReader(inputStream);
            BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
            String s="";
            
            try {
                s = bufferedReader.readLine(); //читаем строку с клавиатуры
            } catch (Exception ex) {
                System.out.println("\nОшибка считывания.");
            }
            
            return s;
    }
Потом между 18 и 20 строкой добавьте:
Java
1
2
a=Integer.parseInt(poiuy.readln());//ввод числа a
b=Integer.parseInt(poiuy.readln());//ввод числа b
0
0 / 0 / 0
Регистрация: 10.06.2015
Сообщений: 3
06.04.2016, 00:41  [ТС]
senek,
Java
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.Reader;
 
import org.omg.CORBA.portable.InputStream;
 
public class poiuy {
    
    //функция определения простоты числа:
    public static boolean prost(int n) {
        int kolvo=0;
        for (int i=1; i<=(int) Math.sqrt(n); i++) {
            if (n%i==0) {
                if (i==Math.sqrt(n)) 
                    kolvo++;
                else kolvo+=2; 
                
            }
        }    
        if (kolvo==2) return true;//если число простое
        else return false;//если число составное
        }
    public static String readln() {
        InputStream inputStream = (InputStream) System.in;
        Reader inputStreamReader = new InputStreamReader(inputStream);
        BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
        String s="";
        
        try {
            s = bufferedReader.readLine(); //читаем строку с клавиатуры
        } catch (Exception ex) {
            System.out.println("\nОшибка считывания.");
        }
        
        return s;
}
        public static void main(String[] args) {
           int a=1,aa=a,b=600,kvo=0;//kvo -  кол-во чисел-близнецов
           
           System.out.print("Числа: ");
           while (aa%6!=0) aa++;
           for (int i=aa; i<=b; i+=6) {
               if (prost(i-1) && prost(i+1)) {//если оба числа простые
                   if (!((i-1)<aa || (i+1)>b))  {kvo++; System.out.print((i-1)+" "+(i+1)+" ");} //если оба числа в границах
                                                                                                                       //промежутка
               }   
           }
           System.out.print("Кол-во пар чисел-близнецов на отрезке ["+a+"; "+b+"] :"+kvo);
        }
}
так?... что то не получается ... может через класс Scanner как то реализовать ввод с консоли..

Добавлено через 2 часа 19 минут
senek, переделал под класс сканер
Java
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import java.util.Scanner;
 
public class Fclass2 {
    //функция определения простоты числа:
    public static boolean prost(int n) {
        int kolvo=0;
        for (int i=1; i<=(int) Math.sqrt(n); i++) {
            if (n%i==0) {
                if (i==Math.sqrt(n)) 
                    kolvo++;
                else kolvo+=2; 
                
            }
        }    
        if (kolvo==2) return true;//если число простое
        else return false;//если число составное
        }
 
        public static void main(String[] args) {
    
           int a=2, aa=a, b=0,kvo=0; //kvo -  кол-во чисел-близнецов
        boolean t=true;
        Scanner sc = new Scanner(System.in);
            while (t) {
            System.out.println("Введите n : ");
            if(sc.hasNextInt())
            b = sc.nextInt();
            if (b>a){   t=false;}
            else {System.out.println("Число  n должно быть больше 2: ");}
           System.out.print("Числа: ");
           while (aa%6!=0) aa++;
           for (int i=aa; i<=b; i+=6) {
               if (prost(i-1) && prost(i+1)) {//если оба числа простые
                   if (!((i-1)<aa || (i+1)>b))  {kvo++; System.out.print((i-1)+" "+(i+1)+" ");} //если оба числа в границах
                                                                                                                       //промежутка
               }   
           }
           System.out.print("Кол-во пар чисел-близнецов на отрезке ["+a+"; "+b+"] :"+kvo);
        }
}
}
не пойму почему в консоли выводится половина от количества чисел близнецов
Числа: 11 13 17 19 29 31 41 43 Кол-во пар чисел-близнецов на отрезке [2; 50] :4
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.04.2016, 00:41
Помогаю со студенческими работами здесь

Напечатать все пары «близнецов» из отрезка [n, 2n]
6. Функции пользователя Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (например, 41 и 43)....

Напечатать все пары чисел "близнецов" из отрезка
1. Задание: Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (таковы, например, числа 41 и 43). Напечатать...

Напечатать все пары «близнецов» из отрезка [n,2n], где n – заданное целое число, большее 2.
Два простых числа называются «близнецами», если они отличаются друг от друга на 2 (например, числа 41 и 43). Напечатать все пары...

Найдите все пары чисел-близнецов из отрезка
Собственно помогите решить задачку, есть наброски на работают не совсем так, как надо. Два простых числа называются близнецами, если...

Напечатать все пары чисел близнецов <200
Напечатать все пары чисел-&quot;близнецов&quot;, не превышающих число 200. (Определить функцию, позволяющую распознавать простые числа.) Хелп + я...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru