Τελευταία μηνύματα

Σελίδες: [1] 2 3 ... 10
1
Πληροφορίες για το Πρόγραμμα / Με τι θα ασχοληθούμε σε αυτό το πρόγραμμα?
« Τελευταίο μήνυμα από evry στις Οκτώβριος 20, 2017, 09:21:25 μμ »
Παρακάτω δίνω κάποιες πηγές που έχουν ενδιαφέρον και τις οποίες θα μελετήσουμε μαζί:

Νευρωνικά Δίκτυα - Τεχνητή Νοημοσύνη και Van Gogh

http://www.subsubroutine.com/sub-subroutine/2016/11/12/painting-like-van-gogh-with-convolutional-neural-networks

https://deepart.io/

Μαθηματικά και Τέχνη
Mathematics and Painting

http://platonicrealms.com/minitexts/Mathematical-Art-Of-M-C-Escher/

http://im-possible.info/english/articles/escher_math/escher_math.html

Το παρακάτω θα είναι το πρώτο επιστημονικό άρθρο που διαβάζετε  ;) :
http://www.ams.org/notices/201006/rtx100600706p.pdf


2
Μαθήματα 2017-2018 / Πρώτη Συνάντηση Ομίλου Αλγοριθμικής 2017-2018
« Τελευταίο μήνυμα από evry στις Οκτώβριος 17, 2017, 01:51:49 μμ »
Η πρώτη συνάντηση του ομίλου θα γίνει φέτος την Δευτέρα 23 Οκτωβρίου στις 13:20 στο εργαστήριο πληροφορικής του 1ου ορόφου

Θα σας ενημερώσω για τους στόχους του ομίλου για φέτος και θα παρουσιάσω το περιβάλλον προγραμματισμού στο οποίο θα αναπτύξουμε τις εφαρμογές μας.
Πρόκειται για το ανοικτού κώδικα λογισμικό CodeBlocks το οποίο μπορείτε να κατεβάσετε από τον παρακάτω σύνδεσμο
http://www.codeblocks.org/downloads/26
Προσοχή!!! Θα κατεβάσετε το     codeblocks-16.01mingw-setup.exe
Αφού το εγκαταστήσετε  επιλέγετε
Create new Project ==>  Console Application ==> C++ ==>
δίνω το όνομα του project
και σε όλες τις άλλες ερωτήσεις λέω ΝΑΙ
Μετά από τον δενδροειδή κατάλογο αριστερά ανοίγω το main.cpp
και καλό coding  :D


Μπορείτε εσείς να εγκαταστήσετε το codeblocks, από τώρα. Προσέξτε, την πρώτη φορά που θα το χρησιμοποιήσετε θα σας ζητήσει να επιλέξετε compiler. Επιλέγουμε τον mingw gcc.

Παρακάτω δίνω ένα απλό πρόγραμμα με το οποίο θα ασχοληθούμε στην πρώτη μας συνάντηση.
Μπορείτε αν θέλετε να τολμήσετε να το δοκιμάσετε πριν τη Δευτέρα  ;)

Κώδικας: cpp [Επιλογή]

#include <iostream>
// θα χρησιμοποιήσω τα cin/cout για είσοδο/έξοδο άρα πρέπει να συμπεριλάβω τη βιβλιοθήκη iostream
using namespace std;

int main()
{
    int x, y, sum, product;     //  δήλωση ακέραιων μεταβλητών
    cout << " y = " ;            // μήνυμα στον χρήστη
    cin >> y;                       // εισαγωγή ενός αριθμού στη μεταβλητή y από τον χρήστη
    cout << "x = ";              // μήνυμα στον χρήστη
    cin >> x;                     // εισαγωγή ενός αριθμού στη μεταβλητή x από τον χρήστη
 
    sum = x+y;                 // καταχωρώ το άθροισμά τους στη μεταβλητή sum
    product = x * y;          // καταχωρώ το γινόμενό τους στη μεταβλητή product
 
    cout << “sum = ” << sum << endl;             // Εμφανίζω τα αποτελέσματα
    cout << “product = ” << product << endl;
 
    return 0;
}


Ασκήσεις για την 1η συνάντηση
Να τροποποιήσετε το παραπάνω πρόγραμμα έτσι ώστε να
1. Κάνει τα ίδια αλλά για τέσσερις αριθμούς
2. Να διαβάζει τέσσερις αριθμούς και να εμφανίζει τη διαφορά του αθροίσματος των δυο πρώτων από το άθροισμα των δυο τελευταίων.

Σχετικά με την εγκατάσταση και χρήση του codeblocks αν και δεν νομίζω ότι χρειάζεται:
Ένα πολύ καλό εισαγωγικό εγχειρίδιο στα αγγλικά είναι αυτό
http://www.sci.brooklyn.cuny.edu/~goetz/codeblocks/codeblocks-instructions.pdf


Σε περίπτωση που έχετε πρόβλημα με την εγκατάσταση ή χρήση του CodeBlocks
μπορείτε να χρησιμοποιήσετε έναν online interpreter της C++ που δεν χρειάζεται εγκατάσταση και εκτελείται μέσα στον browser όπως οi παρακάτω:

http://www.compileonline.com/compile_cpp_online.php
http://code.hackerearth.com/2aa73cz


Σχετικά με τη γλώσσα C++ οι σημειώσεις που θα σας δώσω σας υπερκαλύπτουν αλλά αν είστε ανήσυχα μυαλά και θέλετε να το ψάξετε περισσότερο παραθέτω στη συνέχεια μερικά πολύ καλά βιβλία για C++ τα οποία διατίθενται δωρεάν στο διαδίκτυο

How to think like a Computer Scientist in C++

Thinking in C++

Learn C++

Όσοι έχετε πρόβλημα με τον compiler του Codeblocks, αυτό πιθανόν συμβαίνει επειδή το περιβάλλον δεν μπορεί να βρει τον compiler και πρέπει εσείς να ορίσετε το μονοπάτι στο οποίο βρίσκεται.
Για να το κάνετε αυτό:
Αφού ανοίξετε το CodeBlocks
Πηγαίνετε στα Settings και εκεί επιλέγετε  Compiler .
Στη φόρμα που σας βγάζει επιλέγετε Toolchain executables.
Εκεί στο Compiler's installation directory πρέπει να ορίσετε το μονοπάτι στο οποίο βρίσκεται ο compiler.
Για να το κάνετε αυτό βρείτε σε ποιο φάκελο έχετε εγκαταστήσει το CodeBlocks, π.χ. αν είναι στο C:\Program Files το μονοπάτι είναι C:\Program Files\CodeBlocks\MinGW

αν ούτε αυτό δουλέψει τότε δοκιμάσετε να δουλέψετε σε κάποιους από τους παρακάτω  online compilers.

http://cpp.sh/
http://www.compileonline.com/compile_cpp_online.php
https://www.codechef.com/ide


Το δεύτερο πρόγραμμα με το οποίο θα ασχοληθούμε συνιστά τροποποίηση / επέκταση του προηγούμενου και είναι το παρακάτω:

Κώδικας: cpp [Επιλογή]

#include <iostream>                         
                                  // θα χρησιμοποιήσω τα cin/cout για είσοδο/έξοδο άρα πρέπει να συμπεριλάβω τη βιβλιοθήκη iostream
using namespace std;
int main() {
   int a, b, sum;                                                                 //  δήλωση ακέραιων μεταβλητών
   cout << "Enter two positive numbers" << endl;            // μήνυμα στον χρήστη
   cout << "a = ";                                                              // μήνυμα στον χρήστη
   cin >> a;                                                                        // διαβάζει έναν αριθμό και τον αποθηκεύει στη μεταβλητή a
   cout << "b = ";                                                              // μήνυμα στον χρήστη
   cin >> b;                                                                       // διαβάζει έναν αριθμό και τον αποθηκεύει στη μεταβλητή a
   if (a>0 && b>0) {                                                          // Αν ισχύει ότι και το a και το b είναι θετικοί αριθμοί
       sum = a + b;                                                             // καταχωρώ το άθροισμά τους στη μεταβλητή sum
       cout << "sum = " << sum << endl;                         // εμφανίζω το αποτέλεσμα στην οθόνη
   }
   else
       cout << "Houston we have a problem: Negative number" << endl;       // αλλιώς ενημερώνω ότι υπάρχει πρόβλημα
   
   return 0;
}


Ασκήσεις για την 2η συνάντηση
Να τροποποιήσετε το παραπάνω πρόγραμμα έτσι ώστε να
1. Κάνει τα ίδια αλλά για τέσσερις αριθμούς
2. Να διαβάζει δυο αριθμούς Α, B, C που είναι οι συντελεστές της πρωτοβάθμιας εξίσωσης ax+b = 0 και να εμφανίζει τη λύση της στην οθόνη.


3
Πληροφορίες για τον Όμιλο Αλγοριθμικής / Τι θα κάνουμε στον όμιλο Αλγοριθμικής;
« Τελευταίο μήνυμα από evry στις Σεπτέμβριος 21, 2017, 12:33:26 μμ »
Μια αποθήκη έχει 100 μπουκάλια κρασί και σε ένα από αυτά υπάρχει δηλητήριο. Για να βρείτε το μπουκάλι με το δηλητήριο έχετε τη δυνατότητα να στείλετε δείγματα στο χημείο.
Το χημείο κάνει έλεγχο και απαντάει με «ΝΑΙ» ή «ΌΧΙ» αν το δείγμα που έλεγξε έχει μέσα οσοδήποτε μικρή ποσότητα δηλητηρίου. 
Κάθε δείγμα μπορεί να περιέχει κρασί από περισσότερα από ένα μπουκάλια
Α) Μπορούμε να στέλνουμε ένα δείγμα στο χημείο και αφού μας απαντήσει να στέλνουμε άλλο.
Ποιος είναι ο ελάχιστος αριθμός δειγμάτων που θα χρειαστεί να στείλουμε για να εντοπίσουμε το μπουκάλι με το δηλητήριο;
Β) Τα δείγματα θα πρέπει να σταλούν στο χημείο μόνο μια φορά όλα μαζί.


Το παραπάνω πρόβλημα είναι ενδεικτικό της σημασίας της πληροφορικής και ειδικότερα της σχεδίασης αλγορίθμων.

Αν βρίσκεται το παραπάνω πρόβλημα ενδιαφέρον και θέλετε να γράψετε κώδικα σε μια σύγχρονη γλώσσα όπως C++, Python ή Java και μπορείτε να λύσετε δυο από τα τρία προβλήματα που δίνουμε παρακάτω

•   Το πρόβλημα του αρχαίου κόσμου
•   Κανίβαλοι και Ιεραπόστολοι
•   Το πρόβλημα της διάσχισης γέφυρας

τότε πιστεύουμε ότι θα διασκεδάσετε με τη συμμετοχή σας τον όμιλο πληροφορικής και θα δείτε πολλούς νέους τρόπους σκέψης για επίλυση αλγοριθμικών προβλημάτων όπως

•   Το πρόβλημα του παραχαραγμένου κέρματος
•   Το πρόβλημα του εγγύτερου ζεύγους
•   Το πρόβλημα των 8 βασιλισσών
•   Το πρόβλημα του Ιώσηπου
•   Κατασκευή μαγικού/λατινικού τετραγώνου ή Sudoku
•   Το πρόβλημα του συντομότερου μονοπατιού σε γράφο
•   Το πρόβλημα του κύβου του Rubik
•   Έξοδος από λαβύρινθο
•   Ο γρίφος του Αϊνστάιν

Η κωδικοποίηση των αλγορίθμων θα γίνει σε C++.

Ένας από τους στόχους του ομίλου είναι και η δημιουργία ομάδας προγραμματισμού Η/Υ για συμμετοχή στον πανελλήνιο διαγωνισμό πληροφορικής.
Ο όμιλος θα λειτουργεί ένα δίωρο μια φορά την εβδομάδα μετά το πέρας των μαθημάτων και απευθύνεται σε μαθητές γυμνασίου και Λυκείου.


Οι υπεύθυνοι καθηγητές

Ευριπίδης Βραχνός
Σοφία Ντούσκα
4
Πληροφορίες για τον Όμιλο Αλγοριθμικής / Όμιλος Αλγοριθμικής 2017-2018
« Τελευταίο μήνυμα από evry στις Σεπτέμβριος 21, 2017, 12:15:55 μμ »
Ο όμιλος Αλγοριθμικής θα λειτουργήσει και τη φετινή σχολική χρονιά 2017-2018. Θα ασχοληθούμε πάλι με τη γλώσσα προγραμματισμού C++ και με διάφορους λογικούς γρίφους και στη συνέχεια θα δούμε πως θα προχωρήσουμε.



Επίσης κάθε χρόνο οι μαθητές του ομίλου είναι προσκεκλημένοι στο θερινό σχολείο πληροφορικής του τμήματος πληροφορικής του Πανεπιστημίου Πειραιά που διενεργείται μια εβδομάδα του Ιουνίου.
5
Συναντήσεις Ομίλου 2016-2017 / Συνάντηση 3 Απριλίου 2017
« Τελευταίο μήνυμα από evry στις Απρίλιος 04, 2017, 12:45:09 μμ »
Στην τελευταία συνάντηση υλοποιήσαμε ένα πρόγραμμα για την επίλυση της πρωτοβάθμιας εξίσωσης. Να μελετήσετε τις διάφορες περιπτώσεις.


Ο κώδικας είναι ο παρακάτω αλλά σας το επισυνάπτω και ως αρχείο Python

Κώδικας: python [Επιλογή]
print("Δώσε τους συντελεστές της εξίσωσης") 
a = int(input("a = "))
b = int(input("b = "))
c = int(input("c = "))
print("Έδωσες την παρακάτω εξίσωση")
print (a, "x + ", b, " = ",c)
if a == 0:
    if b==c:
        print ("Αόριστη. Άπειρες Λύσεις")
    else:
        print ("Αδύνατη. Δεν έχει λύσεις")
else:
    x = (c - b) / a
    print ("x = ", x)



Προσοχή ο κώδικας είναι στην Python 3
6
Γ Τάξη / Αναζήτηση στην Python
« Τελευταίο μήνυμα από evry στις Φεβρουάριος 22, 2017, 10:19:19 μμ »
Στο τελευταίο μάθημα υλοποιήσαμε το πρώτο τμήμα του αλγορίθμου από το φύλλο εργασίας:

Κώδικας: Python [Επιλογή]
from  random  import randint  
secret_number = randint(1,20)
guesses = 0
found = False
while  not  found and guesses < 10   :
    guess = int( input( "Μάντεψε τον αριθμό : ")  )
    guesses += 1
    if guess == secret_number :
         print ( "Μπράβο το βρήκες με ", guesses, "προσπάθειες" )   
         found  = True
    else :
         print ("Δυστυχώς δεν το βρήκες, Ξαναπροσπάθησε" )
if found == False:
    print( "Δυστυχως χασατε!!" )
7
Α Τάξη / Η συνέχεια στο eclass
« Τελευταίο μήνυμα από evry στις Φεβρουάριος 19, 2017, 09:13:59 μμ »
Από εδώ και στο εξής το μάθημα μετακομίζει σε κλειστό πίνακα στο eclass στον οποίο έχετε πρόσβαση με τους λογαριασμούς που σας έδωσα.
8
Συναντήσεις Ομίλου 2016-2017 / Συνάντηση 12 Φεβρουαρίου 2017
« Τελευταίο μήνυμα από evry στις Φεβρουάριος 07, 2017, 05:48:45 μμ »
Στην τελευταία συνάντηση είπαμε να το ρίξουμε λίγο στην Python και να ασχοληθούμε λίγο με την κρυπτογραφία.

Προσοχή!! Δουλεύουμε στην Python 3!!! (έκδοση 3.6) την οποία μπορείτε να κατεβάσετε από τον παρακάτω σύνδεσμο:
https://www.python.org/ftp/python/3.6.0/python-3.6.0.exe

Δυο σχολικά βιβλία που κάνουν στο επαγγελματικό λύκειο μπορείτε να βρείτε εδώ:
Αρχές Προγραμματισμού Β τάξη ΕΠΑΛ
Προγραμματισμός Υπολογιστών Γ' ΕΠΑΛ

Το παρακάτω πρόγραμμα κρυπτογραφεί το κείμενο text με τον αλγόριθμο του Καίσαρα μετατοπίζοντας κάθε γράμμα key θέσεις στο αλφάβητο.

Κώδικας: python [Επιλογή]

def encrypt(text, key):
    cipher = ""
    for letter in text:
        cipher += chr( ord(letter) + key )
    return cipher


Είχαμε κάνει το παραπάνω και είχαμε πει να δοκιμάσετε να κάνετε την αποκρυπτογράφηση. Επίσης να λύσετε το πρόβλημα της κυκλικής μετάθεσης, δηλαδή ότι μετά το Ω είναι το Α στα ελληνικά και μετά το Z είναι το Α στα αγγλικά!!

Υπόδειξη: Στην Python ισχύει ο ίδιος τελεστής για το υπόλοιπο της ακέραιας διαίρεσης, έτσι αν θέλουμε το γράμμα που είναι 4 θέσεις μετά το Y, δηλαδή Y -> Z -> A -> B -> C , προσθέτουμε στη θέση που είμαστε key % 24 !!! Δοκιμάστε το στην πράξη με πραγματικά παραδείγματα.

Γιατί να μάθω Python
9
Συναντήσεις Ομίλου 2016-2017 / Συνάντηση 5 Φεβρουαρίου 2017
« Τελευταίο μήνυμα από evry στις Φεβρουάριος 05, 2017, 02:57:08 μμ »
ΕΡΓΑΣΙΑ Το παιχνίδι ΠΕΤΡΑ-ΨΑΛΙΔΙ-ΧΑΡΤΙ
Θα αναπτύξετε ένα πρόγραμμα το οποίο θα παίζει το παιχνίδι ΠΕΤΡΑ - ΨΑΛΙΔΙ - ΧΑΡΤΙ. (Rock -Scissors - Paper)
Ο χρήστης Θα δίνει το αρχικό γράμμα για κάθε αντικείμενο και ο υπολογιστής θα παράγει κάποιο στην τύχη.
 
Αρχικά κατεβάστε το  Φύλλο Δραστηριότητας από εδώ
διαβάστε το προσεκτικά και ακολουθήστε τις οδηγίες βήμα - βήμα.

Το πρόγραμμά μας θα πρέπει στο τέλος
1. Να παίζει συνεχόμενους γύρους. Σε κάθε γύρο να ρωτάει τον παίκτη αν θέλει να συνεχίσει
2. Να καταγράφει τις νίκες τις ήττες για τον παίκτη και τον υπολογιστή και να εμφανίζει στο τέλος τα συνολικά αποτελέσματα και τον τελικό νικητή.
και εντελώς προαιρετικά
3. Να εμφανίζει το αντικείμενο που επέλεξε τις περισσότερες φορές ο παίκτης

Δίνω ένα ημιτελές τμήμα του παιχνιδιού που θα πρέπει να αναπτύξετε με βάση τις οδηγίες του φύλλου εργασίας. Μπορείτε να το κατεβάσετε και από εδώ σε μορφή cpp.
Κώδικας: cpp [Επιλογή]

#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;

int main ()
{
    int index;
    char computer;
    char player, choice;

    srand (time(NULL));

    cout << "********************************" << endl;
    cout << "*  Rock-Paper-Scissors Game Ver. 0.1  *" << endl;
    cout << "*         programmed by Euripides          *" << endl;
    cout << "********************************" << endl;

    cout << endl;

    cout << " Keep Calm, it is your turn now " << endl;
    cout  << "Enter choice : P: Paper, S: Scissors and R: Rock " << endl;
    cin >> player;

    index = rand() % 3 ;
    if (index == 0)
        computer = 'R';
    else if (index == 1)
        computer = 'P';
    else
        computer = 'S';

    cout << " You     : " << player << endl;
    cout << " Computer: " << computer << endl;

    if (player == 'P' && computer == 'R') {
        cout << "you win" << endl;
    }
    else {
        cout << "you lose" << endl;
    }
    cout << "***************" << endl;
    cout << "   GAME OVER  " << endl;
    cout << "***************" << endl;

  return 0;
}

10
Α Τάξη / Πως να γραφτώ στην ηλεκτρονική τάξη?
« Τελευταίο μήνυμα από evry στις Φεβρουάριος 02, 2017, 03:38:00 πμ »
Για να γραφτείτε σε ένα μάθημα στο eclass πηγαίνετε στην ιστοσελίδα,
http://eclass.sch.gr/ , και κάνετε κλικ εκεί που λέει Σύνδεση με Λογαριασμό sch.gr

 
Εισάγετε τους κωδικούς που σας έχουμε δώσει:
 
και θα βρεθείτε σε μια οθόνη όπως αυτή που βλέπετε παρακάτω. Αυτό είναι το χαρτοφυλάκιό σας, δηλαδή τα μαθήματα στα οποία είστε εγγεγραμμένοι. Τώρα είμαι μέσα με τον δικό μου λογαριασμό και είμαι εγγεγραμμένος σε δυο μαθήματα. Εσείς θα βλέπετε κενή αυτή τη λίστα γιατί δεν θα είστε ακόμα εγγεγραμμένοι σε κάποιο μάθημα. Στη συνέχεια επιλέγετε από το μενού αριστερά Μαθήματα
 
και θα δείτε τη λίστα όλων των μαθημάτων του σχολείου σας!!! Μετά επιλέγετε το μάθημα στο οποίο θέλετε να εγγραφείτε.
 
 
Αν θέλετε να εγγραφείτε σε ένα κλειστό μάθημα, δηλαδή σε μάθημα στο οποίο η πρόσβαση δεν είναι ελεύθερη θα πρέπει να κάνετε αίτημα στον καθηγητή. Αφού επιλέξετε το μάθημα που θέλετε από την προηγούμενη λίστα (π.χ. εγώ μόλις επέλεξα Μαθηματικά Γ Γυμνασίου) θα δείτε την παρακάτω οθόνη στην οποία θα πρέπει να γράψετε κάτι στο κενό πλαίσιο π.χ. το όνομά σας και να κάνετε κλικ στο Υποβολή αίτησης. Μετά περιμένετε να σας έρθει ειδοποίηση στο email σας.
 
Σελίδες: [1] 2 3 ... 10