Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2012, 20:01   #11
Петррр
Форумчанин
 
Аватар для Петррр
 
Регистрация: 02.09.2011
Сообщений: 336
По умолчанию

5
Код:
#include <iostream>
#include <array>
#include <vector>
#include <algorithm>
#include <iterator>
#include <ctime>

int main()
{
	const int n = 7;
	const int m = 8;
	std::array<int, m> k;
	std::array<int, n> l;
	srand(time(NULL));
	std::generate(k.begin(), k.end(), []() {
		return rand() % 20;
	});
	std::generate(l.begin(), l.end(), []() {
		return rand() % 20;
	});
	std::copy(k.begin(), k.end(), std::ostream_iterator<int>(std::cout, " "));
	std::cout << std::endl;
	std::copy(l.begin(), l.end(), std::ostream_iterator<int>(std::cout, " "));
	std::vector<int> lst;
	std::sort(k.begin(), k.end());
	std::sort(l.begin(), l.end());
	std::set_difference(k.begin(), k.end(),
		l.begin(), l.end(),
		std::back_inserter(lst));
	std::cout << std::endl;
	std::cout << "Max: " << *std::max_element(lst.begin(), lst.end())
		<< std::endl;
	system("pause");
	return 0;
}
Если ты не можешь найти то, ради чего стоит жить, лучше найти то, за что стоит умереть
Петррр вне форума Ответить с цитированием
Старый 13.05.2012, 20:21   #12
Петррр
Форумчанин
 
Аватар для Петррр
 
Регистрация: 02.09.2011
Сообщений: 336
По умолчанию

6
Код:
#include <iostream>
#include <array>
#include <algorithm>
#include <iterator>
#include <ctime>

int main()
{
	const int size = 10;
	std::array<int, size> arr;
	srand(time(NULL));
	std::generate(arr.begin(), arr.end(), []() {
		return rand() % 20;
	});
	std::array<int, size>::iterator begin = arr.begin(), 
		end = arr.end();
	std::copy(arr.begin(), arr.end(), std::ostream_iterator<int>(std::cout, " "));
	bool isFirst = true;
	while (begin < end)
	{
		std::array<int, size>::iterator min = std::min_element(begin, end);
		if (isFirst)
		{
			std::swap(*begin, *min);
			begin++;
			isFirst = !isFirst;
		}
		else
		{
			end--;
			std::swap(*end, *min);
			isFirst = !isFirst;
		}
	}
	std::cout << std::endl;
	std::copy(arr.begin(), arr.end(), std::ostream_iterator<int>(std::cout, " "));
	std::cout << std::endl;
	system("pause");
	return 0;
}
Если ты не можешь найти то, ради чего стоит жить, лучше найти то, за что стоит умереть
Петррр вне форума Ответить с цитированием
Старый 14.05.2012, 11:20   #13
БалаШагаЛ
Форумчанин
 
Регистрация: 11.02.2011
Сообщений: 131
По умолчанию

4
Не знаю, зачем проверять признак делимости...
Код:
#include <iostream>

int main()
{
    int k,m;
    int i,num=0;
    std::cin >> k >> m;
    for (i=k;i>0;i--)
    {
        if (i%9==0)
        {
            std::cout << i << "\n";
            num++;
            if (num==m)
            {
                break;
            }
        }
    }
}
БалаШагаЛ вне форума Ответить с цитированием
Старый 14.05.2012, 11:30   #14
БалаШагаЛ
Форумчанин
 
Регистрация: 11.02.2011
Сообщений: 131
По умолчанию

6
Код:
#include <iostream>

int main()
{
    int N;
    int i,j,temp;
    std::cin >> N;
    int A[N];
    int PosInSort=0;
    int min;
    for (i=0;i<N;i++)
    {
        std::cout << "A[" << i << "]=";
        std::cin >> A[i];
    }
    for (i=0;i<N;i++)
    {
        min=(i%2==1)?(i/2+1):(i/2);
        for (j=((i%2==1)?(i/2+1):(i/2))+1;j<N-i/2;j++)
        {
            if (A[j]<A[min])
              min=j;
        }
        if (i%2==1)
        {
            temp=A[N-1-i/2];
            A[N-1-i/2]=A[min];
            A[min]=temp;
        }
        else
        {
            temp=A[i/2];
            A[i/2]=A[min];
            A[min]=temp;
        }
    }
    std::cout << "\n";
    for (i=0;i<N;i++)
    {
        std::cout << "A[" << i << "]=" << A[i] << "\n";
    }
}
БалаШагаЛ вне форума Ответить с цитированием
Старый 14.05.2012, 11:48   #15
БалаШагаЛ
Форумчанин
 
Регистрация: 11.02.2011
Сообщений: 131
По умолчанию

7
Код:
#include <iostream>

int min(int a,int b) {return (a<b)?a:b;}

int max(int a,int b) {return (a>b)?a:b;}

int main()
{
    int i,j,q;
    int k,l;
    std::cin >> k >> l;
    int M[k][l];
    for (i=0;i<k;i++)
      for (j=0;j<l;j++)
        M[i][j]=0;
    for (i=0;i<k;i++)
    {
        for (j=0;j<l;j++)
        {
            for (q=4;q>=1;q++)
            {
                if (j>0)
                  if (M[i][j-1]==q)
                    continue;
                if (j<l-1)
                  if (M[i][j+1]==q)
                    continue;
                if (i>0)
                  if (M[i-1][j]==q)
                    continue;
                if (i<k-1)
                  if (M[i+1][j]==q)
                    continue;
                /*if (i==j)
                {
                    if (i>0)
                      if (M[i-1][j-1]==q)
                        continue;
                    if (i<min(k,l)-1)
                      if (M[i+1][j+1]==q)
                        continue;
                }
                if (l-1-j==i)
                {
                    if (i>0)
                      if (M[i-1][j+1]==q)
                        continue;
                    if (j>max(0,l-k)==q)
                      if (M[i+1][j-1]==q)
                        continue;
                }*/
                if ((i>0)&&(j>0))
                  if (M[i-1][j-1]==q)
                    continue;
                if ((i<k-1)&&(j<l-1))
                  if (M[i+1][j+1]==q)
                    continue;
                if ((i<k-1)&&(j>0))
                  if (M[i+1][j-1]==q)
                    continue;
                if ((i>0)&&(j<l-1))
                  if (M[i-1][j+1]==q)
                    continue;
                M[i][j]=q;
            }
        }
    }
    for (i=0;i<k;i++)
    {
        for (j=0;j<l;j++)
        {
            std::cout << M[i][j] << " ";
        }
        std::cout << "\n";
    }
}
БалаШагаЛ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
у меня завтра экзамен мне надо решить три задачи,но я не могу написать программу,я на вас надеюсь desu_desu Помощь студентам 2 20.12.2011 21:53
Задачи. Не могу решить :( Rikle Помощь студентам 1 21.11.2011 14:49
Не могу решить задачи на С# в форме Александр10 C# (си шарп) 0 13.11.2011 07:15
Не могу понять как решить задачи. Нужна помощь Студент заочник Помощь студентам 9 30.12.2008 23:49
Никак не могу решить две математические задачи на Паскале skl1f Помощь студентам 4 30.11.2008 22:23