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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.86
sovershenstvo
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 125
#1

Найти все натуральные числа от 1 до n, суммы квадратов цифр которых равна самому числу - C++

10.11.2012, 18:18. Просмотров 1848. Ответов 23
Метки нет (Все метки)

Найти все натуральные числа от 1 до n, сумма квадратов цифр которых равна самому числу
Помогите пожалуйста,или проверьте)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
int sum(int c);
{int s=0;
while c>=1 do
s=s+sqr(c fmod 10);
c=c fdiv 10;
return s}
int main();
{int i,n;
cout<<"n";
cin>>n;
for (i=1;i<n;i++)
if (sum(i)=i)
cout<<i<<" "<<endl;
system("pause");
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2012, 18:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти все натуральные числа от 1 до n, суммы квадратов цифр которых равна самому числу (C++):

Массив: Получить все меньшие n натуральные числа, квадрат суммы цифр которых равна m. - C++
Дано натуральные числа n, m. Получить все меньшие n натуральные числа, квадрат суммы цифр которых равна m. Я не понял условия, кому не...

Найти все натуральные числа из промежутка от 1 до 200, у которых сумма цифр равна S - C++
Найти все натуральные числа из промежутка от 1 до 200, у которых сумма цифр равна S (S вводить с клавиатуры).

Найти все трехзначные числа, сумма цифр которых равна данному целому числу - C++
Найти все трехзначные числа?сумма цифр которых равна данному целому числу! Ребята побыстрее надо, заранее спасибо!

Найти все трехзначные числа, сумма цифр которых равна заданному целому числу - C++
Задача: Найти все трехзначные числа, сумма цифр которых равна данному целому числу Решение: #include &lt;iostream&gt;; void main() { ...

Найти трехзначные числа, сумма квадратов этих цифр равняется самому числу. - C++
Найти трехзначные числа, сумма квадратов этих цифр равняется самому числу.

Найти все натуральные числа, меньшие n, квадрат суммы цифр которых равен m - C++
даны натуральные числа m и n y найти все натуральные числа меньшие n квадрат суммы цифр которых равен m

23
David Sylva
1287 / 949 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 18:52 #2
Вы уверены, что задание звучит именно так? Единственное число которое соответствует этому условию 1.
0
sovershenstvo
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 125
10.11.2012, 19:00  [ТС] #3
Задание звучит именно так
0
David Sylva
1287 / 949 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 19:07 #4
Может я неправильно понял. Надо разделить число на цифры, каждую цифру возвести в квадрат и сложить эти квадраты.И вот эту сумму сравнивать с исходным числом. Так?
0
BumerangSP
4286 / 1408 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
10.11.2012, 19:08 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cmath>
int Sum(int x)
{
     return x>0 ? Sum(x/10)+(x%10) : 0;
}
int main()
{
    int n;
    std::cin>>n;
    for (int i=1; i<=n; i++)
          if(pow(Sum(i),2)==n)
               std::cout<<i<<std::endl;
 return 0;
}
Это с квадратом суммы цифр, на всякий случай)
0
David Sylva
1287 / 949 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 19:13 #6
BumerangSP не
Цитата Сообщение от BumerangSP Посмотреть сообщение
int Sum(int x)
а, double Sum(int x)
0
BumerangSP
4286 / 1408 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
10.11.2012, 19:16 #7
David Sylva, м, почему? Мы же просто сумму цифр выводим.

Добавлено через 42 секунды
Вот, вариант как в задании:
C++
1
2
3
4
double Sum(int x)
{
     return x>0 ? Sum(x/10)+pow((x%10),2) : 0;
}
0
David Sylva
1287 / 949 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 19:19 #8
функция pow в качестве аргумента должна принимать тип double, а у тебя в коде функция возвращает int.
0
BumerangSP
4286 / 1408 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
10.11.2012, 19:27 #9
David Sylva, в цикле-то? Думаю, ничего страшного, т.к. работаем мы с int, неявное преобразование все исправит.
0
David Sylva
1287 / 949 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 19:28 #10
у меня твоя программа выдаёт ошибку.
0
BumerangSP
4286 / 1408 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
10.11.2012, 19:30 #11
David Sylva, какую, округления или что? Пример можно.
0
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
10.11.2012, 19:33 #12
ф-ция pow принимает аргументы с типом (float, float), (float, int), (double, double), (long double, int), (long double, long double)
0
David Sylva
10.11.2012, 19:45
  #13

Не по теме:

BumerangSP проехали

0
BumerangSP
10.11.2012, 19:52
  #14

Не по теме:

David Sylva, нет, ну, если ошибка, то надо ведь исправить, а то ТС в заблуждение введем.

0
David Sylva
1287 / 949 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 19:55 #15
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cmath>
int Sum(int x) // вот тут надо не int Sum(int x) а double Sum(int x)
{
     return x>0 ? Sum(x/10)+(x%10) : 0;
}
int main()
{
    int n;
    std::cin>>n;
    for (int i=1; i<=n; i++)
          if(pow(Sum(i),2)==n)
               std::cout<<i<<std::endl;
 return 0;
}
смотри комментарии
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2012, 19:55
Привет! Вот еще темы с ответами:

Даны натуральные числа n, m. Получить все меньшие n натуральные числа, квадрат суммы цифр которых , равен m - C++
Даны натуральные числа n, m. Получить все меньшие n натуральные числа, квадрат суммы цифр которых , равен m Решите на С++.Буду благодарна!

Получить натуральные числа куб суммы цифр которых равен заданному числу - C++
Получить все меньшие n натуральные числа, квадрат суммы цифр которых равен m. #include &lt;iostream&gt; using namespace std; int main()...

Найти 3 натуральных числа сумма квадратов которых равна заданному числу - C++
Дано натуральное n. Указать x,y,z таких натуральных чисел, что n=x2 +y2 +z2 и x&lt;=y&lt;=z , используя перебор значений.

Получить все меньше n натуральные числа, квадрат суммы которых равна m - C++
Заданные натуральные числа m и n. Получить все меньше n натуральные числа, квадрат суммы которых равна m.


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

Или воспользуйтесь поиском по форуму:
15
Yandex
Объявления
10.11.2012, 19:55
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru