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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Various1
Сообщений: n/a
#1

Сложение двух массивов - C++

05.11.2011, 16:08. Просмотров 1015. Ответов 1
Метки нет (Все метки)

Вот условие задачи:
Your friend is the person who does not like any limitations in the life. And when you said to him that it is totally impossible to work with integer numbers bigger than 4 294 967 296 in C++ he blamed you in time-wasting during the university study.So to prove that you hadn't waste 2 months of your life studying C++ in university you have to solve this issue.
Your task is to write a program that which can add two integer numbers that are not more than 101000 to each other.
Your program have to implement void addVeryLongIntegers(char *a,char *b,char *c) function.
Note. The program have to use pointer.

Input:
First line contains a and b numbers that are not bigger that 101000

Output:
The sum of a and b.
Samples:

№ INPUT OUTPUT
1 5 5 10
2 222222222222222222222 111111111111111111111 333333333333333333333
3 4958439238923098349024 1 4958439238923098349025


Вот мой код:
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
#include<iostream>
#include<cstring>
using namespace std;
const int maxn=1000000;
void addVeryLongIntegers(char *a,char *b,char *c){
    int x,y;
    x=strlen(a);
    y=strlen(b);
    int arr1,arr2;
    for(int i=0;i<x;i++){
        arr1=int(a[i]-48);
    }
    for(int i=0;i<y;i++){
        arr2=int(b[i]-48);
    }
    for(int i=0;i<x+y;i++){
    c[i]=(arr1+arr2)-48;
    }
    cout<<c<<"\n";
}
int main(){
    char a[maxn];
    char b[maxn];
    char c[maxn];
    cin>>a;
    cin>>b;
    addVeryLongIntegers(a,b,c);
    return 0;
}
Просьба исправить. По-моему я что-то напутал с конвертированием int в char и обратно. Всё компилируется, но выдаёт ошибку. Если можно ещё и объясните.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2011, 16:08     Сложение двух массивов
Посмотрите здесь:

Сложение двух массивов. - C++
Что то я не как не пойму если я пишу вот такой код #include &quot;stdafx.h&quot; #include &quot;conio.h&quot; int aaa = {2,3,4}, bbb = {5,6,7}, ...

Сложение столбиков двух массивов чисел - C++
Например есть два массива int a={2,8,3,9,4,7,5,8,6,7,3,8,2}; int b={4,7,3,8,5,7,3,8}; Как мне их сложить в столбик (длинная...

Сложение двух динамических массивов char* в одну строку - C++
В массивы вводятся данные, масcивы вида : int n,k; char *a,*b; a=new char; b=new char; Как вывести результирующую...

Произвести сложение двух массивов 5х3 по правилам сложения матриц - C++
Произвести сложение двух массивов 5х3 по правилам сложения матриц. Не могу решить помогите с решением. Зарание спасибо. :)

Конкатенация двух нибблов (сложение двух полубайт в байт) - C++
Как из этих двух полубайт получить полноценный байт со значение &quot;0x3e&quot;? unsigned char first_nibbl = 0x03 unsigned char last_nibbl =...

Сложение массивов - C++
Произвести сложение двух массивов 5х3 по правилам сложения матриц.

сложение массивов - C++
Напишите функцию, которая складывает поэлементно два массива, и записывает результаты сложений в третий массив. Массивы содержат элементы ти...

Сложение Массивов - C++
Помогите у меня такая задача есть двумерный массив 225x225 это массив нужно разбить на другие массивы 15x15 (т.е 225 массивов 15х15) и...

Поэлементное сложение массивов - C++
Нужно чтобы 2 массива поэлементно складывались и в третьем выводился результат сложения, Причем нужно с клавиатуры задавать в консоли...

Сложение двумерных массивов - C++
помогите пожалуйста с прогой!!! Написать функцию, которая складывает соответствующие элементы двух заданных массивов и заносит...

Сложение и присвоение массивов - C++
Помогите пожалуйста! Ввод-два массива одной длинны.Необходимо их поэлементно сложить и записать в третий массив. Зарание большое...

ПРОСТЕЙШИЕ ПРОГРАММЫ НА С++ Сложение массивов - C++
Произвести сложение двух массивов 5х3 по правилам сложения матриц. #include &lt;iostream.h&gt; int main() { ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DKOI
24 / 24 / 1
Регистрация: 08.09.2010
Сообщений: 136
05.11.2011, 16:17     Сложение двух массивов #2
Во первых, при обратном преобразовании у вас стоит минус, хотя должен быть плюс, это раз. Два - если сложить 7 и 8 будет 15, то есть 5 в этом разряде и единичка переходит в следующий, вы этого не отслеживаете.

Добавлено через 3 минуты
И три, при сложении двух чисел максимальная возможная длина их - на единицу больше максимальной из длин двух чисел, а вы идете до х+у да ещё и по основным масивам, где стольких символов вовсе нет!
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru