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

Некоторое число оканчивается на 2 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Переделайте прогу на массивы в Си++ http://www.cyberforum.ru/cpp-beginners/thread742951.html
Произвольно заданы 3 одномерных массива с одинаковым числом элементов. Сформировать массив, каждый элемент которого является максимальным элементом соответственно в каждом из трех исходных массивах.Определить местоположение максимального и минимального элементов в сформированном массиве. uses crt; const n=10; var A,B,C:arrayof integer; D:array of integer; i,k,l:byte;...
C++ Одномерный массив из отрицательных чисел. Посчитать их абсолютные значения Добрый день, прошу вас помочь мне с написанием программы. Задача сводится к следующему: Создать 1-мерный массив из 5 отрицательных чисел. Посчитать их абсолютные значения и выдать их во внешнем файле. Рассчитываю на вашу оттдачу! http://www.cyberforum.ru/cpp-beginners/thread742938.html
Метод дихотомии и пример программы методом оптимизации C++
Помогите пожалуйста, дайте пример программы на С++ решенную методом дихотомии и пример программы методом оптимизации.
C++ Отредактировать код (функция с вводом любого интервала и шага)
Помогите отредактировать код,под С++.Нужно чтобы код использовался как функция с вводом любого интервала и шага. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dx Хнач = -2 Хкон = 2 dx = 0.01 #include <iomanip> #include <cmath> #include <iostream> #include <stdlib.h>
C++ Массив структур, непонимание деталей http://www.cyberforum.ru/cpp-beginners/thread742882.html
Всем добрый день. Есть несколько маленьких вопросов по массивам структур. И извините за странные названия переменных.:-| я создаю структуру такого типа class Lancuch { public: char cos; Lancuch * nastepny;
C++ Массивы. Удалить все столбцы, в которых четное количество нечетных элементов 2)в двумерном массиве, элементы которого-целые числа, произвести следующие действия:удалить все столбцы, в которых четное количество нечетных элементов. подробнее

Показать сообщение отдельно
SummerRain
 Аватар для SummerRain
325 / 324 / 17
Регистрация: 16.12.2012
Сообщений: 544
24.12.2012, 18:50     Некоторое число оканчивается на 2
вообщем что-то большие числа у меня тупят. использовал long long, __int64.
значит надо немного математики.
число Х1 имеет вид А1 А2 А3 ... Аn 2.
число Х2 имеет вид 2 А1 А2 А3 ... Аn.
Т.е. X1 = A1 * 10^n + A2 * 10^(n-1) + A3 * 10^(n-1) + ... + An * 10 + 2;
X2 = 2 * 10^n + A1 * 10^(n-1) + A2 * 10^(n-1) + A3 * 10^(n-2) + ... + An;
а т.к. Х2 = Х1*2, то 19*10^(n-1)A1 + 19*10^(n-2)A2 + 19*10^(n-3)A3 + ... + 19An = 2 * 10^n - 2*2;

выносим за знак скобок общий множитель 19 и получаем:
19(10^(n-1)A1 + 10^(n-2)A2 + 10^(n-3)A3 + ... + An) = 2 * 10^n - 4;
т.е. число вида 2 * 10^n - 4 должно делиться на 19 без остатка. Осталось всего навсего найти n. а полученое частно от деления и есть наше число.
Естественно, двойку в конце надо прописать.

щас напишу код поиска.

Добавлено через 16 минут
Цитата Сообщение от HighPredator Посмотреть сообщение
SummerRain, я про ваше спрашивал. Вы считаете оно подходит под условие задачи?
а я ещё не предлагал чисел. Я лишь говорил, что их нет. Оказалось, что есть

не знаете, почему этот код не выдаёт ответа
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <math.h>
 
int main()
{
    double n;
    for (n = 1; n < 20; ++n)
    {
        if ((long long int)((pow(10.0, n)) * 2 - 4) % 19 == 0)
            std::cout << n;
    }
    
    system ("pause");
    return 0;
}
при n == 18 получается число кратное 19. На калькуляторе проверял

Добавлено через 1 час 1 минуту
этот код выполняется
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <math.h>
#include <stdio.h>
 
int main()
{
    long long int x = 100;
    long long int y = x * 2;
    long long int z = x * 10;
    int width=20;   
    for (long long int i = x; i < z; ++i)
    {
        if (i * 2 == i/10 + y)      
            printf("%0*lli", width, i);
    }
    system ("pause");
    return 0;
}
выдаёт 105 (правильно) т.к. условия проверки последней цифры 2 нету.
а вот этот уже нет
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <math.h>
#include <stdio.h>
 
int main()
{
    long long int x = 100000000000000000;
    long long int y = x * 2;
    long long int z = x * 10;
    int width=20;   
    for (long long int i = x; i < z; ++i)
    {
        if (i * 2 == i/10 + y)      
            printf("%0*lli", width, i);
    }
    system ("pause");
    return 0;
}
Добавлено через 1 минуту
не хватает производительности компа?
 
Текущее время: 06:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru