Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2018, 05:38   #1
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию A+B Длинна арефметика

выводит с ошибками я думаю в этом куске кода ошибка можете посмотреть


Код:
void conver(int a[200],string s)
{
  a[0]=s.length();
  for (int i = 0; i < a[0]; i++)
  {
    a[i+1]=s[a[0]-i-1];
  }
}



Код:
#include <bits/stdc++.h>
 
 
using namespace std;
void conver(int a[200],string s)
{
  a[0]=s.length();
  for (int i = 0; i < a[0]; i++)
  {
    a[i+1]=s[a[0]-i-1];
  }
}
 
void sum(int a[200],int b[200],int c[200])
{
   int r=0;
   c[0]=max(a[0],b[0]);
   for (int i = 1; i <= c[0]; ++i)
   {
     c[i]=r+a[i]+b[i];
     r=c[i]/10;
     c[i]=c[i] % 10;
   }
   if(r>0)
   {
 
 
    c[0]++;
    c[c[0]]=r;
}
   }
 
 
 
 
 
 
int main()
{
 
string s1,s2;
cin>>s1>>s2;
int a[200];
int b[200];
int c[200];
 
conver(a,s1);
conver(b,s2);
sum(a,b,c);
for(int i=c[0];i>0;i--)
    cout<<c[i];
}
Александр121 вне форума Ответить с цитированием
Старый 03.05.2018, 09:23   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Александр121 Посмотреть сообщение
Код:
for (int i = 0; i < a[0]; i++)
  {
    a[i+1]=s[a[0]-i-1];
  }
Это ересь какая-то..

я не знаю синтаксис C++, возможно потребуется приведение типов.
но, возможно, Вы хотели написать так:
Код:
void conver(int a[200],string s)
{
  a[0]=s.length();
  for (int i = 0; i < a[0]; i++)
  {
    a[i+1]=(int)(s[i]-'0');
  }
}
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.05.2018, 10:49   #3
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
// Example program
#include <iostream>
#include <string>

using namespace std;
void conver(int a[200],string s)
{
  a[0] = s.length();
  for (int i = 1; i <= a[0]; i++)
  {
      a[i] = s[a[0]-i]-'0';
  }
}
 
void sum(int a[200],int b[200],int c[200])
{
   int r=0;
   int s = 0;
   c[0]=max(a[0],b[0]);
   for (int i = 1; i <= c[0]; ++i)
   {
     s = a[i]+b[i];
     r= s/10;
     c[i] += s % 10;
   }
   if(r>0)
   {
        c[0]++;
        c[c[0]]=r;
    }
}
 
int main()
{
 
string s1,s2;
cin>>s1>>s2;
int a[200];
int b[200];
int c[200];
for (int i=0;i<200;i++) {a[i]=0;b[i]=0;c[i]=0;} 
conver(a,s1);
conver(b,s2);
sum(a,b,c);
for(int i=c[0];i>0;i--)
    cout<<c[i];
}
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сравнение строк длинная арефметика Александр121 Помощь студентам 1 18.04.2018 17:01
Минимальная длинна пароля - PostgreSQL xameleon48 SQL, базы данных 1 30.01.2018 16:05
Длинна строки(линии) в memo paravoz1k Компоненты Delphi 5 15.08.2011 15:27
Длинна строки grimm_jow Общие вопросы C/C++ 5 29.01.2010 09:42
Минимальная длинна слова в строке Anarki Общие вопросы C/C++ 7 24.09.2009 20:39