информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
[C++] На твоем бы месте я бы поучился у + 11.10.01 07:34  Число просмотров: 963
Автор: 191_84 Статус: Незарегистрированный пользователь
<"чистая" ссылка>
А представь, если прога будет большая, и в каждом таком участке он понаделает по несколько статических переменных... Вроде тут вопрос по С++ был. В нем оператор вывода cout << , printf, по-моему, в С.
<programming>
[C++] rand() 09.10.01 20:37  
Автор: Лamo Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Чо то я совсем запутался с сабжем,
оно мне всё время выдаёт одни и теже числа,
Как сделать например мне нужно в диапазоне от 0 до 9,
или от 999 до 9999
Хелпми!!!
[C++] rand() 09.10.01 21:18  
Автор: + <Mikhail> Статус: Elderman
Отредактировано 10.10.01 02:55  Количество правок: 1
<"чистая" ссылка>
> Чо то я совсем запутался с сабжем,
> оно мне всё время выдаёт одни и теже числа,
> Как сделать например мне нужно в диапазоне от 0 до 9,
> или от 999 до 9999
> Хелпми!!!
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
main()
{
	srand( (unsigned)time( NULL ) );
	int x, iDelta;
	int iMyMin = 0;// = 999;
	int iMyMax = 9;// = 9999;
	iDelta = iMyMax - iMyMin;
	for(int count = 0; count < 40; ++count)
	{
		x = rand() * iDelta / RAND_MAX + iMyMin;
		printf("random = %ld\n", x);
	}


---
[C++] rand() 10.10.01 07:13  
Автор: 191_84 Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Зачем ты столько переменных насоздавал? Ресерсы ведь они пожирают... Вот будут программы большие и тогда он будет думать, почему все так тормознуто...
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
main()
{
srand( (unsigned)time( NULL ) );
int x;
for(int counter = 0; counter <= 10; counter++) {
x = rand() % 9; // x = rand() % (9999-999) + 999;
cout << x; }
return 0; }
[C++] На твоем бы месте я бы поучился у + 10.10.01 11:46  
Автор: Cyril <sc> Статус: Member
<"чистая" ссылка>
> Зачем ты столько переменных насоздавал? Ресерсы ведь они
> пожирают... Вот будут программы большие и тогда он будет
> думать, почему все так тормознуто...

В отличие от твоего текста, текст (+) нормально читается
что более важно чем количество ресурсов пожираемое несколькими переменными, кстати ты использовал в своей программе потоки
(cout << x --- все для экономии ресурсов конечно !!!) .

> #include <stdio.h>
> #include <stdlib.h>
> #include <time.h>
> main()
> {
> srand( (unsigned)time( NULL ) );
> int x;
> for(int counter = 0; counter <= 10; counter++)
> {
> x = rand() % 9; // x = rand() %
> (9999-999) + 999;

> cout << x; }
> return 0; }
[C++] На твоем бы месте я бы поучился у + 11.10.01 07:34  
Автор: 191_84 Статус: Незарегистрированный пользователь
<"чистая" ссылка>
А представь, если прога будет большая, и в каждом таком участке он понаделает по несколько статических переменных... Вроде тут вопрос по С++ был. В нем оператор вывода cout << , printf, по-моему, в С.
[C++] Не убедил :-( 11.10.01 12:28  
Автор: Cyril <sc> Статус: Member
<"чистая" ссылка>
> А представь, если прога будет большая, и в каждом таком
> участке он понаделает по несколько статических
> переменных...

Если программа будет большая и предположим тебе захочется что-то исправить:

1) код (+) - я просто изменю значения переменных
2) твой код - я полезу в программу что-то править рискуя нарушить логику ее работы, ну и нафига мне это надо.

// кстати ggg предложил вариант который должен тебя устроить
сonst int iMyMin = 0;// = 999;
const int iMyMax = 9;// = 9999;
const int iDelta = iMyMax - iMyMin

>Вроде тут вопрос по С++ был. В нем оператор
> вывода cout << , printf, по-моему, в С.

Объясняю, ты придрался к тому что у (+) описано несколько "лишних" переменных. Сам же ты используешь cout <<, т.е. библиотеку работы потокового ввода - вывода. Так вот программа в которой вместо
printf используется cout << занимает МНОГО больше ресурсов !!!
Я в принципе не против cout, но тогда зачем докапываться до переменных
которые повышают читабельность программы. Получается (перефразируя известную пословицу) что ты видишь в чужом коде соломинку, а своем не замечаешь бревно :-)






[C++] rand() 10.10.01 11:37  
Автор: ggg <ggg> Статус: Elderman
<"чистая" ссылка>
как вариант:

...
const int iMyMin = 0;// = 999;
const int iMyMax = 9;// = 9999;
const int iDelta = iMyMax - iMyMin;
...

и код понятный и лишних переменных нет
[C++] rand() 09.10.01 23:50  
Автор: Heromantor Статус: Незарегистрированный пользователь
<"чистая" ссылка>
А низя просто x=rand()%10?
[C++] rand() 10.10.01 02:52  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
> А низя просто x=rand()%10?

низя!.
Boprosik vnimatelno pochitaii
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach