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

Σελίδες: [1] 2 3 ... 10
2
Το περιβάλλον προγραμματισμού στο οποίο θα δουλέψουμε είναι το ελεύθερο λογισμικο CodeBlocks το οποίο μπορείτε να κατεβάσετε από τον παρακάτω σύνδεσμο
http://www.codeblocks.org/downloads/binaries
Προσοχή!!! Θα κατεβάσετε το    codeblocks-20.03mingw-setup.exe ή το αντίστοιχο 32-bit αν έχετε 32bit επεξεργαστή

Βίντεο στο youtube για την εγκατάσταση του CodeBlocks και την ανάπτυξη του πρώτου μας προγράμματος σε αυτό


Εγχειρίδιο εγκατάστασης στα ελληνικά
[url=http://compus.uom.gr/INF122/document/Diafora/1-CodeBlocks/Codeblocks_Setup.pdf]http://compus.uom.gr/INF122/document/Diafora/1-CodeBlocks/Codeblocks_Setup.pdf


Το επίσημο εγχειρίδιο του CodeBlocks στα αγγλικά είναι αυτό
http://www.codeblocks.org/docs/manual_en.pdf

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

3
Όμιλος Αλγοριθμικής και Υπολογιστικής Σκέψης 2020-2021 / 2ο μάθημα: Ώρα για αποφάσεις
« Τελευταίο μήνυμα από evry στις Νοέμβριος 17, 2018, 10:35:18 μμ »
Σε αυτό το μάθημα θα ασχοληθούμε με τα εξής δυο προβλήματα:

Πρόβλημα 1
Θα σχεδιάσουμε ένα πρόγραμμα το οποίο θα διαβάζει έναν αριθμό και θα εμφανίζει πόσα ψηφία έχει, εκτός αν είναι αρνητικός οπότε θα εμφανίζει το μήνυμα "negative" και θα τερματίζει.
Το πρόγραμμα που δίνεται παρακάτω δουλεύει μόνο για μονοψήφιους αριθμούς. Μπορείτε να το επεκτείνετε έτσι ώστε να ανιχνεύει μέχρι και πενταψήφιους αριθμούς, συμπληρώνοντας τις κατάλληλες εντολές;
Κώδικας: cpp [Επιλογή]

#include <iostream>                         
using namespace std;
int main() {
   int number;     
   cout << "number = ";     
   cin >> number;     
   
   if (number < 0) {                           
       cout << " negative number " << endl;   
   }
   if (number >= 0  &&  number < 10) {                           
       cout << " digits : 1 " << endl;   
   }
   if (number >= 10 ) {                           
       cout << " more than one digits " << endl;   
   }

   cout << "*** END OF PROGRAM ***" << endl;
   return 0;
}

Προσοχή!!! Ο λογικός τελεστής && είναι το λογικό και .

Πρόβλημα 2
Ο Δείκτης Μάζας Σώματος (ΔΜΣ) (Body Mass Index (BMI))δίνεται από τον τύπο
ΔΜΣ = Βάρος / Ύψος2.
, όπου το ύψος δίνεται σε μέτρα και το βάρος σε κιλά
π.χ. αν το βάρος σας είναι 100 κιλά και το ύψος 1.80 τότε ο δείκτης είναι:

ΔΜΣ = 100 / 1.802 = 30.86

Να γράψετε ένα πρόγραμμα το οποίο θα ζητάει από τον χρήστη το βάρος του και το ύψος και θα εμφανίζει κατάλληλο μήνυμα για την κατηγορία στην οποία ανήκει ανάλογα με την τιμή του ΔΜΣ, σύμφωνα με τον παρακάτω πίνακα:

Κατηγορία ΒάρουςΔΜΣ (kg / m2)
Ελλιποβαρής<18,5
Υπέρβαρος≥25
Προ-παχυσαρκία25,0-29,99
Παχυσαρκία≥30
Παχυσαρκία τύπου І30,0–34,99
Παχυσαρκία τύπου ІΙ35,0–39,99
Παχυσαρκία τύπου ІΙΙ>40,0
   

Δίνεται ο παρακάτω σκελετός του προγράμματος, στον οποίο θα πρέπει να συμπληρώσετε τα κενά και να προσθέσετε τις κατάλληλες εντολές έτσι ώστε να εμφανίζει κατάλληλα μηνύματα για όλες τις παραπάνω κατηγορίες του δείκτη

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

#include <iostream>                         
using namespace std;
int main() {
   int weight ;         // το βάρος είναι ακέραιος
   float height, BMI;   // ύψος και ΒΜΙ είναι πραγματικοί

   cout << " ******************************* " << endl;
   cout << " *Body Mass Index Calculator Software*" << endl;
   cout << " *    by <programmer>, version 1.0    *"
   cout << " ******************************* " << endl;

   cout << "weight = ";       cin >> weight;     
   cout << "height = ";       cin >> height;     
   
   BMI = ________  ;

   if (BMI < 18.5) {                           
       cout << " Ellipovaris " << endl;   
   }
 
   cout << "*** END OF PROGRAM ***" << endl;
   return 0;
}


   
4
Όμιλος Αλγοριθμικής και Υπολογιστικής Σκέψης 2020-2021 / 1ο Μάθημα Ομίλου Αλγοριθμικής
« Τελευταίο μήνυμα από evry στις Νοέμβριος 06, 2018, 12:10:51 πμ »
Το περιβάλλον προγραμματισμού στο οποίο θα αναπτύξουμε τις εφαρμογές μας είναι το το ανοικτού κώδικα λογισμικό CodeBlocks το οποίο μπορείτε να κατεβάσετε από τον παρακάτω σύνδεσμο
http://www.codeblocks.org/downloads/26
Προσοχή!!! Θα κατεβάσετε το     codeblocks-1712mingw-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

Σχετικά με τη γλώσσα 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>                         
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;
}





5
Μαθήματα 2017-2018 / Πέτρα - Ψαλίδι - Χαρτί
« Τελευταίο μήνυμα από evry στις Δεκέμβριος 11, 2017, 10:59:57 μμ »
Το πρόγραμμα που κάναμε σήμερα και θα αποτελέσει τη βάση για το παιχνίδι Πέτρα-Ψαλίδι-Χαρτί.

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

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

using namespace std;

int main()
{
    srand(time(NULL));
    cout << " ____________________________" << endl;
    cout << "|                            |" << endl;
    cout << "|    Rock Papers Scissors    |" << endl;
    cout << "|    by Zanneio Gymnasio     |" << endl;
    cout << "|____________________________|" << endl;
    cout << " ****************************" << endl << endl;

    int player, computer, wins, losses;
    wins = losses = 0;
    player = 0;
    while (player != -1) {
        computer = rand()%3;
        cout << "Enter -1 to end game!" << endl;
        cout << "Enter your Choice (0,1,2) : " ;
        cin >> player;
        if (player == computer) {
            cout << " *** You Win ***" << endl;
            wins = wins + 1;
        }
        else if (player == -1) {
            cout << "*** GAME  OVER ***" << endl;
            cout << "***  GOOD BYE  ***" << endl;
        }
        else {
            cout << "I win you lose!" << endl;
            losses = losses + 1;
        }
        cout << "----------------------------" << endl;
        cout << "  PLAYER   -     COMPUTER   " << endl;
        cout << "    " << wins << "      -        " << losses << endl;
        cout << "----------------------------" << endl;
    }
    return 0;
}


Παρακάτω τροποποιούμε το πρόγραμμα έτσι ώστε ο χρήστης να μην δίνει τους αριθμούς 0,1,2 αλλά τα γράμματα P,R,S για Paper, Scissors, Rock.

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

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

using namespace std;

int main()
{
    srand(time(NULL));
    cout << " ____________________________" << endl;
    cout << "|                            |" << endl;
    cout << "|    Rock Papers Scissors    |" << endl;
    cout << "|    by Zanneio Gymnasio     |" << endl;
    cout << "|____________________________|" << endl;
    cout << " ****************************" << endl << endl;

    int index=0, wins, losses;
    char player, computer;
    wins = losses = 0;
    player = 'P';
    while (player=='P' || player=='S' || player=='R') {
        index = rand()%3;
        if (index==0) {
            computer = 'R';
        }
        else if (index==1) {
            computer = 'P';
        }
        else {
            computer = 'S';
        }
        cout << "Enter -1 to end game!" << endl;
        cout << "Enter R for Rock, P for Paper and S for Scissors" << endl ;
        cout << "Enter your Choice (R,P,S) : " ;
        cin >> player;
        if (computer=='S' && player=='R') {
            cout << "Rock beats Scissors: You win!" << endl;
            wins++;
        }
        else if (computer=='R' && player=='S') {
            cout << "Rock beats Scissors: You lose!" << endl;
            losses++;
        }
   // here write your code for all other cases
        else {
            cout << "*** GAME  OVER ***" << endl;
            cout << "***  GOOD BYE  ***" << endl;
        }
        cout << "----------------------------" << endl;
        cout << "  PLAYER   -     COMPUTER   " << endl;
        cout << "    " << wins << "      -        " << losses << endl;
        cout << "----------------------------" << endl;
    }
    return 0;
}

6
Μαθήματα 2017-2018 / Η δύναμη της επανάληψης
« Τελευταίο μήνυμα από evry στις Νοέμβριος 20, 2017, 08:23:23 μμ »
Το παρακάτω πρόγραμμα δημιουργεί ένα αρχείο test.out και το γεμίζει με τα τετράγωνα όλων των αριθμών από το 1 έως και το 1000.

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

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ofstream fout("test.out");

    for (int i=0; i<1000; i++) {
        fout << i*i << endl;
    }
    fout.close();
    return 0;
}


Το παραπάνω αρχείο test.out έχει αποθηκευθεί στον ίδιο φάκελο με το main.cpp που είναι το πρόγραμμά σας.
Για να το ανοίξετε προτείνω τον editor notepad++ που μπορείτε να κατεβάσετε από τον παρακάτω σύνδεσμο:
https://notepad-plus-plus.org/download/v7.2.2.html

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

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream fin("test.out");
    int value;
    for (int i=0; i<1000; i++) {
        fin >> value;
        cout << value << "  ";
    }
    fin.close();
    return 0;
}


Το αρχείο που πριν ήταν έξοδος τώρα γίνεται είσοδος αφού διαβάζουμε από αυτό

Παρακάτω δίνω ένα πρόγραμμα το οποίο διαβάζει από το αρχείο input.in έναν αριθμό Ν ο οποίος είναι το πλήθος των αριθμών που ακολουθούν και υπολογίζει και εμφανίζει τον μεγαλύτερο από αυτούς.

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

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream fin("input.in");
    int value, maximum = -1;
    for (int i=0; i<1000; i++) {
        fin >> value;
        if (value > maximum) {
            maximum = value;
        }
    }
    cout << "maximum = " << maximum << endl;
    fin.close();
    return 0;
}


Στη συνέχεια δίνω ένα πρόγραμμα το οποίο διαβάζει από το αρχείο αριθμούς και στη συνέχεια εμφανίζει πόσα μηδενικά (0), πόσους άσσους (1), πόσα δύο (2) και πόσα τρία (3) εμφανίζονται στο αρχείο.
Το αρχείο που θα φτιάξετε για αυτό το πρόγραμμα θα πρέπει να έχει στην πρώτη γραμμή έναν αριθμό π.χ. 10 ο οποίος είναι το πλήθος των αριθμών που ακολουθούν και στη συνέχεια τους αριθμούς. Για παράδειγμα ένα αρχείο input.in θα μπορούσε να είναι όπως το παρακάτω:

Αρχείο input.in
Κώδικας: [Επιλογή]
20
1 1 1 3 3 1 2 2 1 2 3 1 2 3 5 5 6 7 1 1
To παραπάνω αρχείο περιέχει στην πρώτη γραμμή τον αριθμό 20 ο οποίος μας ενημερώνει ότι ακολουθούν 20 αριθμοί και στη συνέχεια τους 20 αυτούς αριθμούς.

Το παρακάτω πρόγραμμα διαβάσει το αρχείο input.in και εμφανίζει τη συχνότητα των αριθμών 1 , 2 και 3
Κώδικας: cpp [Επιλογή]

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream fin("input.in");
    int value, counter[4] = {0}, N;
    fin >> N;                             // πρώτα διαβάζω το πλήθος των αριθμών
    for (int i=0; i<N; i++) {
        fin >> value;
        if (value == 0) {
            counter[0]++;        // αυξάνω τον μετρητή counter[0] του 0
        }
        if (value == 1) {
            counter[1]++;        // αυξάνω τον μετρητή counter[1] του 1
        }
        if (value == 2) {
            counter[2]++;        // αυξάνω τον μετρητή counter[2] του 2
        }
        if (value == 3) {
            counter[3]++;        // αυξάνω τον μετρητή counter[3] του 3
        }

    }
    cout << "frequency of 0 is " << counter[0] << endl;
    cout << "frequency of 1 is " << counter[1] << endl;
    cout << "frequency of 2 is " << counter[2] << endl;
    cout << "frequency of 3 is " << counter[3] << endl;

    fin.close();
    return 0;
}

Επεξήγηση
Όταν δηλώνουμε τη μεταβλητή counter[4], στην ουσία δηλώνουμε τέσσερις μεταβλητές, counter[0], counter[1], counter[2], counter[3]. Κάθε μια από αυτές τις μεταβλητές μετράει πόσες φορές εμφανίζεται ο αντίστοιχος αριθμός. Για παράδειγμα ο counter[0] υπολογίζει πόσες φορές εμφανίζεται το 0, ο counter[1] το 1 κ.ο.κ.


Άσκηση
Να τροποποιήσετε το παραπάνω πρόγραμμα έτσι ώστε να υπολογίζει και να εμφανίζει πόσες φορές εμφανίζεται στο αρχείο κάθε αριθμός από το 1 έως και το 10.
Στη συνέχεια να εμφανίζει ποιος εμφανίζεται τις περισσότερες φορές.
7
Μαθήματα 2017-2018 / Ώρα για αποφάσεις
« Τελευταίο μήνυμα από evry στις Νοέμβριος 04, 2017, 10:23:47 μμ »
Σε αυτό το μάθημα θα ασχοληθούμε με τα εξής δυο προβλήματα:

Πρόβλημα 1
Θα σχεδιάσουμε ένα πρόγραμμα το οποίο θα διαβάζει έναν αριθμό και θα εμφανίζει πόσα ψηφία έχει, εκτός αν είναι αρνητικός οπότε θα εμφανίζει το μήνυμα "negative" και θα τερματίζει.
Το πρόγραμμα που δίνεται παρακάτω δουλεύει μόνο για μονοψήφιους αριθμούς. Μπορείτε να το επεκτείνετε έτσι ώστε να ανιχνεύει μέχρι και πενταψήφιους αριθμούς, συμπληρώνοντας τις κατάλληλες εντολές;
Κώδικας: cpp [Επιλογή]

#include <iostream>                         
using namespace std;
int main() {
   int number;     
   cout << "number = ";     
   cin >> number;     
   
   if (number < 0) {                           
       cout << " negative number " << endl;   
   }
   if (number >= 0  &&  number < 10) {                           
       cout << " digits : 1 " << endl;   
   }
   if (number >= 10 ) {                           
       cout << " more than one digits " << endl;   
   }

   cout << "*** END OF PROGRAM ***" << endl;
   return 0;
}

Προσοχή!!! Ο λογικός τελεστής && είναι το λογικό και .

Πρόβλημα 2
Ο Δείκτης Μάζας Σώματος (ΔΜΣ) (Body Mass Index (BMI))δίνεται από τον τύπο
ΔΜΣ = Βάρος / Ύψος2.
, όπου το ύψος δίνεται σε μέτρα και το βάρος σε κιλά
π.χ. αν το βάρος σας είναι 100 κιλά και το ύψος 1.80 τότε ο δείκτης είναι:

ΔΜΣ = 100 / 1.802 = 30.86

Να γράψετε ένα πρόγραμμα το οποίο θα ζητάει από τον χρήστη το βάρος του και το ύψος και θα εμφανίζει κατάλληλο μήνυμα για την κατηγορία στην οποία ανήκει ανάλογα με την τιμή του ΔΜΣ, σύμφωνα με τον παρακάτω πίνακα:

Κατηγορία ΒάρουςΔΜΣ (kg / m2)
Ελλιποβαρής<18,5
Υπέρβαρος≥25
Προ-παχυσαρκία25,0-29,99
Παχυσαρκία≥30
Παχυσαρκία τύπου І30,0–34,99
Παχυσαρκία τύπου ІΙ35,0–39,99
Παχυσαρκία τύπου ІΙΙ>40,0
   

Δίνεται ο παρακάτω σκελετός του προγράμματος, στον οποίο θα πρέπει να συμπληρώσετε τα κενά και να προσθέσετε τις κατάλληλες εντολές έτσι ώστε να εμφανίζει κατάλληλα μηνύματα για όλες τις παραπάνω κατηγορίες του δείκτη

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

#include <iostream>                         
using namespace std;
int main() {
   int weight ;         // το βάρος είναι ακέραιος
   float height, BMI;   // ύψος και ΒΜΙ είναι πραγματικοί

   cout << " ******************************* " << endl;
   cout << " *Body Mass Index Calculator Software*" << endl;
   cout << " *    by <programmer>, version 1.0    *"
   cout << " ******************************* " << endl;

   cout << "weight = ";       cin >> weight;     
   cout << "height = ";       cin >> height;     
   
   BMI = ________  ;

   if (BMI < 18.5) {                           
       cout << " Ellipovaris " << endl;   
   }
 
   cout << "*** END OF PROGRAM ***" << endl;
   return 0;
}


   
8
Μαθήματα 2017-2018 / Τα πρώτα μου προγράμματα
« Τελευταίο μήνυμα από evry στις Οκτώβριος 23, 2017, 08:28:20 μμ »
Δοκιμάστε να εκτελέσετε τα παρακάτω προγράμματα που έχω ανεβάσει τον online compiler cpp.sh και να εξηγήσετε την λειτουργία τους.
Αν θέλετε μπορείτε να τα πειράξετε κιόλας να δείτε τι θα γίνει  ;)

Εκτύπωση πραγματικών αριθμών με ακρίβεια δεκαδικών ψηφίων
Μπορείτε στο παραπάνω πρόγραμμα να αλλάξετε την ακρίβεια των δεκαδικών ψηφίων και αντί για 3 να την κάνετε 6 δεκαδικά ψηφία;

Άθροισμα και γινόμενο δυο αριθμών που δίνετε από το πληκτρολόγιο
Μπορείτε να το κάνετε να υπολογίζει το άθροισμα και το γινόμενο τεσσάρων αριθμών;

Η προπαίδεια σε λίγες γραμμές κώδικα ;)
Κώδικας: cpp [Επιλογή]

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int i, j;
       
    for (i=1; i<=10; i++) {
        for (j=1; j<=10; j++) {
            cout << setw(5) << i*j << "  ";
        }
        cout << endl;
    }
}
9
Πληροφορίες για το Πρόγραμμα / Με τι θα ασχοληθούμε σε αυτό το πρόγραμμα?
« Τελευταίο μήνυμα από 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


10
Μαθήματα 2017-2018 / Πρώτη Συνάντηση Ομίλου Αλγοριθμικής 2017-2018
« Τελευταίο μήνυμα από evry στις Οκτώβριος 17, 2017, 01:51:49 μμ »
Η πρώτη συνάντηση του ομίλου θα γίνει φέτος την Τρίτη 24 Οκτωβρίου στις 14:10 στο εργαστήριο πληροφορικής του 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 και να εμφανίζει τη λύση της στην οθόνη.


Σελίδες: [1] 2 3 ... 10