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

Длинная арифметика N+1 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Несколько элементарных заданий http://www.cyberforum.ru/cpp-beginners/thread148123.html
Здравствуйте. Не мог бы кто-нибуть помочь с написанием коекаких элементарных програмок, для знающего человека они будут пустяковыми, но для меня они непосильны.Заранее спасибо и надеюсь на вашу помощь(желательно если можно то сегодня попробуйте ктонибуть решить пожалуйста и суда текст скинуть, ато завтро последняя сдача (((((( 1) Написать программу для вычисления суммы 20-ти членов...
C++ Заданы два текста. Определить, можно ли получить первый текст перестановкой слов второго текста. Заданы два текста. Определить, можно ли получить первый текст перестановкой слов второго текста. http://www.cyberforum.ru/cpp-beginners/thread148108.html
Для каждого из слов данного текста указать, сколько раз оно встречается в предложении C++
Для каждого из слов данного текста указать, сколько раз оно встречается в предложении
C++ Создать функцию для ввода целого числа с терминала. Причем вводимое число может быть десятичным, если оно не начинается нулем, восьмеричным, если лиди
Создать функцию для ввода целого числа с терминала. Причем вводимое число может быть десятичным, если оно не начинается нулем, восьмеричным, если лидирующая цифра – ноль, шестнадцатеричным, если оно содержит префикс 0x или 0X. С помощью этой функции ввести три целых числа, затем вывести их сумму.
C++ В строке записано выражение вида m/n, где m и n – натуральные числа. Дописать в строку значение этого выражения, округлив его до сотых. http://www.cyberforum.ru/cpp-beginners/thread148105.html
В строке записано выражение вида m/n, где m и n – натуральные числа. Дописать в строку значение этого выражения, округлив его до сотых.
C++ Дано вещественное число r и целые неотрицательные m и n. Записать число r в строку в формате :m:n по правилам форматного вывода ТР Дано вещественное число r и целые неотрицательные m и n. Записать число r в строку в формате :m:n по правилам форматного вывода ТР подробнее

Показать сообщение отдельно
MahovIV
5 / 6 / 1
Регистрация: 17.09.2013
Сообщений: 337
02.01.2014, 00:59     Длинная арифметика N+1
Попробуйте так.
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <iostream>
#include <vector>
#include <iomanip>
#include <string>
#include <cstdlib>
#define BASE 10
#define LEN 1
 
 typedef std::vector <int> type;
 
void readlong (type &);
void mult (type &);
 
int main()
 {
    type a;
    readlong (a);
 
    mult (a);
    return 0;
 }
 
void readlong (type &vec)
 {
    std::string str;
    std::cin >> str;
 
    for (int i = str.size (); i > 0; i--)
        vec.push_back (atoi (str.substr (i - LEN, LEN).c_str()));
 }
 
void mult (type &a)
 {
     int ostatok = 0, i;
     a[0]++;
     if(a[0] > 9) {
             ostatok = a[0] / 10;;
             a[0] = a[0] % 10;
             }
             for(i = 1; i < a.size(); i++) {
                   a[i] = a[i] + ostatok;
                   if(a[i] > 9) {
                           ostatok = a[i] / 10;
                           a[i] = a[i] % 10;
                           }
                           else {
                                ostatok = 0;
                                }
                           }
                           if(ostatok != 0) {
                                      std::cout << ostatok;
                                      for(i = a.size() - 1; i > 0; i--) {
                                            std::cout << a[i];
                                            }
                                            std::cout << a[0] << "\n";
                                            }
                                            else {
                                                 for(i = a.size() - 1; i > 0; i--) {
                                                       std::cout << a[i];
                                                       }
                                                       std::cout << a[0] << "\n";
                                      }
 }
 
Текущее время: 15:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru