vassilis498
Διακεκριμένο μέλος
απανταω στο τελευταιο μέρος λόγω περιορισμένου χρόνου..
τα υπολοιπα θα τα επεξεργαστώ οταν βρω χρόνο,
χρησιμοποιω fedora , ubuntu και win 7 ,αλλα σε όλα με το code blocks
για να είμαι ειλικρινής ,ΔΕΝ ΕΧΩ ΙΔΕΑ πως να κανω compile στο τερματικό
ΤΕΛΟΣ,μια ερωτηση ακόμα,αν κάποιος έχει η μπορεί να υλοποιήσει τον κωδικα κρυπτογραφησης του καισαρα (η οποιονδηποτε αλλον κώδικα κρυπτπο/απο κρυπτογραφησης ),σε c++ θα ήθελα να τον δω.
Ευχαριστώ
vasillis498 αν εχεις κανα καλό οδηγό για compiling σε linux ,αν μπορείς να τον παραθέσεις θα βοηθήσεις πολύ
καταρχήν για να καταβάσεις αν δεν υπάρχει τον compiler για C++ (g++ ):
sudo apt-get install g++ ( για ubuntu/ θα σου ζητηθεί κωδικός, βάλτον )
su -c 'yum install g++' ( για fedora/ θα σου ζητηθεί κωδικός root που έβαλες κατά την εγκατάσταση, βάλτον )
αλλά προσωπικά θα σου λεγα μείνε στα debianoειδή προς το παρόν ( ubuntu ).
όσον αφορά τα περί compiling εδώ: https://lmgtfy.com/?q=g+++tutorial ( για τον gcc αν όχι παντού στα περισσότερα ισχύουν τα ίδια )
για τα βασικά περί unix και εντολών https://lmgtfy.com/?q=unix+commands ( μη κάτσεις να τις μάθεις όλες αν δε σ εενδιαφέρει οι 5-6 πιο βασικές θα σου χρειαστούν )
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
αυτά νομίζω είναι η θεωρία,που εν μερει την έχω καταλάβει απο τα υποπρογράμματα στο φροντιστήριο...
η απορία μου είναι πως δημιουργείται και χρησιμοποιείται μια βιβλιοθήκη στην πράξη.
πχ
να κανω σε μια βιβλιοθήκη την φυσαλίδα (αν την μάθω να την κανω σε c++) και έπειτα σε άλλο προγραμμα να διαβάζω εναν πίνακα
, να καλω την συναρτηση φυσαλίδα...και να μου εμφανίζει ταξινομημένα τα αποτελέσματα..
ευχαριστώ πάντως..χρήσιμες οι πληροφορίες σου
έχεις σκέψου τον κώδικα της συνάρτησης αυτής μέσα σε ένα bubblesort.cpp και τη δήλωσή της σε ένα bubblesort.h ( που οκ το τελευταίο μια γραμμή θα ναι αλλά τη λογική λέμε ).
στο πηγαίο σου εσύ θα χεις ένα
#include "bubblesort.h"
και αν θες να καλεσεις τη συνάρτηση για ένα πίνακα θα χεις μια γραμμή που θα πηγαίνει πχ κάπως έτσι:
sorted = bubblesort( array, size );
edit: βασικά κάτι πιο αναλυτικό σου έκανε και ο Γιώργος τέλος πάντων.
για αυτό εγώ λέω στον κόσμο αν έχετε διάθεση χώστε κάνα linux... ένας text editor και ένας compiler απλά τα πράγματα.στο Code blocks,ίσως αν μου εξηγούσες θα βοηθούσε περίσσοτερο,γιατί περί compiling, τα αφήνω μόνο του
χαχα
στο Code blocks έχει επιλογή για δημιουργία βιβλίοθηκης...
Τώρα για να μάθεις να χρησιμοποιείς το κάθε IDE και πώς κάνει τι, google is your friend.
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Άλλη ερώτηση.Πως δημιουργούμε βιβλιοθήκες?(ειμαι εντελώς άσχετος,οπότε θα χρειαστώ πολύ καλή επεξήγηση )
και πως τις καλώ?
πχ αν έχω την φυσαλίδα ...πως θα την καλέσω?
Σε μια βιβλιόθηκη ,μπορούμε να έχουμε πανω απο μια συναρτήσεις? Πχ και μιν και μαχ?
Ευχαριστώ
Βιλιοθήκες λέμε ομάδες από αρχεία πηγαία και επικεφαλίδας τα οποία περιέχουν συναρτήσεις, μακροεντολές, δομές ( ή κλάσεις ανάλογα τη γλώσσα ) και τα οποία μπορούν να χρησιμοποιηθούν ως έτοιμα εργαλεία για την ανάπτυξη ενός προγράμματος.
Αν ας πούμε θες να φτιάξεις σε C μια διεπαφή λίστας μπορείς να έχεις ένα ή περισσότερα .c αρχεία που θα περιέχουν τους ορσμούς των συναρτήσεων της λίστας ( εισαγωγή, διαγραφή, αναζήτηση κι άλλες ) και ένα αρχείο επικεφαλίδας που θα έχεις τις δηλώσεις των συναρτήσεων αυτών και τη δομή της λίστας + κάποια defines/typedef
Αν τώρα έχεις φτιάξει πχ κάτι τέτοιο και θες να χρησιμοποιήσεις αυτόν τον τύπο λίστας στο πρόγραμμά σου αυτό που έχεις να κάνεις είναι να μεταγλωτήσεις τα πηγαία αρχεία της λίστας μαζί με τα υπόλοιπα και να κάνεις include εκεί που χρειάζονται τα .h αρχεία.
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Εγω πάντως δεν εχω καταλάβει το εξης....
γιατι όταν γραφεις ετσι τον κωδικα:
το πρόγραμμα εκτελείται σωστα....ενώ αμα το γραψεις έτσι:Code:.... .... scanf("%c",&ch); fflush(stdin); .... ....
δεν τρέχειCode:.... ..... scanf("%c",&ch); fflush(stdin); .... ....
Δεν υπάρχει περίπτωση να ισχύει κάτι τέτοιο η C++ δε κοιτάει newline εκτός αν μιλάμε για οδηγίες του προεπεξεργαστή. Κάτι άλλο έχεις κάνει.
( ή μπορεί να ναι τίποτα του dev συνηθίζει να παίρνει τέτοιες "πρωτοβουλίες" )
επιχειρησα να κανω τον κωδικα της σειριακής αναζήτησης σε C++
είχα πολύ καιρό να ασχοληθώ με C++ . Παρακαλώ,ας τον διορθώσει κάποιον ώστε να τρέχει σωστά ...EυχαριστωωωCode:#include <iostream> using namespace std; int main() { int i ,pin[10],num; bool brethike; cout<<"dwse pinaka"<<endl; for (i=1; i<=10; i++) { cout<<"dwse to "<<i<<"o stoixeio"<<endl; cin>>pin[i]; } i=1; brethike=false; cout<<"give num"; cin>>num; while (i<=10 and brethike ==false) { if (num==pin[i]) { brethike==true; } else { i=i+1; } if (brethike == true) { cout<<"brethike"; return 0; } else cout<<"Den vrethike"; return 0; } }
ξανακοίταξέ το λίγο γενικά κάτι μου λέει πως το φτιαξες και το ανέβασες κατευθείαν τα λάθη που έχει είναι από απροσεξία και θα πρεπε να τα χεις βρει μόνος σου.
Επίσης συνήθισε λίγο τα ονόματα να μη τα γράφεις σε greeklish όχι ότι δε συνηθίζεται γενικά αλλά είναι βλακεία και βγάζει μάτι.
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Δεν κατάλαβα αυτό το σημείο. πχ αν έχω ένα if και μετά θέλω να το κλείσω τότε βάζω system("pause") γιατί το return δεν το πιάνει. Αλλά και στο τέλος του προγράμματος βάζω το pause μετά το return..γιατί διαφορετικά δεν ανοίγει η μαύρη οθόνη.Τελικά πρέπει να το βάζω ενδιάμεσα ή όχι;
Ναι, δε το έθεσα καλά. Return βάζεις πάντα στο τελος. Αν θες τώρα για κάποιο λόγο να υπάρχει η περίπτωση να τερματίζει και πιο πριν επειδή ξέρω γω κάτι δε πήγε καλά ( όπου εκεί επιστρέφεις κάτι /=0 για να περαστεί και στο λειτουργικό ) τότε βάζεις κι άλλο return εκεί που νομίζεις. πχ: ( σε C )
#include<stdio.h>
int main(void)
{
int x;
scanf("%d", &x);
if ( x > 10 )
{
fprintf( stderr, "Something went wrong!\n" );
return -1;
}
return 0;
}
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Θέλει οπωσδήποτε πριν το system("pause") την εντολή return 0; ?
Γιατί μέχρι στιγμής κατάλαβα στα προγράμματά μου πως το return 0; δεν το πιάνει οπότε έπαψα πλέον να το βάζω και πιάνει μόνο το system("pause")...Aλλά στις οδηγίες της χρήσης του προγράμματος δεν είναι τελείως ξεκάθαρο αυτό γι αυτό ρωτάω.
θενκς
Το return είναι πάντα η τελευταία εντολή στη main ( εκτός κι αν για κάποιο λόγο θες να τερματίζει πρόωρα έπειτα από συνθήκη ). Αν όμως πιο πριν έχεις βάλει μια pause τότε θεωρητικα το πρόγραμμά σου δε τερματίζει ποτέ άρα λίγο έχει να κάνει . Άσχετα από αυτό σε ορισμένες περιπτώσεις αν δε βάλεις return στη main απλά αυτό που μπορεί να γίνει είναι να τερματήσει με ένα random signal =/= 0 και να σου γράφει ότι το πρόγραμμά σου δεν τερμάτησε σωστά. Αν μιλάμε για C το καλύτερο είναι πάντα να έχεις ένα return 0, στη C++ αν δεν κάνω λάθος το βάζει by default.
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
#include<cstdio>
#include<cstdlib>
όπως και να χρησιμοποιείς καλύτερα αντί των printf/scanf τα ρεύματα cin και cout:
std::cout << "the square of " << x << "=" << z << std::endl;
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 11 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
για τις ερωτήσεις ουσιαστικά θες μια int να κρατάει αριθμό λανθασμένων και όταν βρει μια λάθος να αυξάνεται. έχεις ένα εμφολιασμένο if που ελέγχει μετά από κάθε λανθασμένη αν ο αριθμός τους συνολικά έχει φτάσει στο 3, κι αν ναι εκτελείς την εντολή αυτή.
Αυτό που σου πα πριν είναι γενικά να ψάχνεις πράγματα με μια δυσκολία στον αλγόριθμο, να σε βάζει να σκεφτείς πώς θα διαχειριστείς για αρχή τις δομές επιλογής/επανάληψεις ( κι αργότερα κλάσεις κλπ αλλά για αυτά δεν ξέρω να σου πω ). Το να παίζεις με εντολές της system μπορεί να φαίνεται εντυπωσιακό αλλά δεν έχει κάποια τραγική δυσκολία σε αυτά που σου λέω.
Προσωπικά θα σου πρότεινα να κοιτάξεις καμιά άσκηση επιπέδου ΑΕΠΠ Γ λυκείου νομίζω ότι είναι οκ όσον αφορά το διαδικαστικό κομμάτι της C++, τώρα για αντικειμενοστράφεια δεν έχω ιδέα θα σου πει κάποιος άλλος.
επίσης μπορείς να κάνεις ένα register και να προσπαθήσεις μερικά προβληματάκια εδώ
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
vassilis498
Διακεκριμένο μέλος
Σημείωση: Το μήνυμα αυτό γράφτηκε 12 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
-
Το forum μας χρησιμοποιεί cookies για να βελτιστοποιήσει την εμπειρία σας.
Συνεχίζοντας την περιήγησή σας, συναινείτε στη χρήση cookies στον περιηγητή σας.