+ Ответить в теме
Показано с 1 по 4 из 4

Тема: C++, массивы

  1. #1
    coder lnter is on a distinguished road
    Регистрация
    20.10.2008
    Сообщений
    12
    Вес репутации
    10

    По умолчанию C++, массивы

    Уважаемые программисты, пожалуйста, помогите решить такую вот задачку!
    Задача:
    Даны два массива натуральных чисел A(m) и B(n). Найти наибольший элемент в массиве A, которого нету в массиве B.
    Заранее, большое спасибо!

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    markofka is on a distinguished road
    Регистрация
    20.10.2008
    Возраст
    33
    Сообщений
    6
    Вес репутации
    0

    Lightbulb Re: C++, массивы

    PHP код:
    #include <iostream>
    using namespace std;
    void main()
    {
    const 
    int len_a=5,len_b=5;    //размерность массивов
    int mas_a [len_a]={1,2,5,4,6};
    int mas_b [len_b]={5,6,3,7,2};

    int i,k;
    for(
    i=0,k=0;i<len_a-1;i++)    //сортировка массива А по убыванию
    {
        
    k=i;
        for(
    int j=i+1;j<len_a;j++)
            if(
    mas_a[j]>mas_a[k])k=j;
        
        
    int temp=mas_a[k];
        
    mas_a[k]=mas_a[i];
        
    mas_a[i]=temp;
    }

    bool fl;    //флаг указывает было совпадение элементов 
    for(i=0;i<len_a;i++)    //берем первый элемент массива А (т.к. он самый большой потому чтомассив отсортирован)
    {                        //сравниваем его поочередно с элементами массива Б
        
    fl=0;
        for(
    int j=0;j<len_b;j++) //перебор элементов массива Б
        
    {
            if(
    mas_a[i]==mas_b[j]) // сравниваем элементы
            
    {
                
    fl=1;    //указываем что рассматриваемые эл-ты совпали
                
    break;    //выходим из цикла выборки эл-тов массива Б 
            
    }

        }
        if (
    fl==0) break;    //если мы перебрали все эл-ты массива Б и не совпадений 
                            //не обнаруженно то мы нашли наше число и выходим из 
                            //цикла выборки эл-тов массива А 
    }
    if(
    fl)cout<<"not find"<<endl;    //если флаг==1 значит все элементы массива А присутствовали в массиве Б
    else cout<<"find "<<mas_a[i]<<endl;    // если флаг==0 значит элемент по индексу и есть искомое

    cin.get();    //нажми ENTER

    помню сам начинал с таких же примеров
    эх! молодость!

  4. #3
    senior developer Albor is on a distinguished road
    Регистрация
    06.09.2004
    Адрес
    Днепропетровск
    Сообщений
    482
    Вес репутации
    14

    По умолчанию Re: C++, массивы

    А если использовать STL, то будет понятнее и проще
    Код :
    1. #include"iostream"
    2. #include "algorithm"
    3. using namespace std;
    4. void main()
    5. {
    6. const int len_a=5,len_b=7; //размерность массивов
    7. int mas_a [len_a]={1,2,5,4,6};
    8. int mas_b [len_b]={5,6,3,7,2,10,12};
    9. //для работы алгоритма set_difference, массивы должны быть отсортированы
    10. sort(mas_a,mas_a+len_a);
    11. sort(mas_b,mas_b+len_b);
    12. int mas_result[len_a];//результирующий массив,
    13. // set_difference поместит в результирующий массив mas_result все элементы mas_a, не встречающиеся в mas_b
    14. // и вернёт указатель на ячейку за последним значением в результирующем массиве.
    15. // поскольку mas_result будет отсортирован, то нужное нам значение будет в предыдущей ячейке
    16. cout<<"Result: "<<*(set_difference(mas_a, mas_a+len_a,mas_b,mas_b+len_b,mas_result)-1)<<endl;
    17. }

  5. #4
    Sager is on a distinguished road
    Регистрация
    25.05.2010
    Сообщений
    1
    Вес репутации
    0

    По умолчанию Re: C++, массивы

    Не хочу создавать новую тему и поэтому спрошу в этой. Помогите написать программу в С++ (желательно с комментариями что делает каждая строка если не затруднит) пропустил по болезни почти всё начало изучение С++ а с преподом не оч хорошие отношения пытался разобраться сам вроде все команды по отдельности понятны, а собрать в общую кучу не могу=(
    собственно сама программа
    Дан массив А(5 х 5). Определить сколько нулевых элементов находится в столбце с заданным номером.
    Заранее спасибо.

+ Ответить в теме

Похожие темы

  1. С++ массивы
    нужна помощь сделать программу которая создаёт массив типа int, заполняет его случайными числами и переворачивает его. все вроде понято, но как...
    от Lokki в разделе задачи на C и C++
  2. TP-массивы
    Парни помогите написать программы: 1)Дан двумерный массив размерностью 4х6, заполненный целыми числами с клавиатуры. Сформулировать одномерный...
    от XoMo4KuH в разделе Решите мне задачку
  3. Массивы, но массивы не использовать.
    Отредактируйте, пожалуйста мой код!! Задание: Даны положительные числа N,a1,...,aN. Используя только элементарные матем. операции(+,-,*,/),...
    от Бабочка в разделе C и C++
  4. Массивы В С++
    Помогите пажлуста решить задачу Текст задачи таков Дана целочисленная прямоугольная матрица надо опредилить № строки в которой находится самая...
    от Razum в разделе Решите мне задачку
  5. Массивы
    1.Дана матрица А(n,m)переставляя её строки и столбцы добейтесь того, что бы найбольший элемент оказался в левом верхнем углу. 2. В заданном массиве...
    от -000- в разделе Решите мне задачку

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения