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

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

Войти
Регистрация
Восстановить пароль
 
qwerasdf
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 7
#1

Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9 - C++

25.11.2014, 21:35. Просмотров 545. Ответов 4
Метки нет (Все метки)

Вроде код правильный наклепала. А вывода никакого нет. В чем ошибка?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <vcl.h>
#include <iostream.h>
#include <math.h>
#pragma hdrstop
 
#pragma argsused
int main(int argc, char* argv[])
{ int i,j,d,k,l,m,n;
for (i=10;i<=99;i++)
for (j=2;j<=9;j++) {
d=i*j;
k=d/10;
l=d%10;
m=k+l;
if (j==2) n=m;
if ((j==9)&&(m==n)) cout<<i<<endl;}
cin.get();
cin.get();
        return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2014, 21:35     Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9
Посмотрите здесь:

Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9 - C++
Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9. Знаю что должно вывести 18, 45, 90,...

Найти все двузначные числа, сумма цифр которых не меняется при умножении 2,3,4,5,6,7,8,9 - C++
Найти все двузначные числа сумма цифр которых не меняется при умножении 2,3,4,5,6,7,8,9 на .Числа от 10 до 99.

На отрезке [2, n] найти все натуральные числа, сумма цифр которых при умножении числа на а не изменится - C++
Помогите,вот задание. На отрезке найти все натуральные числа, сумма цифр которых при умножении числа на а не изменится. Код...

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

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

Найти все двузначные числа, которые при умножении на 2 заканчиваются на 8, а при умножении на 3 - на 4. - C++
Привет мозги, нужно решить задачу по Си++. Найти все двузначные числа, которые при умножении на 2 заканчиваются на 8, а при умножении на 3...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Байт
Эксперт C
15842 / 10169 / 1522
Регистрация: 24.12.2010
Сообщений: 19,177
25.11.2014, 22:31     Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9 #2
Цитата Сообщение от qwerasdf Посмотреть сообщение
Вроде код правильный наклепала
Интересно, откуда такая уверенность? Только потому что транслятор его сьел?
Оформление кода - чудовищно. Я себе все глазки поломал, пытаясь найти закрывающую скобку. Пойми, ты же людям код показываешь! Что ж ты их не жалеешь совсем?! А еще помощи хочешь!
Но даже сломанным глазом видно - логика в твоем коде и не ночевала...
ValeryS
Модератор
6551 / 5017 / 463
Регистрация: 14.02.2011
Сообщений: 16,739
25.11.2014, 22:37     Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9 #3
Цитата Сообщение от qwerasdf Посмотреть сообщение
k=d/10;
l=d%10;
откуда такая уверенность что число после умножения останется двузначным?
умножь 99 на 9
как раз чтобы выполнилось условие результат должен получится трехзначным
D_in_practice
331 / 331 / 159
Регистрация: 02.10.2014
Сообщений: 666
25.11.2014, 22:49     Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9 #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream>
 
int main(){
    
    int a[] = {2, 3, 4, 5, 6, 7, 8, 9};
    
    for (int i = 10; i <= 99; ++i){
        
        int sum1 = i/10 + i%10;
        
        int flag = 1;
        for (int j = 0; j < sizeof(a)/sizeof(a[0]); ++j){
            
            int sum2 = (i*a[j])/100 + ((i*a[j])/10)%10 + (i*a[j]) %10;
            if (sum1 != sum2){
                flag = 0;
                break;
            }
        }
        
        if (flag == 1)
            std::cout << ' ' << i;
    }
    std::cout << std::endl;
}
18 45 90 99
_Ivana
26.11.2014, 01:04     Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9
  #5

Не по теме:

Haskell
1
2
res = [n|n<-[10..99], all (== sumDig n) $ map (sumDig.(n*)) [2..9]]
    where sumDig = sum.map digitToInt.show
[18,45,90,99]

Yandex
Объявления
26.11.2014, 01:04     Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9
Ответ Создать тему
Опции темы

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