| 
							TGrey[WoLf]
							
						 | 
						
							
								  | 
								
									
									 «  : 06-01-2007 03:53 »   | 
								
								 | 
							  
							 
							Добрый день. Хочу спросить, как я могу осуществить 1 проект. У меня на форме расположены: 3 Lable, 1 Timer, 1 Button. И вот при нажатии на кнопку Lable->captions, должны изменяться на рызные числа(буквы), до тех пор, пока не будет нужная комбинация. Меня интерисует ,как ето осущевствить способом просто Rnd и Rnd из уже заданых чисел(букв).
  Сам я все сделал, кроме подстановки чисел(букв). Если можно подскажите по етой части. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Последнее редактирование: 06-01-2007 08:34 от Finch »
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							Finch
							
								Спокойный 
								Администратор
								
								 
								  Offline
								Пол:   
								
								Пролетал мимо
								
								
								
								
								
							  
						 | 
						
							
								  | 
								
									
									 « Ответ #1 : 06-01-2007 09:00 »   | 
								
								 | 
							  
							 
							TGrey[WoLf], Я поменял название темы. Согласись,  что тот кто будет искать подобный вопрос. Тема "Помогите" ему ничего не даст при поиске. Из твоего путаного объяснения, я понял что тебе нужно из чисел, получаемых генератором, составлять какие либо комбинации знаков.  Ну первое, что приходит на ум: #include <stdlib.h> #include <stdio.h> #include <time.h>
  void SetRND(char ch[5]) // делаем комбинацию из 4 знаков {    char kom[16]="asdlir13578cxmk";   //Тут твоя комбинация знаков    for(int i=0; i<4; i++) ch[i]=kom[rand() % 15];    ch[4]=0;  }      int main() {    char ch[5];    srand(time(0));    SetRND(ch);    printf("%s\n",ch);    return 0; }  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Последнее редактирование: 06-01-2007 09:26 от Finch »
								 | 
								
									 
									Записан
								 | 
							  
							 
							Не будите спашяго дракона.              Джаффар (Коша)  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							TGrey[WoLf]
							
						 | 
						
							
								  | 
								
									
									 « Ответ #2 : 07-01-2007 01:24 »   | 
								
								 | 
							  
							 
							Да, действительно не поможет) В преть буду стараться называть темы, как положено.
  Но а всеже, как мне етот код использовать в обработчике кнопки? Мне же надо, чтоб после нажатия кнопки captions изменялись до определенного момента. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									 « Ответ #3 : 07-01-2007 12:53 »   | 
								
								 | 
							  
							 
							TGrey[WoLf], не понятно - тебе результат нужно получить, или эффект? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							TGrey[WoLf]
							
						 | 
						
							
								  | 
								
									
									 « Ответ #4 : 08-01-2007 01:38 »   | 
								
								 | 
							  
							 
							New=>Aplication На форму кидаю кнопку и 3 лейбла. В событиях кнопки захожу в событие OnClick и туда надо вписать код, чтобы лейблы генерировали разные числа.  Я б и сам сделал, но незнаю как в БСБ делать Rnd    
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									 « Ответ #5 : 08-01-2007 11:56 »   | 
								
								 | 
							  
							 
							У тебя хелпов нет? Вроде бы rand() - ф-ия стандартная... 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							TGrey[WoLf]
							
						 | 
						
							
								  | 
								
									
									 « Ответ #6 : 09-01-2007 01:40 »   | 
								
								 | 
							  
							 
							Rand() не действует.... И ни в 1 хелпе или книге неуказывалось, как делать случайные числа. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							zubr
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #7 : 09-01-2007 04:51 »   | 
								
								 | 
							  
							 
							Вот простейший код в стройке, в таймере генерятся случайные числа: //---------------------------------------------------------------------------
  #include <vcl.h> #pragma hdrstop
  #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1;
  //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner)         : TForm(Owner) { } //---------------------------------------------------------------------------
  void __fastcall TForm1::Button1Click(TObject *Sender) {    randomize();    Timer1->Enabled=TRUE; } //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) {    int r=random(100);    Label1->Caption=IntToStr(r);    if(r==50)    Timer1->Enabled=FALSE; } //---------------------------------------------------------------------------
  //---------------------------------------------------------------------------
  #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp> #include <ExtCtrls.hpp> //--------------------------------------------------------------------------- class TForm1 : public TForm { __published:   // IDE-managed Components         TButton *Button1;         TTimer *Timer1;         TLabel *Label1;         void __fastcall Button1Click(TObject *Sender);         void __fastcall Timer1Timer(TObject *Sender); private:   // User declarations public:      // User declarations         __fastcall TForm1(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif
   
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									 « Ответ #8 : 09-01-2007 08:30 »   | 
								
								 | 
							  
							 
							Header File
  stdlib.h 
  Category
  Math Routines
  Syntax
  #include <stdlib.h> int rand(void);
  Description
  Random number generator.
  rand uses a multiplicative congruential random number generator with period 2 to the 32nd power to return successive pseudo-random numbers in the range from 0 to RAND_MAX. The symbolic constant RAND_MAX is defined in stdlib.h.
  Return Value
  rand returns the generated pseudo-random number. Header File
  stdlib.h 
  Category
  Math Routines
  Syntax
  #include <stdlib.h> void srand(unsigned seed);
  Description
  Initializes random number generator.
  The random number generator is reinitialized by calling srand with an argument value of 1. It can be set to a new starting point by calling srand with a given seed number.
  Return Value
  None.  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Последнее редактирование: 09-01-2007 08:31 от RXL »
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							TGrey[WoLf]
							
						 | 
						
							
								  | 
								
									
									 « Ответ #9 : 10-01-2007 01:36 »   | 
								
								 | 
							  
							 
							Да, спасибо мне 1 хороший человек по ICQ помог. Вот только для быстрой генерации чисел он добавил  Randomize(); в __fastcall TForm1::TForm1(TComponent* Owner)         : TForm(Owner) { Randomize; } И вот только вместо   Я писал   Еффект идет РНД до 9. В чем разница етих способов?  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							nikedeforest
							
						 | 
						
							
								  | 
								
									
									 « Ответ #10 : 10-01-2007 02:18 »   | 
								
								 | 
							  
							 
							Функция Randomize() необходима. Она инициализирует генератор случайных чисел, вызов ее обязателен.  Функция rand() - random number generator возвращает псевдо-случайное число в пределах от 0 до RAND_MAX. Значение RAND_MAX можешь поглядеть в подключаемой библиотеке. Оператор % возвращает остаток от деления. Чувствую, что необходимо пояснить, что такое остаток от деления. Поясню примерами, аннологию поймешь. На твоем примере 256%10=6 100%10=0 32%10=2 //////// 256%100=56 100%100=0 32%100=32 Этот оператор относится к синтаксису языка С, что говорит о том, что ты его плохо знаешь. Тебе здесь помогло кучу хороших человеков, но ты это увы не понял. 
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							ещё один вопрос ... 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							zubr
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #11 : 10-01-2007 04:55 »   | 
								
								 | 
							  
							 
							В чем разница етих способов? rand - функция от Microsoft Random - от Borland, думаю на основе rand Random, думаю, несколько удобнее.  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									 « Ответ #12 : 10-01-2007 06:38 »   | 
								
								 | 
							  
							 
							zubr, ошибаешься: rand() - ф-ия из стандартной библиотеки С. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							zubr
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #13 : 10-01-2007 16:43 »   | 
								
								 | 
							  
							 
							RXL, согласен, это меня заклинило. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							nikedeforest
							
						 | 
						
							
								  | 
								
									
									 « Ответ #14 : 11-01-2007 10:30 »   | 
								
								 | 
							  
							 
							Дело в том, что он обе функции написал с большой буквы. Функции библиотек языка С с маленькойц пишутся. Может это обертки, которые в конечном итоге используют стандартную библиотеку? Я просто Билдер никогда не использовал, если что не так    
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							ещё один вопрос ... 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							TGrey[WoLf]
							
						 | 
						
							
								  | 
								
									
									 « Ответ #15 : 14-01-2007 02:08 »   | 
								
								 | 
							  
							 
							Ну, а что вы хотите... Я только учусь! Поетому и задаю ети глупые вопросы(глупые для вас, поскольку вы уже знаете, как и что). Да, действительно random(x) мне больше по душе. А пишу большими буквами, не потому что незнаю, как писать, а потому что привык так писать.
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	 |