Loading...

BTC Address to donate : [[address]]

Donation of [[value]] BTC Received. Thank You.
[[error]]

Mr SiLv3r عضو نشيط
  • شكراً: 228
  • تم شكره 87 مرة في 25 مشاركة

بسم الله الرحمن الرحيم ..

السلام عليكم

حبيت اطرح موضوع سهل .. كيفيه توليد الارقام العشوائيه في لغه c

عاده بنستخدم داله

rand()

لكن في لغه السي تواجهنا مشكله .. كل مره تولد نفس الارقام .. علي سبيل المثال

كود PHP:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

/* 
    sec4ever.com , The sw0rd
*/

int main()
{
    
int i;


    for(
010i++){

        
printf("%i\n",rand() );
    }
    return 
0;

كدا في مشكله .. ان لو عملت رن حيطلع كل مره نفس الارقام .. طيب ايه الحل ..

الحل داله

srand() + #include <time.h>

لان الداله دي موجوده في time.h

طيب نشوف الكود الصح و نفهم معناه

كود PHP:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

/* 
    sec4ever.com , The sw0rd
*/

int main()
{
    
int i;

    
srand(time(NULL));

    for(
010i++){

        
printf("%i\n",(rand() %10)+1);
    }
    return 
0;

الاول اعتبر دي srand(time(NULL));

داله لتغير وقت لغه سي بالتزامن مع الجهاز بتاعك .. لان السي بتولد نفس الارقام .. مش حتعمق فيها كتير لان الشرح للمبتدئين


اهم جزء ..

نفرض اني عايز اولد مجموعه ارقام عشوائيه من 0-10 ؟

(rand() %10)+1

دا معناه ايه .. %10 يولد ارقام لحد 9 .. طيب ازاي بيشتغل

%10 دا معناه ان السي مثلا عمل توليد لرقم كمثال 32

ال % يعني reminder

بيحصل الاتي

32
over
10

الناتج 3.4 الرمايندر بياخد ال 3 و بيحطها في مجموعه الارقام الي طلبناها و هكذا

طيب ليه انا عملت +1 عشان يولد الرقم 10 كمان ..


ارجو الشرح يكون مفهوم

تحياتي

توقيع
Personal E-Mail : [email protected]
Contact me : PM Me
الأعضاء الذين قالوا شكراً لـ Mr SiLv3r على المشاركة المفيدة:
أدوات الموضوع
انواع عرض الموضوع


Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.

:: Security By : Sec4ever Team ::

جميع الحقوق محفوظة الحماية للأبد -Security 4 Ever
Sec4ever by Sec4ever
جميع الحقوق محفوظة الحماية للأبد -Security 4 Ever
Sec4ever by Sec4ever