Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 716
от 20.04.2007, 20:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 470, Экспертов: 84
В номере:Вопросов: 6, Ответов: 11


Вопрос № 82585: Как и какой функцией возможно удаление и сохранение выделенной строки?...
Вопрос № 82620: Здравствуйте все! Вопрос: какой функцией можно получить случайное число кроме rand? кода использую srand(time(0))? то если генерировать давольно таки часто то числа не сильно различаются, может есть др функция? Спасибо ...
Вопрос № 82651: Незнаю в этом ли разделе правильно задать вопрос но вот проблема. При запуске любого браузера , обращение к сети некоторых программ. Выдаётся ошибка : << Microsoft Visual C++ Runtime Library error... >> браузеры вылетают. что делать.....
Вопрос № 82663: Как и какой функцией возможно удаление и сохранение выделенной строки при работе с БД?...
Вопрос № 82688: Доброго Вам времени суток! У меня такая вот проблемка возникает.. Как мне отображать PNG в C++ Builder и есть ли какой класс, который позволяет это делать? Желательно под C++ Builder 2006 ну или под 6 просто.. Заранее спасибо!...
Вопрос № 82696: Здравствуйте, товарищи эксперты! Подскажите пожалуйста, как на С++ можно организовать алгоритм вычисления обратной матрицы? Я использую Borland C++ 6... для ввода матрицы используется элемент StringGrid1... потом забивается массив matrix...

Вопрос № 82.585
Как и какой функцией возможно удаление и сохранение выделенной строки?
Отправлен: 14.04.2007, 21:18
Вопрос задал: Avoti (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Gremlin
Здравствуйте, Avoti!
Если я правильно понял, необходимо извлечь текстовую информацию из компонента типа EDIT или RichEdit.

Для RichEdit существуют два сообщения EM_GETSELTEXT и EM_GETTEXTEX, они вполне понятны и хорошо описаны в MSDN'е.
Для EDIT такого механизма нет, поэтому приходится извлекать весь текст компонента(с помощью функций GetWindowTextLength и GetWindowText) и затем извлекать начальный и конечный индекс выделенного текста(с помощью сообщения EM_GETSEL). Ну, остальное - дело индивидуальное, вырезать кусок из одного текста в другой, проблем составить не должно...
Ответ отправил: Gremlin (статус: 2-ой класс)
Ответ отправлен: 15.04.2007, 01:31


Вопрос № 82.620
Здравствуйте все!
Вопрос: какой функцией можно получить случайное число кроме rand? кода использую srand(time(0))? то если генерировать давольно таки часто то числа не сильно различаются, может есть др функция?
Спасибо
Отправлен: 15.04.2007, 08:43
Вопрос задал: Tatarin (статус: 2-ой класс)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: kool
Здравствуйте, Tatarin!
srand нужен только для инициализации
первого значения для rand, чтобы
оно тоже было случайно. Дальше нужно
использовать только rand. Именно она
дает псевдослучайную последовательность.
Тогда и числа будут "разными".
Удачи!

---------
I am.
Ответ отправил: kool (статус: Студент)
Ответ отправлен: 15.04.2007, 09:29
Оценка за ответ: 4
Комментарий оценки:
Угу, спасибо!

Отвечает: estiGi
Здравствуйте, Tatarin!
К ответу kool добавлю, что srand(time(0)) нужно обязательно использовать только один раз в программе, например, в контрукторе базового класса. И числа у вас повторяются и/или близки именно потому, что вы вызываете srand постоянно.
А к комментарию в форуме добавлю, что, если вы сможете легко так себе, с полпинка, написать полноценный генератор случайных чисел, то смело можете рулить в Майкрософт устраиваться на работу :-))
Ответ отправил: estiGi (статус: Студент)
Ответ отправлен: 15.04.2007, 15:18
Оценка за ответ: 5
Комментарий оценки:
ок спсибо разобрался

Отвечает: Терсков Сергей
Здравствуйте, Tatarin!
Подобная тема здесь уже обсуждалась, так что если вам нужный хороший ГСЧ, то загляните сюда

http://rusfaq.ru/info/question/80168
Ответ отправил: Терсков Сергей (статус: 7-ой класс)
Ответ отправлен: 16.04.2007, 02:49
Оценка за ответ: 5
Комментарий оценки:
Угу, иду туда, спасибо.

Отвечает: V1s0r
Здравствуйте, Tatarin!

Не знаю, какое распределение у rand.
В приложении кусок кода из одной программы моего однокурсника. Там можешь найти нормальное и экспоненциальное. Думаю, вскоре сам сможешь написать то, чего лучше подойдёт к твоей задаче.

П.С. Лишние include убери сам :)

Приложение:

Ответ отправил: V1s0r (статус: 3-ий класс)
Ответ отправлен: 16.04.2007, 08:55
Оценка за ответ: 5
Комментарий оценки:
Спасибо за код, возможно поможет.

Отвечает: Ilkras
Здравствуйте, Tatarin!
функция rand генерирует последовательно псевдослучайные числа. Поэтому вы увидели закономерность. Для того, чтоб получить последовательность случайных чисел вам нужен соответствующий генератор. Сделать его самому может оказаться нетривиальной задачей.
Советую вам почитать о генераторах: http://en.wikipedia.org/wiki/Random_number_generator
http://en.wikipedia.org/wiki/List_of_random_number_generators
можно воспользоваться готовым (вместе с исходниками)
http://www.gnu.org/software/gsl/manual/html_node/Random-Number-Generation.html

Удачи
Ответ отправил: Ilkras (статус: 7-ой класс)
Ответ отправлен: 16.04.2007, 23:37
Оценка за ответ: 5
Комментарий оценки:
Спасибо, оч помогло.


Вопрос № 82.651
Незнаю в этом ли разделе правильно задать вопрос но вот проблема.
При запуске любого браузера , обращение к сети некоторых программ. Выдаётся ошибка : << Microsoft Visual C++ Runtime Library error... >> браузеры вылетают. что делать... ))
ОС : WinXP SP 2 ...
Отправлен: 15.04.2007, 14:52
Вопрос задал: Dark Darkness (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: kool
Здравствуйте, Dark Darkness!
Не хватает библиотеки.
Если есть возможность поставь VC
Удачи!

---------
I am.
Ответ отправил: kool (статус: Студент)
Ответ отправлен: 15.04.2007, 17:51

Отвечает: V1s0r
Здравствуйте, Dark Darkness!

Удалить ОС WinXP SP 2 (для надёжности можно и винт отформатировать и переразметить). После чего поставить ОС Linux.
Ответ отправил: V1s0r (статус: 3-ий класс)
Ответ отправлен: 16.04.2007, 08:54


Вопрос № 82.663
Как и какой функцией возможно удаление и сохранение выделенной строки при работе с БД?
Отправлен: 15.04.2007, 16:20
Вопрос задал: Avoti (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: kool
Здравствуйте, Avoti!
Смотря какая срела разработки.
В общем случае одной фукцией здесь не обойтись.
Нужно обрабатывать параметры выделенной строки,
делать соответствующий SQL-запрос к базе и затем
выводить результат.
Удачи!

---------
I am.
Ответ отправил: kool (статус: Студент)
Ответ отправлен: 15.04.2007, 17:51


Вопрос № 82.688
Доброго Вам времени суток!
У меня такая вот проблемка возникает..
Как мне отображать PNG в C++ Builder и есть ли какой класс, который позволяет это делать?
Желательно под C++ Builder 2006 ну или под 6 просто..
Заранее спасибо!
Отправлен: 15.04.2007, 19:12
Вопрос задал: MYPABEU (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Olegzp
Здравствуйте, MYPABEU!
Единственное что есть у меня :
книга "Форматы и алгоритмы сжатия изображений в действии"
глава 13 "PNG"
http://wmate.ru/ebooks/book194.html
на Delphi встречал компонент для png ("TPNGImage") возможно имеется и для CBuilder6
Ответ отправил: Olegzp (статус: 2-ой класс)
Ответ отправлен: 15.04.2007, 21:07


Вопрос № 82.696
Здравствуйте, товарищи эксперты!

Подскажите пожалуйста, как на С++ можно организовать алгоритм вычисления обратной матрицы?
Я использую Borland C++ 6... для ввода матрицы используется элемент StringGrid1... потом забивается массив matrix[i][j] введенными значениями...
Как можно найти алгебраическое дополнение каждого элемента?
Мне нужно именно с использованием алгебраических дополнений...

Заранее благодарю!
Отправлен: 15.04.2007, 20:32
Вопрос задал: Keeper_USSR (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Ross
Здравствуйте, Keeper_USSR!

Для того, чтобы найти обратную матрицу, нужно сначала найти матрицу из алгебраических дополнений - миноров исходной матрицы, умноженных на -1 в степени i+j. Затем все элементы полученной союзной матрицы делятся на детерминант исходной матрицы.
Чтобы найти алг. дополение (i,j) нужно:
1.Вычеркнуть из исх. матрицы i - ю строку j - й столбец
2.Найти определитель полученной матрицы(минор) и умножить его на -1^(i+j)

Итак, в приложении:
1.код нахождения детерминанта разложением по первой строке
2.нахождение обр. матрицы

К сожалению нету возможности сейчас протестировать пример, поэтому могут быть ошибки

Приложение:

Ответ отправил: Ross (статус: 7-ой класс)
Ответ отправлен: 17.04.2007, 18:45
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.50 (beta) от 15.04.2007
Яндекс Rambler's Top100

В избранное