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

Дано число n. Выведите число n+1 - C++

Восстановить пароль Регистрация
 
Kolbusdkiy
 Аватар для Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
15.04.2014, 19:36     Дано число n. Выведите число n+1 #1
Помогите решить, а то мой код не проходит полностью.

Дано число n. Выведите число n+1.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2014, 19:36     Дано число n. Выведите число n+1
Посмотрите здесь:

Дано целое число. Вывести его строку-описание вида «отрицательное чет-ное число», «нулевое число», «положительное нечетное число» и т. д. C++
Дано действитёльное число х. Получить целую часть *) числа х; затем — число х, округленное до ближайшего целого; затем — число х без дробных цифр. C++
Дано натуральное число n. Выведите все числа от 1 до n (Рекурсия) C++
Дано натуральное число n>1. Выведите все простые множители этого числа в порядке возрастания с учетом кратности. C++
Дано 2-ух-значное число. Сделать так, чтоб программа преобразовала это число в новое число кол-во десятков C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
15.04.2014, 19:37     Дано число n. Выведите число n+1 #2
Цитата Сообщение от Kolbusdkiy Посмотреть сообщение
Дано число n. Выведите число n+1.
C++
1
2
3
int n;
std::cin>>n;
std::cout<<n+1;
Kolbusdkiy
 Аватар для Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
15.04.2014, 19:50  [ТС]     Дано число n. Выведите число n+1 #3
cooller_94, такой код не пройдет.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
15.04.2014, 19:59     Дано число n. Выведите число n+1 #4
Kolbusdkiy, Дайте ссылку на ресурс где закидывать эту задачу
и попробуйте объявить другой тип данных, например long long! Возможно, число не влазит в диапазон
Kolbusdkiy
 Аватар для Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
15.04.2014, 20:44  [ТС]     Дано число n. Выведите число n+1 #5
cooller_94, вот ссылка.
Тип long long лучше, но еще не все тесты.
kirill1059
 Аватар для kirill1059
14 / 14 / 2
Регистрация: 16.04.2013
Сообщений: 370
15.04.2014, 20:59     Дано число n. Выведите число n+1 #6
Kolbusdkiy,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main() {
 
    long long n;
 
    cin >> n;
    cout << n + 1 << "\n";
 
    system("pause");
    return 0;
}
Kolbusdkiy
 Аватар для Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
15.04.2014, 21:23  [ТС]     Дано число n. Выведите число n+1 #7
kirill1059, не проходит такое.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
15.04.2014, 21:34     Дано число n. Выведите число n+1 #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Kolbusdkiy, У меня прошло! юзай длинную арифметику

Добавлено через 4 минуты
Kolbusdkiy, В общем, закинь этот
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<iostream>
#include <string>
#include<vector>
#include<cstdlib>
 
typedef std::vector<int> lnum;
const int base = 1000*1000*1000;
 
int main()
{
    std::string s;
    std::cin>>s;
    lnum a;
    for (int i=(int)s.length(); i>0; i-=9)
        if (i < 9)
            a.push_back (atoi (s.substr (0, i).c_str()));
        else
            a.push_back (atoi (s.substr (i-9, 9).c_str()));
 
    lnum b;
    b.push_back(1);
 
 
    int carry = 0;
    for (size_t i=0; i<std::max(a.size(),b.size()) || carry; ++i)
    {
        if (i == a.size())
            a.push_back (0);
        a[i] += carry + (i < b.size() ? b[i] : 0);
        carry = a[i] >= base;
        if (carry)  a[i] -= base;
    }
    if(a.empty())
        std::cout<<0;
    else
        std::cout<<a.back();
    for (int i=(int)a.size()-2; i>=0; --i)
        std::cout<<a[i];
 
    return 0;
}
Про длинную арифметику можешь почитать на e-maxx
Ярослав Никитин
 Аватар для Ярослав Никитин
0 / 0 / 2
Регистрация: 13.04.2014
Сообщений: 70
15.04.2014, 21:35     Дано число n. Выведите число n+1 #9
Цитата Сообщение от Kolbusdkiy Посмотреть сообщение
не проходит такое.
Ты так не шути.

C++
1
2
cin >> n;
    cout << n + 1 << "\n";
как не проходит?
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,155
Завершенные тесты: 1
15.04.2014, 21:36     Дано число n. Выведите число n+1 #10
В приведенном задании тестовое число 3, результат равен 4.
Может имелось ввиду, что-нибудь типа
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
int main() 
{
    int n;
    cin >> n;
    cout<< ++n<< "\n";
    system("pause");
    return 0;
}
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
15.04.2014, 21:36     Дано число n. Выведите число n+1 #11
Цитата Сообщение от Ярослав Никитин Посмотреть сообщение
Ты так не шути.
Что не ясно? не проходит
Это из за того, что вводимые числа на сервере больше диапазона int64, а значит число нужно хранить в виде строки
Kolbusdkiy
 Аватар для Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
15.04.2014, 21:36  [ТС]     Дано число n. Выведите число n+1 #12
Ярослав Никитин, еще один умник, учи длинную арифметику)))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2014, 21:47     Дано число n. Выведите число n+1
Еще ссылки по теме:

C++ Заменить данное натуральное число на число, которое получается из исходного записью его цифр в обратном порядке. Например, дано число 156, нужно получ
РЕКУРСИЯ-----дано натуральное число N. выведите все цифры по одной, в обратном порядке, разделяя их пробелами или новыми строками. При решении этой за C++
Рекурсия. Дано натуральное число N. Выведите все его цифры по одной, в обычном порядке, разделяя их пробелами или новыми строками C++

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

Или воспользуйтесь поиском по форуму:
Ярослав Никитин
 Аватар для Ярослав Никитин
0 / 0 / 2
Регистрация: 13.04.2014
Сообщений: 70
15.04.2014, 21:47     Дано число n. Выведите число n+1 #13
Цитата Сообщение от Kolbusdkiy Посмотреть сообщение
Помогите решить, а то мой код не проходит полностью.
Дано число n. Выведите число n+1.
WTF??? Что здесь происходит? Объясните мне как такой вопрос можно отвечать так сложно?

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<iostream>
#include <string>
#include<vector>
#include<cstdlib>
 
typedef std::vector<int> lnum;
const int base = 1000*1000*1000;
 
int main()
{
    std::string s;
    std::cin>>s;
    lnum a;
    for (int i=(int)s.length(); i>0; i-=9)
        if (i < 9)
            a.push_back (atoi (s.substr (0, i).c_str()));
        else
            a.push_back (atoi (s.substr (i-9, 9).c_str()));
 
    lnum b;
    b.push_back(1);
 
 
    int carry = 0;
    for (size_t i=0; i<std::max(a.size(),b.size()) || carry; ++i)
    {
        if (i == a.size())
            a.push_back (0);
        a[i] += carry + (i < b.size() ? b[i] : 0);
        carry = a[i] >= base;
        if (carry)  a[i] -= base;
    }
    if(a.empty())
        std::cout<<0;
    else
        std::cout<<a.back();
    for (int i=(int)a.size()-2; i>=0; --i)
        std::cout<<a[i];
    system("pause");
    return 0;
}
Добавлено через 34 секунды
Цитата Сообщение от Kolbusdkiy Посмотреть сообщение
учи длинную арифметику
О чем речь? объясни.

Добавлено через 5 минут
Спасибо, я нашел информацию, интересная вещь
Yandex
Объявления
15.04.2014, 21:47     Дано число n. Выведите число n+1
Ответ Создать тему
Опции темы

Текущее время: 03:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru