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

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

Войти
Регистрация
Восстановить пароль
 
ALEX_G
0 / 0 / 0
Регистрация: 20.10.2009
Сообщений: 9
#1

Массивы. - C++

20.10.2009, 21:02. Просмотров 382. Ответов 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
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int main()
{
char ch1[5000];
int i,n1,*mas1,k;
cout<<"Vvedite chislo 1 = ";cin>>ch1;
n1=strlen(ch1);
mas1=new int[n1];
for(i=0; i<n1; i++)  mas1[i]=ch1[i]-48;
for (i=0; i<n1; i++)
printf("%3d",mas1[i]);
cout<<endl;
char ch2[5000];
int n2,*mas2,*mas3;
cout<<"Vvedite chislo 2 = ";cin>>ch2;
n2=strlen(ch2);
mas2=new int[n2];
for(i=0; i<n2; i++)  mas2[i]=ch2[i]-48;
for (i=0; i<n2; i++)
printf("%3d",mas2[i]);
cout<<endl;
int n;
 n=0;
if (n1==n2) k=n1-1;
 
if (n2>n1) {n=n2-n1; for (i=0;i<=n1-1;i++) mas1[i+n]=mas1[i];
for (i=0;i<n;i++) mas1[i]=0;
for (i=0;i<=n2-1;i++) cout<<mas1[i];
k=n2-1;}  n=0;
cout<<endl;
if (n1>n2) {n=n1-n2; for (i=0;i<=n2-1;i++) mas2[i+n]=mas2[i];
for (i=0;i<n;i++) mas2[i]=0;
for (i=0;i<=n1-1;i++) cout<<mas2[i];
k=n1-1;}
cout<<k;
getch();
}
Проблема в обнулении одного из массивов. В конце выводит левые цифры(((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2009, 21:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массивы. (C++):

Массивы. Циклические алгоритмы (Заполнить массивы случайными числами, лежащими в интервале 0 до 100) - C++
Доброго дня, уважаемые форумчане, помогите пожалуйста решить задание. Заполнить массивы случайными числами, лежащими в интервале 0 до...

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) - C++
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Попадание точки. Массивы чисел. Массивы записей. - C++
Всем привет. По языкам задали три контрольные на си. Я сам си не знаю, даже не представляю, поэтому очень нужна ваша помощь. ...

Многомерные массивы, как перебирать внутренние массивы - C++
Здравствуйте. Такой учебный код и плохо понимаю как перебираются внутренние массивы, может кто пояснит подоходчивее. Именно внутренний...

Массивы структур, массивы векторов - C++
Разработайте тип данных «Вектор в трехмерном пространстве» в виде структуры, поля которой — координаты вектора. Напишите следующие функции:...

Массивы структур и массивы строк - C++
1. Сформировать динамический массив из элементов структурного типа. Структурный тип определен в варианте. 2. Распечатать...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alibaba314
18 / 18 / 1
Регистрация: 22.03.2009
Сообщений: 58
20.10.2009, 21:09 #2
покрывайте код в tag пожалуйста:

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
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int main()
{
    char ch1[5000];
    int i,n1,*mas1,k;
    cout<<"Vvedite chislo 1 = ";
    cin>>ch1;
    n1=strlen(ch1);
    mas1=new int[n1];
    for(i=0; i<n1; i++) 
        mas1[i]=ch1[i]-48;
    for (i=0; i<n1; i++)
        printf("%3d",mas1[i]);
    cout<<endl;
    char ch2[5000];
    int n2,*mas2,*mas3;
    cout<<"Vvedite chislo 2 = ";
    cin>>ch2;
    n2=strlen(ch2);
    mas2=new int[n2];
    for(i=0; i<n2; i++)
         mas2[i]=ch2[i]-48;
    for (i=0; i<n2; i++)
    printf("%3d",mas2[i]);
    cout<<endl;
    int n;
    n=0;
    if (n1==n2) k=n1-1;
 
    if (n2>n1) {n=n2-n1;
    for (i=0;i<=n1-1;i++)
         mas1[i+n]=mas1[i];
    for (i=0;i<n;i++)
         mas1[i]=0;
    for (i=0;i<=n2-1;i++)
         cout<<mas1[i];
    k=n2-1;} n=0;
    cout<<endl;
    if (n1>n2){
        n=n1-n2; 
        for (i=0;i<=n2-1;i++) 
            mas2[i+n]=mas2[i];
        for (i=0;i<n;i++) 
            mas2[i]=0;
        for (i=0;i<=n1-1;i++) 
            cout<<mas2[i];
        k=n1-1;
    }
    cout<<k;
    getch();
}
только переписал код. пока ничего не исправлял.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2009, 21:09
Привет! Вот еще темы с ответами:

Массивы структур и массивы строк - C++
Здравствуйте. Возникла проблема с одной работой: Постановка задачи: 1. Сформировать динамический массив из элементов структурного типа....

массивы указателей,указатели на массивы - C++
Понимаю что тема эта изжевана, но я ещё жую.Хочу, чтобы усвоилось. допустим есть QStringList a; a.append(&quot;мамa&quot;); ...

массивы указателей,указатели на массивы - C++
Понимаю что тема эта изжевана, но я ещё жую.Хочу, чтобы усвоилось. допустим есть QStringList a; a.append(&quot;мамa&quot;); ...

индексные массивы и адресные массивы - C++
погитите решить задачу c массивами двумя способами {индексные и адресные} { Вычислить суммы элементов каждой строки матрицы Х(20х20),...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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