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

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

Войти
Регистрация
Восстановить пароль
 
shukaka
4 / 4 / 2
Регистрация: 09.03.2014
Сообщений: 185
#1

Массивы и циклы: РЛ числа - C++

29.03.2014, 20:03. Просмотров 315. Ответов 3
Метки нет (Все метки)

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>;
 
#include<locale>
using namespace std;
int rl3[255],k;
int main() {
    setlocale(LC_ALL,"Rus");
    cout<<"первое рл число"<<endl;
    int a;
    cin>>a;
    int *rl1=new int [a];         //первое рл число
    for(int i=0;i<a;i++)
            cin>> rl1[i];
    cout<<endl;
    cout<<"второе рл число"<<endl;
    int b;
    cin>>b;
    int *rl2=new int [b];                 //второе рл число
    for(int j=0;j<b;j++)
            cin>> rl2[j];
 
    for(int i=0;i<a;i++)
        cout<<rl1[i]<<".";
    cout<<endl;
    for(int j=0;j<b;j++)
        cout<<rl2[j]<<".";
    cout<<endl;
    
    for(int i=0;i<100;i++){
            if (rl1[i]<rl2[i])
                {for(int j=0;j!=b;j++)
                    cout<<rl2[j]<<".";         //сравнение двух рл чисел
                                  break;}
 
            else if(rl1[i]>rl2[i])
            {for(int i=0;i!=a;i++)
                   cout<<rl1[i]<<".";
                   break;}
            
    }
    cout<<endl;
    for(int i=0;i<a;i++)
        for(int j=0;j<b;j++) {   
     if (rl1[i]==rl2[j]) {
                
                      rl1[i]=-100; 
                       rl2[j]=-100;
     }
        }                                      //отнимание(если елементы рл чисел равны то они сокращаются(в данном случае меняются на ноль))
     for(int j=0;j<b;j++)
         if(rl2[j]!=-100)
                    cout<<rl2[j]<<".";
     cout<<endl;
     for(int i=0;i<a;i++)
         if(rl1[i]!=-100)
                   cout<<rl1[i]<<".";
     cout<<endl;
    int p=1;
    for(int i=0;i<a;i++)
         {   
     if (rl1[i]>rl2[i])
 
        { do {
            
            rl3[k]=rl1[i]-p;
            k++;
                p++;
     
     }
            while(rl3[k]<=rl2[i]);
             }
        }
        for(k=0;k<a*b;k++)
            cout<<rl3[k];
    system ("pause");
    return 0;
}
в чем ошибка....я ввожу 4 5 2 1 0 потом ввожу 4 3 2 1 0 В ответе должен получить 4 3 3 а получаю чет не то совсем
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2014, 20:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массивы и циклы: РЛ числа (C++):

массивы, циклы и т.д - C++
очень нужна помощь помогите студенту программа borland c++ 3.1 1. Дано двузначное число. Напишите программу определения,...

Массивы и циклы - C++
Суть задачи: Двумерный массив, содержащий равное число строк и столбцов, называется магическим квадратом, если суммы чисел, записанных в...

массивы и Вложенные циклы - C++
Дано натуральное число n. Получить все простые делители этого числа.пацаны помогите решить

Циклы и двумерные массивы - C++
Решенная задача: Вы продаете книгу &quot;Язык С++ для чайников&quot;. Напишите программу, которая позволит ввести помесячные объемы продаж в...

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

Массивы структур, циклы - C++
Пишу программку из книги. Задание звучит так: Коrда вы вступите в Блаrотворительный Орден Проrраммистов (БОП), к вам могyт обращаться...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Pikemaster
296 / 296 / 118
Регистрация: 24.09.2013
Сообщений: 760
Завершенные тесты: 4
29.03.2014, 21:11 #2
Было бы неплохо, если бы вы сказали, что должна делать программа, а не что она выводит.
0
shukaka
4 / 4 / 2
Регистрация: 09.03.2014
Сообщений: 185
29.03.2014, 21:23  [ТС] #3
1)вводится два массива
2)эти два массива сравниваются (не играет роли)
3)если есть одинаковые элементы в массивах они удаляются
4)Те элементы что остались в массивах тоже сравниваются и большие расскладываются до значение меньшего елемента
0
kiborgdelto
71 / 73 / 27
Регистрация: 23.03.2011
Сообщений: 141
29.03.2014, 21:40 #4
C++
1
2
3
4
5
6
7
8
 do {
            
            rl3[k]=rl1[i]-p;
            k++;
                p++;
     
     }
            while(rl3[k]<=rl2[i]);
тут точно ошибка, выход из цикла должен быть таким
C++
1
 while(rl3[k-1]<=rl2[i])
при том условии выхода которое есть цикл прекращается когда мы выходим за границы массива и получаем огромное отрицательное число (у меня вышло на 306 итерации)

плюс ошибка при выводе, ты выводишь неправильное число элементов
C++
1
2
 for(k=0;k<a*b;k++)
            cout<<rl3[k];
должно быть
C++
1
2
 for(int j=0;j<k;j++)
            cout<<rl3[j];
да и 4 3 3 ты тут никак не получишь при таком коде и начальных данных, получается 3 5 4
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2014, 21:40
Привет! Вот еще темы с ответами:

Массивы,указатели,циклы. - C++
Доброго времени суток:) Задача такая:&quot;Напишите программу,которая находит и отображает значения дубликаты(одинаковые) в 5-элементном...

Циклы и двумерные массивы - C++
1. Цикл For... Среди всех n-значных чисел (n = 1,2,3,4) указать те, сумма цифр которых равна данному числу k. 2. двумерные массивы ...

Циклы, массивы, простейшие программы - C++
Доброго времени суток. В программировании не силен. Решил обратиться к людям понимающим в этом вопросе больше. Если кто может помочь буду ...

Массивы,циклы,указатели ( пожалуйста) - C++
Друзья, очень прошу!! помогите пожалуйста, кто какое сможет!! Задача 1 Написать программу, которая определит, если среди цифр...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.03.2014, 21:40
Ответ Создать тему
Опции темы

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