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

Длинная арифметика: найти разность между неотрицательными числами А и В - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Упорядочить по возрастанию только положительные элементы массива, оставив остальные элементы на своих местах. Напечатать индексы тех элементов массива http://www.cyberforum.ru/cpp-beginners/thread415661.html
которые остались на своих местах. //IS-11,Bazarnov Denis,Lab.05,Var.2,04-11-11 #include <stdio.h> #include <math.h> #include <conio.h> #define N 30 int main() { int s;
C++ Кодировка Пишу программу на си, ее задача записывать русские слова в файл, проблема в том, что в файл записываются иероглифы, как это исправить?P.S. транслит не предлагать) Использую #include <clocale>,... http://www.cyberforum.ru/cpp-beginners/thread415647.html
Посоветуйте программу для составления блок схем по коду программы. C++
Здравствуйте, подскажите пожалуйста кто работал с такими программами. Я лично пользовался Code Visual to Flowchart (программа хорошая, но сами блоки немного неправильные) еще использовал прогу...
C++ Вывести знак зодиака
20. Известно, что астрологи делят год на 12 периодов и каждому из них ставят в соответствие один из знаков Зодиака. 20.01 - 18.02 - Водолей 23.07 - 22.08 - Лев 19.02 - 20.03 - Рыбы ...
C++ Помогите решить задачу со строками на С++ http://www.cyberforum.ru/cpp-beginners/thread415591.html
Вот собственно задание:Записать, отделив пробелами, в середину S1 все символы с S2, не являющихся буквами, или цифрами.
C++ Сформировать из cтолбцов матрицы В матрицу С, в которой столбцы расположены в порядке убывания А)Сформировать из cтолбцов матрицы В матрицу С, в которой столбцы расположены в порядке убывания модулей сумм их элементов. Б) в матрице С найти сумму элементов строк с четными номерами, содержащих... подробнее

Показать сообщение отдельно
Shaykemelov
9 / 9 / 2
Регистрация: 14.11.2011
Сообщений: 27

Длинная арифметика: найти разность между неотрицательными числами А и В - C++

23.12.2011, 18:17. Просмотров 780. Ответов 0
Метки (Все метки)

Не могу решить задачу на С++ А-Б длинная арифметика
Требуется найти разность между неотрицательными числами А и В.
ВОТ КОД
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
#include<iostream>
#include<string>
using namespace std;
int main()
{
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
    string st;
    int i,a[100000],b[100000],c[100000],s1=0,s2=0,x=0,y=0,j;
    cin>>st;
    for(i=st.length()-1; i>=0; i--){a[0]++; a[a[0]]=st[i]-48;y++; s1+=st[i]-48;}
    cin>>st;
    for(i=st.length()-1; i>=0; i--){b[0]++; b[b[0]]=st[i]-48;x++; s2+=st[i]-48;}
    c[0]=max(a[0],b[0]);
    if((y>=x)&&(s1>=s2))
    {
    for(i=1; i<=c[0]; i++)
    {
        if(a[i]<b[i]) {a[i]+=10;a[i+1]=a[i+1]-1;}
        c[i]=c[i]+a[i]-b[i];
    }
    if(c[0]>1)
    {
    if (c[c[0]]==0) c[0]--;
    }
    for(i=c[0]; i>=1; i--)
    {
        cout<<c[i];
    }
    }
    else
    {
        for(i=1; i<=c[0]; i++)
    {
        if(b[i]<a[i]) {b[i]+=10;b[i+1]=b[i+1]-1;}
        c[i]=c[i]+b[i]-a[i];
    }
    if(c[0]>1)
    {
    if (c[c[0]]==0) c[0]--;
    }
    cout<<"-";
    for(i=c[0]; i>=1; i--)
    {
        cout<<c[i];
    }        
    }
 
    return 0;
}
помогите мне с решением этой задачи
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru