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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.06.2012, 10:57   #1
miftayka
Пользователь
 
Регистрация: 09.05.2010
Сообщений: 17
По умолчанию Контейнер set

Два множества, элементами которого являются строчные буквы латинского алфавита, представлены с помощью стандартного типа SET. В программе выводится на экран их декартово произведение.
Задаю два итератора, первый работает нормально, а второй - нет. Как их правильно задавать, чтобы они не конфликтовали?
Код:
#include <cstdlib>
#include <iostream>
#include <set>
using namespace std;

const int size=26;

void main()
{
	setlocale(LC_ALL,"Russian");

	char *s1=new char[size+1];
	char *s2=new char[size+1];

	//ввод данных

	set <char> set1;
	set <char> set2;

	cout<<"Введите первый вектор (без пробелов)\n";
	cin>>s1;
	s1=strlwr(s1);
	for (int i=0;i<strlen(s1);i++)
		set1.insert(s1[i]);

	cout<<"Введите второй вектор (без пробелов):\n";
	cin>>s2;
	s2=strlwr(s2);
	for (int i=0;i<strlen(s2);i++)
		set2.insert(s2[i]);

	//вычисление декартового произведения
	set<char>::iterator i;	//итераторы для прохода по множествам
	set<char>::iterator j;
	for (i=set1.begin();i!=set1.end();i++)
		for (j=set2.begin();j!=set2.end();j++)
			cout<<"("<<*i<<","<<*j<<")\n";

	system("pause");
}

Последний раз редактировалось miftayka; 21.06.2012 в 11:11.
miftayka вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
контейнер deque Альбинаа Помощь студентам 0 14.12.2010 14:01
Контейнер ! curtcobain Общие вопросы Delphi 3 04.02.2009 20:27
ассоциативный контейнер SERGOO Общие вопросы C/C++ 4 17.06.2007 11:05