TheHacker Δημοσιεύτηκε Φεβρουάριος 17, 2014 #1 Κοινοποίηση Δημοσιεύτηκε Φεβρουάριος 17, 2014 Καλησπερα ,εχω ενα προγραμματακι στο πανεπιστημιο το οποιο θα μ δωσει πολλα μπονους στην εξεταστικη ,και χρειαζομαι μια μικρη βοηθεια απο καποιον. Πρεπει να φτιαξω ενα "Parse" προγραμμα (για οσους δεν καταλαβαν ειναι προγραμμα ελεγχου λαθων). 1.Πως θα ελεγχω αν ο αριθμος που εχει εισαχθει στο προγραμμα (απ το πληκτρολογιο) ειναι ακεραιος 2.αν ειναι συνδιασμος ακεραιων αριθμων χωρισμενων με κομμα 3.αν ειναι κενο συνολο 4.αν ειναι " {} " αυτο ... να σημειωθει πως ειμαστε ακομη στην αρχη και δν εχουμε μαθει ακομη πολυπλοκα πραγματα οπως strings και μπλα μπλα... σκεφτηκα να τ κανω με διαιρεση του αριθμου ωστε να παρω τα ψηφια και να τα ελεγχο 1 by 1.... ευχαριστω παραα πολυ εκ των προτερων.. Link to comment Share on other sites More sharing options...
nucleus Φεβρουάριος 17, 2014 #2 Κοινοποίηση Φεβρουάριος 17, 2014 Console Application υποθέτω1.Int16.TryParse Int16.TryParse Method (System)2.Εδώ πρέπει αρχικά να ελέγξεις αν υπάρχει τουλάχιστον 1 ή περισσότερα κόμματα στο string εισόδου.Μετα split με το κόμμα.Το split θα σου επιστρέψει ένα array απο strings με τους "αριθμούς" ελέγχεις με το 1. αν είναι ακέραιοι.Αν είναι ΟΛΟΙ ακέραιοι αποδεκτη είσοδος έστω και ένας λάθος μη αποδεκτήString.ContainsString.Contains Method (System)String.SplitString.Split Method (Char[]) (System)3.String.IsNullOrEmptyString.IsNullOrEmpty Method (System)4.To 4 με τα παραπάνω είναι βατό και αφήνεται σαν άσκηση στον αναγνώστη. Link to comment Share on other sites More sharing options...
TheHacker Φεβρουάριος 17, 2014 Author #3 Κοινοποίηση Φεβρουάριος 17, 2014 1.int16.tryparse? δν εχω ιδεα το παιζει με αυτο ...xD ας πουμε οτι εχω διαβασει εναν αριθμο απ το πληκτρολογιο...και εχω συνθηκη ωστε να τερματιζει εαν υπαρχει EOF(end of file) γραφω if int16.tryparse? δεν το πιανω :S ..κατι πιο απλο ή μια επεξηγηση ? Link to comment Share on other sites More sharing options...
nucleus Φεβρουάριος 17, 2014 #4 Κοινοποίηση Φεβρουάριος 17, 2014 Tο λινκ το διάβασες? public static bool TryParse( string s, out short result)Parameterss Type: System.String A string containing a number to convert. result Type: System.Int16When this method returns, contains the 16-bit signed integer value equivalent to the number contained in s, if the conversion succeeded, or zero if the conversion failed. The conversion fails if the s parameter is null or String.Empty, is not of the correct format, or represents a number less than MinValue or greater than MaxValue. This parameter is passed uninitialized. Return ValueType: System.Booleantrue if s was converted successfully; otherwise, false. την καλείς με 2 ορίσματα short number; bool result = Int16.TryParse(value, out number); value=είσοδος από το πληκτρολόγιο. To result είναι true αν το value είναι ακέραιος και η τιμή του σε ακέραια μορφή περιέχεται στην μεταβλητή number. Το result είναι false αν το value δεν είναι ακέραιος και η μεταβλητή number τότε είναι ίση με το μηδέν. οπότε ναι ένα απλό if αρκεί .Τρέξε μια και το παραδειγμα που έχει στην σελίδα. Link to comment Share on other sites More sharing options...
Wizard! Φεβρουάριος 17, 2014 #5 Κοινοποίηση Φεβρουάριος 17, 2014 Βασικά μπορείς να ενώσεις τα δύο πρώτα σε ένα.Αν κάνεις Decimal.TryParse. Σε αυτή την περίπτωση, ελέγχει και για δεκαδικά και αν είναι σωστός ο αριθμός θα πάρεις True.Επίσης, εγώ χρησιμοποιώ την εξής σύνταξη:Decimal.Tryparse(input_string, myNumber).Αν το myNumber είναι 0, τότε ο χρήστης έβαλε "0" ή κάτι που δεν είναι αριθμός, το 1ο εύκολα ελέγχεται. Διαφορετικά θα πάρεις μεταβλητή τύπου Decimal με τον δεκαδικό που εισήγαγε ο χρήστης. Link to comment Share on other sites More sharing options...
nucleus Φεβρουάριος 17, 2014 #6 Κοινοποίηση Φεβρουάριος 17, 2014 2.αν ειναι συνδιασμος ακεραιων αριθμων χωρισμενων με κομμαΕγώ αυτό το κατάλαβα σαν 1,34,56,78,... και όχι σαν δεκαδικό Link to comment Share on other sites More sharing options...
TifoziF1 Φεβρουάριος 17, 2014 #7 Κοινοποίηση Φεβρουάριος 17, 2014 Μην ξεχνατε τα locales !!1!eleven Link to comment Share on other sites More sharing options...
Wizard! Φεβρουάριος 17, 2014 #8 Κοινοποίηση Φεβρουάριος 17, 2014 Μην ξεχνατε τα locales !!1!eleven Δεν τα ξεχνάμε, αλλά εδώ σου λέει ότι δεν έχουν κάνει ακόμα strings, κλπ., locales θα ξέρουν; Link to comment Share on other sites More sharing options...
TheHacker Φεβρουάριος 17, 2014 Author #9 Κοινοποίηση Φεβρουάριος 17, 2014 κατι παω να καταλαβω αλλα παλι χανομαι στο tryparse γτ δν το εχω κανει ως "βοηθο"..ειμαστε ακομη αρχαριοι στο πανεπιστημιο ...ασε που νομιζω πως θελει κατι πιο απλο και οχι τετοιες "βοηθειες" απο την βιβλιοθηκη xD Link to comment Share on other sites More sharing options...
TheHacker Φεβρουάριος 17, 2014 Author #10 Κοινοποίηση Φεβρουάριος 17, 2014 Για να το κανω λιγο πιο λιανα πες μ ακριβως τι πρεπει να γραψω σας κωδικα στο dev για παραδειγμα ωστε να διαβαζει απ το πληκτρολογιο 1 αριθμο και αμεσως μετα να ελεγχει αν αυτος ειναι ακεραιος και να τον εκτυπωνει αλλιως να κανει end of file. Link to comment Share on other sites More sharing options...
unseen Φεβρουάριος 17, 2014 #11 Κοινοποίηση Φεβρουάριος 17, 2014 Θα μπορουσες να χρησιμοποιησεις regex για validation αν εχω καταλαβει ακριβως βεβαια τι θες να κανεις.Δες μερικα παραδειγματα εδω: How to: Search Strings Using Regular Expressions (C# Programming Guide) Link to comment Share on other sites More sharing options...
nucleus Φεβρουάριος 17, 2014 #12 Κοινοποίηση Φεβρουάριος 17, 2014 Όλα στο πιάτο using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { System.Console.Out.Write("Input a number:"); var inputToTest = System.Console.In.ReadLine(); short inputAsInteger; if(Int16.TryParse(inputToTest,out inputAsInteger)) System.Console.Out.Write("Valid number input\n"); else System.Console.Out.Write("Not valid number input\n"); } }} Δεν έχει try catch για exceptions.Και είναι Console Application. Clopyright 50 Κιλα κωδικας A.E.B.E και ΣΙΑ 2015 Link to comment Share on other sites More sharing options...
TheHacker Φεβρουάριος 17, 2014 Author #13 Κοινοποίηση Φεβρουάριος 17, 2014 ρε φιλε μου [MENTION=1215]nucleus[/MENTION] δν ειμαι προγραμματιστης ακομη στο 1ο εξαμηνο ειμαι δεν καταλαβαινω απο αυτα π μ στελνεις τπτ xD ...πρεπει να τ γραψω απλα με καποιον τροπο Link to comment Share on other sites More sharing options...
nucleus Φεβρουάριος 17, 2014 #14 Κοινοποίηση Φεβρουάριος 17, 2014 Καταρχήν είναι σίγουρα σε C#?Mήπως είναι C?Θέλεις κάτι να τρέχει ή μήπως θες μια περιγραφή σε ψευτοκώδικα? Link to comment Share on other sites More sharing options...
TifoziF1 Φεβρουάριος 17, 2014 #15 Κοινοποίηση Φεβρουάριος 17, 2014 Για να δώ, αυτό που είναι ελληνικά και όχι C# θα το καταλάβεις; ρε φιλε μου [MENTION=1215]nucleus[/MENTION] δν ειμαι προγραμματιστης ακομη στο 1ο εξαμηνο ειμαι δεν καταλαβαινω απο αυτα π μ στελνεις τπτ xD ...πρεπει να τ γραψω απλα με καποιον τροπο MHN γράφεις με SMS συντμήσεις, γράφε ελληνικά. Σου έχω κάνει εγώ και άλλοι mods τόσες φορές παρατήρηση. Link to comment Share on other sites More sharing options...
TheHacker Φεβρουάριος 17, 2014 Author #16 Κοινοποίηση Φεβρουάριος 17, 2014 ααουυ με συγχωρειτε .... [MENTION=4796]TifoziF1[/MENTION] αλλαξε το ονομα του θεματος σε C Παρακαλω γτ εγραψα c# ...c εννουσα :X ...και συγνωμη για τις συντομογραφιες Link to comment Share on other sites More sharing options...
TifoziF1 Φεβρουάριος 17, 2014 #17 Κοινοποίηση Φεβρουάριος 17, 2014 :warning2: Πας στο 1ο ποστ, πατάς μετά στο κουμπι Επεξεργαστής Κειμένου και αλλάζεις τίτλο. Τόσο απλό. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.