С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
1

Найти натуральное число N, сумма цифр которого равна К, а сумма цифр N*N равна К*К

28.09.2014, 15:36. Просмотров 1256. Ответов 21
Метки нет (Все метки)

Найти натуральное число N, сумма цифр которого равна К, а сумма цифр N*N равна К*К.
Помогите,прошу!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2014, 15:36
Ответы с готовыми решениями:

Вывести все трехзначные числа, сумма цифр которого равна А и число кратно В
#include<stdio.h> #include<conio.h> #include<math.h> main() {int a, b, x,...

Число из n цифр называется числом Армстронга, если сумма цифр, возведенных в n-ю степень равна самому числу
Число из n цифр называется числом Армстронга, если сумма цифр, возведенных в...

Среди трехзначных чисел найти те, сумма цифр которых равна n (2<n<10) и число делится без остатка на число q
Среди трехзначных чисел найти те, сумма цифр которых равна n (2&lt;n&lt;10) и число...

Найти количество натуральных чисел сумма цифр которых равна числу N
Найти количество натуральных чисел сумма цифр которых равна числу N. N –...

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

21
Jewbacabra
Эксперт PHP
3577 / 2970 / 1320
Регистрация: 24.04.2014
Сообщений: 9,028
28.09.2014, 16:03 2
енотик, это 1

Добавлено через 5 минут
точнее любое число N = 10^n , n >= 0 подходит
0
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
28.09.2014, 16:03  [ТС] 3
и 11 тоже. Jewbacabra, а написать прогу можешь?
0
Jewbacabra
Эксперт PHP
3577 / 2970 / 1320
Регистрация: 24.04.2014
Сообщений: 9,028
28.09.2014, 16:07 4
C
1
2
3
4
5
#include <stdio.h>
int main() {
    printf("1\n"); // задание - найти 1 число
    return 0;
}
3
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
28.09.2014, 16:08  [ТС] 5
что-то ты не правильно,наверное,понял. здесь по-любому должен быть цикл.
0
Haryros
0 / 0 / 0
Регистрация: 27.09.2014
Сообщений: 9
29.09.2014, 18:47 6
9 тоже подходит.

Добавлено через 8 минут
Если подумать, то будут подходить все числа в начале десятков: 10, 11, 20, 21, 30, 31... Проверьте, может я ошибаюсь.
0
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
29.09.2014, 19:34  [ТС] 7
Все уже решено. Как оказалось,очень много чисел подходит..
0
Байт
Эксперт C
19236 / 12359 / 2609
Регистрация: 24.12.2010
Сообщений: 25,469
29.09.2014, 19:47 8
Цитата Сообщение от енотик Посмотреть сообщение
Все уже решено.
А показать народу решение - религия не позволяет? Или хочешь патент оформить?

Добавлено через 1 минуту
Цитата Сообщение от Haryros Посмотреть сообщение
9 тоже подходит.
Сумлеваюсь...
0
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
29.09.2014, 19:49  [ТС] 9
Вот вам решение:
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
26
#include <stdio.h>
int main()
{
    int size = 10000,n,a,z,s,k;
 
 
    for ( n = 1; n<size; n++)
    {
        a= n;
        k = 0;
        while (a>1)
        {
            k += a % 10;
            a /= 10;
        }
         s = n*n;
        z = 0;
        while (s>1)
        {
            z += s % 10;
            s /= 10;
        }
        if (z == k*k)
            printf("%d\n",n);
    }
}
0
Байт
Эксперт C
19236 / 12359 / 2609
Регистрация: 24.12.2010
Сообщений: 25,469
29.09.2014, 19:49 10
Цитата Сообщение от енотик Посмотреть сообщение
что-то ты не правильно,наверное,понял.
Цитата Сообщение от енотик Посмотреть сообщение
Найти натуральное число N
Скорее, это ты неправильно задал вопрос, и получил на этот вопрос совершенно адекватный ответ.
0
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
29.09.2014, 19:52  [ТС] 11
Байт, Я в точности отразила условие,которое мне было дано,так что претензии не ко мне .
0
Байт
Эксперт C
19236 / 12359 / 2609
Регистрация: 24.12.2010
Сообщений: 25,469
29.09.2014, 20:01 12
Цитата Сообщение от енотик Посмотреть сообщение
Вот вам решение:
Спасибо! Но про теги форматирования кода не забывай. Инче читать тяжеловато... Потому на логику твой код не стал проверять. Осмелюсь предложить свой.
C
1
2
3
4
5
6
7
for(n=1; n<size; n++) {
 ntmp = n;
 for(k=0; ntmp; ntmp /= 10) k+= ntmp%10;
 ntmp = n*n;
 for(z=0; ntmp; ntmp /= 10) z+= ntmp%10;
 if (z == k*k) printf("n=%d\n", n);
}
Не проверял. Возможны описки...
0
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
29.09.2014, 20:11  [ТС] 13
Учту на будущее твое замечание по поводу тегов.
0
Байт
Эксперт C
19236 / 12359 / 2609
Регистрация: 24.12.2010
Сообщений: 25,469
29.09.2014, 20:16 14
Цитата Сообщение от енотик Посмотреть сообщение
Я в точности отразила условие,которое мне было дано
так дело все в том, что на это условие вам в точности и было отвечено! Вот если бы задание звучало так:
"Найти все натуральные числа N, не превышающие size, ...", тогда да,
Цитата Сообщение от енотик Посмотреть сообщение
здесь по-любому должен быть цикл

Не по теме:

Поймите правильно, я вовсе не хочу вас обидеть или задеть... И понимаю, что научиться четкому выражению мыслей - это не сразу получается. Но учится-то надо. Вот я и пытаюсь вам помочь:) в том числе и теги расставлять. Это надо код выделить, проведя по нему мышкой, и кликнуть на "С" (на верхней панели ответа)

0
енотик
1 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 18
29.09.2014, 20:27  [ТС] 15
Хорошо,это моя ошибка,что я неправильно указала условие.
0
stimka321
4 / 4 / 2
Регистрация: 29.09.2013
Сообщений: 40
19.10.2014, 20:17 16
Но ведь вопрос был в другом: нужно, чтобы значение K задавалось с клавиатуры.
0
Байт
Эксперт C
19236 / 12359 / 2609
Регистрация: 24.12.2010
Сообщений: 25,469
19.10.2014, 21:02 17
Цитата Сообщение от stimka321 Посмотреть сообщение
нужно, чтобы значение K задавалось с клавиатуры.
Слово клавиатура в этом топике ты произнес первый. Так что, скорее всего, этот вопрос совсем из другого места.
Но если тебя интересует, как вводить с клавиатуры
C
1
2
3
int K;
printf("Введи K и нажми Enter\n");
scanf("%d", &K);
1
stimka321
4 / 4 / 2
Регистрация: 29.09.2013
Сообщений: 40
19.10.2014, 21:52 18
сумма цифр которого равна К
Здесь подразумевается ввод с клавы. Я такие задачи решал.
Чего вы так неуважительно к новичку, прям обидно стало.
0
Jewbacabra
Эксперт PHP
3577 / 2970 / 1320
Регистрация: 24.04.2014
Сообщений: 9,028
19.10.2014, 22:08 19
Цитата Сообщение от енотик Посмотреть сообщение
Найти натуральное число N, сумма цифр которого равна К, а сумма цифр N*N равна К*К.
Помогите,прошу!!!
stimka321, где в приведенной цитате слово клавиатура?

Добавлено через 33 секунды
или К - Клавиатура
0
ValeryS
Модератор
7372 / 5573 / 707
Регистрация: 14.02.2011
Сообщений: 18,949
19.10.2014, 22:15 20
Цитата Сообщение от stimka321 Посмотреть сообщение
Здесь подразумевается ввод с клавы.
а может быть из файла
а может по ком порту
по сети
у современного компьютера слишком много потоков ввода/вывода
0
19.10.2014, 22:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.10.2014, 22:15

Найти все трехзначные числа Армстронга: сумма кубов цифр равна самому числу
В чем моя ошибка? #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int main() { ...

Найти числа, что сумма первой и второй цифр в их записи равна сумме третей и четвертой
Добрый вечер. Помогите решить задачку на языке C можно еще на Паскале. На...

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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