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

Вывести все 6-ти значные числа, которые делятся без остатка на сумму своих цифр - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сложение разных типов http://www.cyberforum.ru/cpp-beginners/thread643467.html
У меня из файла в переменную int считывется число.. Мне нужно занести в переменную string это число + строка. Например int i; string str; str = "STROKA" + i;
C++ fflush(stdin) В одной из ранее открытых тем, было сказано, что fllush(stdin) лучше не использовать. Чем можно заменить эту функцию? http://www.cyberforum.ru/cpp-beginners/thread643459.html
неправильность вызова qsort C++
#include <iostream> #include <iomanip> using namespace std; struct User { int id; char nickname; int karma; };
Массив C++
Здравствуйте. Заранее прошу прощения, наверно вопрос баянистый. Пытался узнать длину массива таким способом: int lenght = sizeof(a)/sizeof(int);Здесь а - целочисленный массив. Дело в том, что в...
C++ Нужна консультация http://www.cyberforum.ru/cpp-beginners/thread643439.html
#include <iostream> #define N 30 using namespace std; int main() { int a; int i,k; float sum; for (i=0; i<N; i++) if ( a < 0) if (a/N) k+=a;
C++ Как прикрутить qt creator к visual studio 2010? Здравствуйте, решил не смотря на свои же противоречия перейти и поработать с qt. Но вот столкнулся с проблемой, хочется прикрутить qt к студии, а не знаю как это сделать. Подскажите, пожалуйста,... подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
28.08.2012, 18:18
Цитата Сообщение от ashta Посмотреть сообщение
Спасибо всем за помощь, но мне решение в такою ключе не подойдет -Е6-Е7, нужно адаптировать под то, что я этого еще знаю.
- DaskOFF, правильно написал
Цитата Сообщение от DaskOFF Посмотреть сообщение
1E6 = 1 000 000
1E7 = 10 000 000
. Программисты рациональный народ - поэтому чтобы каждый раз не вбивать Н-ое число нулей язык содержит специальный формат ввода для ввода десятичной мантиссы, а именно Е а далее идёт число разрядов т.е. int v = 100 эквивалентно int v = 1E2 а десять в 6-й 1000000 равно 1Е6 а 2 на 10 в шестой это 2Е6 что тут не понятного

Не по теме:

Попробуйте сделать ввод 2E6 для этого кода и будете приятно удивлены

Код
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
 
int main()
{
    int val = 0;
    cout<<"Enter val : ";cin>>val;//Прямо в консоли при англ раскладке вбейте 2E6
    cout<<val<<endl;//Увидите что ввели
    return 0;
}



Хорошо давайте проанализируем Ваш код указав на ошибки:

Цитата Сообщение от ashta Посмотреть сообщение
nt sum=0,kol=0;
- сумма и количество равны ную до цикла, тобишь в самом цикле они только будут накапливаться. Вы понимаете, что для каждого числа отдельно должны сумму и число цифр накапливать?От того у вас и не работало, потому что суммировались все значения разрядов чисел и kol также накапливало общее количество во всех числах.
Далее что вас тут пугает
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
for(long i = 1E6; i < 1E7; i++)
или в каком ключе записано, что вы понять не можете?
А вот такой код вам понятен???
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
int main()
{
    int buf   = 0;
    int sum   = 0;
    for(int i = 100000; i < 1000000; i++)
    {
        buf = i;
        sum = buf % 10;
        while(0 < (buf /= 10))
            sum += buf % 10;
        if(i % sum == 0)//Делится без остатка
            cout<<i<<" % "<<sum<<" = 0\n";
    }
    return 0;
}
http://liveworkspace.org/code/9e7dfe86a04315f9885a8c5a80c49da0
100000 % 1 = 0
100002 % 3 = 0
100008 % 9 = 0
100010 % 2 = 0
100011 % 3 = 0
100012 % 4 = 0
100014 % 6 = 0
100016 % 8 = 0
...

Не по теме:

Я кажется понимаю что смутил тип long, т..е если в задачах используем дабл, флоат, инт всё понятно чуть шаг в сторону и приводим тип для тех же целых что и инт всё полные непонятки (до сих пор не пойму в ВУЗах, что забывают рассказать о типах переменных?)


Теперь об этом
Цитата Сообщение от valeriikozlov Посмотреть сообщение
аменить на:
Код C++
1
for(long i = 1E5; i < 1E6; i++)
Я неверно трактовал 6-ти значное, т.е в моём представлении это была единица и 6-ть ноликов(т.е изначально посчитал что задача подразумевала рассматривать числа в диапазоне 1000000 до 9999999), на самом деле 6-ти значное число это число в котором всех цифр 6-ть (тобишь от 100000 до 999999)
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru