• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
August 02, 2025, 17:09:02 pm

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
August 02, 2025, 17:09:02 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
[Τηλεπικοινωνιακά Συστήμα...
by Thanasis_pap
[Today at 17:06:37]

Άδεια ασκήσεως επαγγέλματ...
by The Web
[Today at 13:25:49]

[Τομέας Ηλεκτρονικής] Μαθ...
by Nikos_313
[Today at 09:51:26]

[Τομέας Ενέργειας] Μαθήμα...
by Nikos_313
[Today at 01:40:22]

Οι μπράβοι του πρύτανη
by Διάλεξις
[Today at 01:30:18]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[Today at 01:04:15]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by Διάλεξις
[Today at 00:59:05]

Ηλεκτρομηχανολογικές Μελέ...
by inverter
[August 01, 2025, 20:35:12 pm]

Νέα Δημοκρατία (and Co. I...
by Katarameno
[August 01, 2025, 15:13:09 pm]

Πρόγραμμα Σπουδών Ακαδημα...
by PolarBear
[August 01, 2025, 15:03:05 pm]

Aναζωπύρωση των εχθροπραξ...
by Katarameno
[July 31, 2025, 21:15:48 pm]

Καμμένα...!!
by Godat
[July 31, 2025, 21:07:58 pm]

[ΑΝΤΙΣΤΑΣΗ] Ανακοίνωση γι...
by Katarameno
[July 31, 2025, 20:31:30 pm]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[July 31, 2025, 15:33:28 pm]

ΤΗΜΜΥ-Σκάκι
by L
[July 31, 2025, 13:24:56 pm]

Τι ακούτε αυτήν τη στιγμή...
by Giopan
[July 30, 2025, 17:07:32 pm]

Αποτελέσματα Εξεταστικής ...
by Mr Watson
[July 30, 2025, 14:19:11 pm]

Τα παράσιτα ανάμεσά μας
by Katarameno
[July 30, 2025, 13:47:28 pm]

Ρώτα κάτι τον επόμενο
by Giopan
[July 29, 2025, 16:04:23 pm]

Πότε θα βγει το μάθημα; -...
by chatzikys
[July 29, 2025, 13:52:51 pm]
Στατιστικά
Members
Total Members: 9988
Latest: kyrlef
Stats
Total Posts: 1427642
Total Topics: 31739
Online Today: 142
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 25
Guests: 89
Total: 114
themis01
Thanasis_pap
nmpampal
Ma8hths Indou
diesel
kaskas12
Saint_GR
filkilkis
george14
aris123321
bit11
trelogauros7
iliaspapam
glavdakis
dsaragiotis
georgino
chris123
Giannis Masterio
Don
johnnypap
Bit4Thought
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) > [Δομημένος Προγραμ.] Ερώτηση πάνω στη rand( )
0 Members and 1 Guest are viewing this topic.
Pages: [1] Go Down Print
Author Topic: [Δομημένος Προγραμ.] Ερώτηση πάνω στη rand( )  (Read 827 times)
Emfanever
Καταστραμμένος
********
Gender: Male
Posts: 5284


Πολίτης


View Profile
[Δομημένος Προγραμ.] Ερώτηση πάνω στη rand( )
« on: April 23, 2008, 17:50:41 pm »

Πειραματιζόμουν σήμερα με τη rand( ) και πρόσεξα τα εξής:
'Εφτιαξα αρχικά αυτό το πρόγραμμα:
Code:
#include <stdio.h>
#include <stdlib.h>
#define MAX 10

void main()
{
  int x,i;
  double counter=1;

  for (i=0;i<MAX;i++){
      x=rand();
      while (x!=500){
  x=rand();
  counter++;
      }
      printf("%f\n",counter);
  }
}
Κάθε φορά μου έβγαζε τους αριθμούς
16596
55260
121535
188292
222272
238498
241478
313367
345274
405776

Δλδ, κάθε φορά μετά από 16596 επαναλήψεις η rand( ) δίνει τον αριθμό 500.
Άρα υπέθεσα ότι η rand( ) βγάζει τους αριθμούς με μια συγκεκριμένη σειρά και όχι τόσο τυχαία.

Στη συνέχεια έφτιαξα αυτό το πρόγραμμα
Code:
#include <stdio.h>
#include <stdlib.h>

void main()
{
   int x;
   double i;
 

  for (i=1;i<=16596;i++)
  x=rand();

  printf("%d\n",x);
}

και όπως περίμενα έβγαλε σαν αποτέλεσμα τον αριθμό 500.

Και τελικά με αυτό
Code:
#include <stdio.h>
#include <stdlib.h>

void main()
{
   int x;
   double i;
 

  for (i=1;i<=10;i++){
      x=rand();
      printf("%d\n",x);
  }
}

είδα ότι κάθε φορά που τρέχει η rand( ) για πρώτη φορά δίνει τον αριθμό 346,
αν τρέξει 2η φορά στο ίδιο πρόγραμμα δίνει τον 130 κ.τ.λ.
Είναι λογικό αυτό??
« Last Edit: April 23, 2008, 20:16:54 pm by Emfanever » Logged
Wanderer
Καταστραμμένος
********
Gender: Male
Posts: 5230


Othoum Endron Saous


View Profile
Re: [Δομημένος Προγραμ.] Ερώτηση πάνω στη rand( )
« Reply #1 on: April 23, 2008, 22:08:57 pm »

Νομίζω ναι. Στηρίζεται σε έναν τύπο η rand() για να παράγει τιμές, για αυτό από ό,τι θυμάμαι από ένα παράδειγμα που είχα δει και χρησιμοποιούσε τη rand(), έτρεχε ένας ατέρμων βρόγχος μέχρι ο χρήστης να πατήσει ένα πλήκτρο. Σε κάθε επανάληψη του βρόγχου, αποδίδονταν μία τιμή στη rand(). Αφού δεν ξέρει τί τιμή θα αποδίδει η rand() αν πατήσει το κουμπί σε π.χ. 2.01 δευτερόλεπτα, πρακτικά η επιλογή θα είναι τυχαία.

Πρέπει να δώσεις ένα τρόπο στη συνάρτηση να παράγει τιμές με τυχαίο (φαινομενικά διότι στην πραγματικότητα δεν είναι τυχαίο, απλά εσύ δεν μπορείς να ξέρεις τί τιμή θα δώσει) τρόπο.

Από ό,τι θυμάμαι από το help του borland C++ υπάρχει η εντολή randomize(); που τρέχεις πριν τη rand() και η srand(..). Στην τελευταία μπορείς να δώσεις παράμετρο ctime (πρέπει να κάνεις include το time.h) για να δώσει τιμές με βάση την ένδειξη του ρολογιού του υπολογιστή.

« Last Edit: April 23, 2008, 22:11:24 pm by Wanderer » Logged

Preserve and keep us safe this night     *and our innocence made fun of justice*

Once we dreamt of everything
united by our love
There's a place for everyone
so we scream "Liberta"
Pages: [1] Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...