Форум программистов, компьютерный форум CyberForum.ru

близнецы - C++

Восстановить пароль Регистрация
 
Yoli
5 / 5 / 0
Регистрация: 08.01.2010
Сообщений: 8
23.01.2010, 21:10     близнецы #1

Привет всем. Пожалуйста мне нужна помощь. Заранее огромнейшее спасибо.
Вот задачи:
1. Найти все натуральные числа, не превосходящие N<1000 и представимые в виде суммы квадратов двух различных натуральных чисел.
2. Два простых числа называбтся "близнецами", если они отличаются друг от друга на 2 ( например числа 41 и 43 -"близнецы"). Найти всех "близнецов", не превосходящих N (N<10000).
3. Два натуральных числа называются дружественными, если каждое из них равно сумме делителей другого, кроме самого этого числа. Найти все пары дружественных чисел, лежащих в диапазоне от M до N(M<N<10000).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2010, 21:10     близнецы
Посмотрите здесь:

C++ Простые числа-близнецы
Числа-близнецы C++
Простые числа близнецы C++
C++ Близнецы на заданном отрезке
Числа - близнецы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
molnia
 Аватар для molnia
7 / 7 / 1
Регистрация: 21.11.2008
Сообщений: 41
23.01.2010, 22:19     близнецы #2
2. Два простых числа называбтся "близнецами", если они отличаются друг от друга на 2 ( например числа 41 и 43 -"близнецы"). Найти всех "близнецов", не превосходящих N (N<10000).
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <conio.h>
main()
{
int n,i;
printf ("n= ");
scanf("%d",&n);
for (i=1;i<=n;i=i+2)
printf ("%d \n",i);
getch();
return 0;
}
так что ли?
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
23.01.2010, 23:09     близнецы #3
molnia неправильно, там же сказано про простые числа
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.01.2010, 07:44     близнецы #4
2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <windows.h>
using namespace std;
int prost (int a)
{
    int temp=1;
    for(int i=2; i<=a/2; i++)
        if(a%i==0)
            temp=0;
    return temp;
}
 
int main ()
{
    for (int i=1;i<9998;i++)
        if(prost(i) && prost(i+2))
            cout<<i<<"  "<<i+2<<endl;
  system("pause");
  return 0;
}
Day
 Аватар для Day
1149 / 954 / 57
Регистрация: 29.10.2009
Сообщений: 1,384
24.01.2010, 13:22     близнецы #5
valeriikozlov, я бы сделал так:
Код
#include <math.h>
int prost (int a)
{
        int t = sqrt(a);
        for(int i=2; i<=t; i++)
                if(a%i==0) return 1;;
        return 0;
}
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.01.2010, 15:14     близнецы #6
Day, согласен, время выполнения уменьшится. Только один знак ";" лишний убрать.
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
24.01.2010, 19:51     близнецы #7
C++
1
2
3
4
5
6
7
8
#include <math.h>
int prost (int a)
{
        int t = sqrt(a);
        for(int i=2; i<=t; i++)
        if (!(a & 1)) return 1;
        return 0;
}
Day
 Аватар для Day
1149 / 954 / 57
Регистрация: 29.10.2009
Сообщений: 1,384
24.01.2010, 20:57     близнецы #8
Совсем ничего не понял.
Этот код дает 1 при четном a и 0 при нечетном в первом прохождении цикла.
Тогда зачем цикл и зачем t ?
М.б. это шутка?
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
24.01.2010, 21:02     близнецы #9
Это же твой код. Я его скопировал и заменил операцию деления на побитовую, (которая быстрее деления) (x&1) - проверка на четность
Day
 Аватар для Day
1149 / 954 / 57
Регистрация: 29.10.2009
Сообщений: 1,384
24.01.2010, 22:56     близнецы #10
Там a % i - остаток от целочисленного деления
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.01.2010, 00:11     близнецы
Еще ссылки по теме:

Найдите все числа близнецы на интервале от а до b C++
C++ числа-близнецы

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

Или воспользуйтесь поиском по форуму:
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
25.01.2010, 00:11     близнецы #11
Цитата Сообщение от Day Посмотреть сообщение
Там a % i - остаток от целочисленного деления
верно
Yandex
Объявления
25.01.2010, 00:11     близнецы
Ответ Создать тему
Опции темы

Текущее время: 14:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru