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

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

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

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

20.10.2009, 21:02. Просмотров 376. Ответов 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++ С++ массивы
C++ Массивы
C++ массивы
массивы C++
C++ массивы
массивы C++
Массивы! C++
Массивы C++
C++ Массивы с++
C++ Массивы
Массивы C++
массивы с++ C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
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();
}
только переписал код. пока ничего не исправлял.
Yandex
Объявления
20.10.2009, 21:09     Массивы.
Ответ Создать тему
Опции темы

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