Ασκήσεις στην Numpy: Random

Γενική οδηγία:

Αποθηκεύστε τα αρχεία που σας δίνονται στον υπολογιστή σας και χρησιμοποιώντας την υλοποίηση της python που προτιμάτε απαντήστε στην ερώτηση.

Random

  1. Θέλουμε να υπολογίσουμε πειραματικά την πιθανότητα να ρίξουμε ένα ζάρι και να φέρουμε 1. Φυσικά περιμένουμε να να είναι 1/6. Φτιάξτε μια συνάρτηση που να υπολογίζει πειραματικά αυτή την πιθανότητα. Θα δέχεται ως όρισμα τον αριθμό των ρίψεων N και θα επιστρέφει την πειραματική πιθανότητα να έχει έρθει 1. Numpy8-find-prob.py
    	
  2. Θέλουμε να υπολογίσουμε πειραματικά την πιθανότητα να ρίξουμε δύο ζάρια και να φέρουμε δύο εξάρες. Φτιάξτε μια συνάρτηση που να υπολογίζει πειραματικά αυτή την πιθανότητα. Θα δέχεται ως όρισμα τον αριθμό των ρίψεων N των 2 ζαριών και θα επιστρέφει την πειραματική πιθανότητα να έχουν έρθει 2 εξάρες. Numpy8-find-prob2.py
    	
  3. Θέλουμε να υπολογίσουμε πειραματικά την πιθανότητα να ρίξουμε ένα ζάρι N φορές και να φέρουμε K συνεχόμενες εξάρες. Φτιάξτε μια συνάρτηση που να υπολογίζει πειραματικά αυτή την πιθανότητα. Θα δέχεται ως όρισμα τον αριθμό των ρίψεων N και τον αριθμό των συνεχόμενων εξάρων Κ, και θα επιστρέφει την πειραματική πιθανότητα να έχουν έρθει Κ συνεχόμενες εξάρες. Numpy8-find-prob3.py
    	
  4. Η απεικόνιση μιας γραφικής παράστασης σε 3 διαστάσεις είναι πιο πολύπλοκη από τις 2 διαστάσεις. Θα χρησιμοποιήσουμε τις βιβλιοθήκες matplotlib και mpl_toolkits.mplot3d για να σχεδιάσετε τη γραφική παράσταση της συνάρτησης $$f(x,y)=\cos(x)\sin(y) $$ στο χωρίο \([-3,3]\times[-3,3]\). Για να μπορέσουμε να απεικονίσουμε την 3-διάστατη γραφική παράσταση πρέπει να δημιουργήσουμε ένα αντικείμενο της βιβλιοθήκης mpl_toolkits.mplot3d το οποίο μπορούμε να το ονομάσουμε π.χ. ax. Αυτό γίνεται με την εντολή ax=plt.axes(projection='3d'). Σε αυτό το αντικείμενο μπορούμε να απεικονίσουμε την τριδιάστατη γραφική παράσταση με την εντολή π.χ. ax.plot_surface(Χ,Υ,Ζ). Οι παράμετροι Χ,Υ, Ζ είναι arrays της numpy που περιέχουν τις συντεταγμένες των σημείων της γραφικής παράστασης. X και Y δημιουργούνται από την εντολή meshgrid της numpy. Η Z προκύπτει από την μαθηματικό τύπο της γραφικής παράστασης, π.χ. \(Ζ=f(X,Y)\). Προσθέστε λεζάντες στους άξονες χρησιμοποιώντας την ax.set_xlabel() για τον άξονα x και με ανάλογο τρόπο για τους υπόλοιπους άξονες. Δημιουργήστε τις γραφικές παραστάσεις των συναρτήσεων \(f(x,y)=x^2+y^2\), \(f(x,y)=x^2-y^2\), \(f(x,y)=\cos(x^2+y^2)\) \(f(x,y)=\cos(x^2-y^2)\), \(f(x,y)=\cos(x^2)\sin(y^2)\), \(f(x,y)=\sin(\sqrt{x^2+y^2})\), \(f(x,y)=\cos(\sqrt{x^2+y^2})\), \(f(x,y)=\cos(\sqrt{x^2+y^2})\sin(\sqrt{x^2+y^2})\), επίσης αντί για τη plot_surface χρησιμοποιήστε και τη plot_wireframe. Numpy8-surf-plot.py