Выпуск № 1348 от 02.07.2009, 17:35
Администратор рассылки: Dr_Andrew, Модератор
В рассылке: подписчиков - 630, экспертов - 148
В номере: вопросов - 4, ответов - 7
Нам очень важно Ваше мнение об этом выпуске рассылки. Вы можете оценить этот выпуск по пятибалльной шкале, пройдя по ссылке: оценить выпуск >>
Вопрос № 169913: Здраствуйте!!! Помогите написать карточную игру - "Покер"...
Вопрос № 169917: Здравтсвуйте! Помогите, пожалуйста, решить задачу. Даны массивы A[3][5], B[3][5]. Для каждого массива определить номер столбца с максимальным элементом. В столбце с максимальным элементом все отрицательные элементы заменить на ноль. В прог...
Вопрос № 169923: Дана целочисленная прямоугольная матрица. Определить максимальное из чисел,встречающихся в заданой матрице более одного раза (оформить ввиде процедуры )...
Вопрос № 169932: Здравствуйте эксперты, недавно увлекся С++, изучил вроде бы все основы(функции, классы, полиморфизм ,потоки, и т.д.) но писал в CodeBlocks, сейчас хочу перейти на написание Windows приложений в Borland C++ builder, подскажите какую-нить литературу чт...
Вопрос № 169913:
Здраствуйте!!! Помогите написать карточную игру - "Покер"
Отвечает Dr_Andrew, Модератор :
Здравствуйте, Руслан Радионович. Здесь Вы найдёте много материалов, посвящённых написанию компьютерной имитации карточной игры покер на C++. На этом же сайте здесь Вы найдёте библиотеку XPokerEval, которая поможет Вам в написании программы.
Казахстан, Алма-Ата Организация: Казахский научный центр карантинных и зоонозных инфекций Адрес сайта:Медицинские программы для Linux ICQ # 256452186
Ответ отправил: Dr_Andrew, Модератор
Ответ отправлен: 27.06.2009, 06:57
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251536
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169917:
Здравтсвуйте! Помогите, пожалуйста, решить задачу. Даны массивы A[3][5], B[3][5]. Для каждого массива определить номер столбца с максимальным элементом. В столбце с максимальным элементом все отрицательные элементы заменить на ноль. В программе предусмотреть ввод массивов и вывод исходных данных и результатов.
int main() { srand(static_cast<unsigned int>(time(0))); setlocale(LC_ALL,"russian_russia");
// Размерности матриц const size_t ROWS=3,COLS=5;
// Митрицы int A[ROWS][COLS],B[ROWS][COLS];
// Заполним
матрицу inputMatrix("Введите данные для матрицы A:",A); // Печатаем printMatrix("Матрица A:",A); // Заменяем согласно условию solveMatrix(A); // Печатаем printMatrix("Матрица после замены:",A);
// То же для матрицы B inputMatrix("Введите данные для матрицы B:",B); printMatrix("Матрица B:",B); solveMatrix(B); printMatrix("Матрица после замены:",B);
Ответ отправил: Micren, Практикант
Ответ отправлен: 26.06.2009, 22:58
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251527
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169923:
Дана целочисленная прямоугольная матрица. Определить максимальное из чисел,встречающихся в заданой матрице более одного раза (оформить ввиде процедуры )
Ответ отправил: _Ayl_, 8-й класс
Ответ отправлен: 27.06.2009, 14:48
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251554
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает Micren, Практикант :
Здравствуйте, Redsox. Программа. C++. Программа заполняет матрицу случайными числами. Производит поиск числа в матрице согласно условию. И выводит результат с подсветкой красным цветом найденных значений.
Написал программу просто потому, что было интересно, чтоб программа осуществляла поиск за время пропорциональное O(N), в отличие от предыдущих ответов(где время поиска O(N2).
// Собственно решение // Возвращает true, если требуемый по условию элемент найден // result - найденный элемент template<class _T,size_t _rows,size_t _cols> bool solve(_T (&matrix)[_rows][_cols],_T& result) { // Множество элементов со значением не менее чем будет в result typedef set<_T> _set; _set maxItems;
//
Флаг если найден bool find=false;
// Начальное значение result=numeric_limits<_T>::min();
if(_rows*_cols>1) { _T* current=reinterpret_cast<_T*>(matrix); _T* end=current+_rows*_cols; // Проходим по матрице while(current!=end) { // Количество элементов со значением *current в множестве _set::size_type count; // Если элемент не меньше чем result и его еще не встречалось if(*c
urrent>=result && !(count=maxItems.count(*current))) { // Добавим его maxItems.insert(*current); } else { // Если элемент ранее встречался и он больше ранее найденного или же первый удовлетворяющий условию if((*current>result || !find) && count) { // Флаг - нашли find=true; // Сохраним элемент result=*current; // Удалим из множества элементы менее result maxItems.erase(maxItems.begin(),maxItems.lower_bound(result)); } } //
На следующий элемент ++current; } } return find; }
int main() { srand(static_cast<unsigned int>(time(0))); setlocale(LC_ALL,"russian_russia"); // Размерности матрицы const size_t ROWS=4,COLS=5; int matrix[ROWS][COLS];
// Заполним матрицу случайными числами fillMatrix(matrix); int item; if(solve(matrix,item)) { printMatrix("Мат
рица:",matrix,item); cout<<"Такой элемент "<<item<<endl; } else { cout<<"
;Таких элементов нет"<<endl; } system("PAUSE"); return 0; }
Ответ отправил: Micren, Практикант
Ответ отправлен: 27.06.2009, 18:39
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251561
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает leonid59, 4-й класс :
Здравствуйте, Redsox. 1. Создаем мастрицу a (память выделяем динамически) 2. Создаем вектор b для хранения копии значений элементов матрицы a (память выделяем динамически) 3. Сортируем вектор b пузырьком 4. Идя сверху вниз, ищем первый неединственный элемент. 5. Печатаем значение. 6. Освобождаем память
Приложение:
Ответ отправил: leonid59, 4-й класс
Ответ отправлен: 28.06.2009, 12:09
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251578
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169932:
Здравствуйте эксперты, недавно увлекся С++, изучил вроде бы все основы(функции, классы, полиморфизм ,потоки, и т.д.) но писал в CodeBlocks, сейчас хочу перейти на написание Windows приложений в Borland C++ builder, подскажите какую-нить литературу чтобы адаптироваться, так же раньше до этого много писать в Borland Delphi, они на вид очень похожи.
Отвечает Dr_Andrew, Модератор :
Здравствуйте, Tribak. Для начала обратитесь к книге Культин Н.Б. Основы программирования в Turbo C++. - СПб: БХВ-Петербург, 2007. -464 с. К книге прилагается диск с дистрибутивом Turbo C++ Explorer (это официально бесплатная, хотя и требующая регистрации версия Borland C++ Builder). Также можете обратиться к книгам А.Я. Архангельского и Н.З. Елмановой, любым, какие в магазине увидите. Кстати, справка Builder'а - сама по себе неплохое пособие, содержащее довольно много интересных примеров. Казахстан, Алма-Ата Организация: Казахский научный центр карантинных и зоонозных инфекций Адрес сайта:Медицинские программы для Linux ICQ # 256452186
Ответ отправил: Dr_Andrew, Модератор
Ответ отправлен: 27.06.2009, 13:20
Оценка ответа: 5
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251548
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает leonid59, 4-й класс :
Здравствуйте, Tribak! Шамис В.А. Borland C++ Builder 6 для профессионалов. - СПб, Питер, 2005 - 798с, ил
Ответ отправил: leonid59, 4-й класс
Ответ отправлен: 27.06.2009, 18:12
Оценка ответа: 5
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251560
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Нам очень важно Ваше мнение об этом выпуске рассылки. Вы можете оценить этот выпуск по пятибалльной шкале, пройдя по ссылке: оценить выпуск >>
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.