limpi Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 η αληθεια ειναι οτι θα ηθελα πολυ τη λυση παιδια και σας το υποσχομαι ομως οτι θα τα διαβασω!!!!!!!!!!
Anubis13 Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 http://msdn.microsoft.com/en-us/library/06tc147t%28v=vs.71%29.aspx
limpi Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 η απορια μου ειναι η εξης:παραδειγμα στο πρωτο υποερωτημα που λεει αν πατησει 1 θα υπολογιζει το s*1*7*5*...n αυτο πρεπει να αναπτυξω μεσα στη case 1????
Anubis13 Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 Σε καθε case πρεπει να εχεις αυτο που πρεπει να κανει αν πατησει τον ταδε αριθμο. Για αυτο σου εβαλα το case structure με παραδειγμα να το δεις και να το κανεις.
limpi Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 >using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace project1 { class Program { const int ARXH = 1, VHMA = 2; static void Main(string[] args); void harshad() { int j=0; int i=0; int Number; double apotelesma = 0.0; bool Flag = false; char pr, answer = 'K'; int N; int mkd, x, y, arithmos = 0; float megistoskoinosdiaireths; mkd = 0; x = 0; y = 0; Console.WriteLine("Dwse to username"); string toUsernameMou = Console.ReadLine(); Console.WriteLine("Dwse to password"); string toPasswordMou = Console.ReadLine(); Console.WriteLine("Username : " + toUsernameMou + ",password : " + toPasswordMou); Console.WriteLine("Username :{0},password :{1}", toUsernameMou, toPasswordMou); Console.ReadKey(); Console.WriteLine("Poses prospa8eies yparxoun:"); Console.Write("Oi prospa8eies einai treis:"); pr = (char)Console.Read(); if (pr == answer) Console.WriteLine("**Right**"); else Console.WriteLine("...Sorry,you are wrong."); Console.ReadKey(true); switch (args) { case 1: do { Console.WriteLine("Dwse to N:"); N = Int32.Parse(Console.ReadLine()); } while (N < 1 || N % 2 == 0); int S = 0, i = ARXH; do { S += i; i += VHMA; } while (i <= N); Console.WriteLine("S=" + S); Console.ReadKey(); break; case 2: while (arithmos != -1) { Console.WriteLine("Dwse ton {0} aritmo:", x + 1); arithmos = Int32.Parse(Console.ReadLine()); if (arithmos >= 0 && arithmos <= 10) { mkd = mkd + arithmos; x = x + 1; y = y + 1; } } megistoskoinosdiaireths = (float)mkd / x + y; Console.WriteLine("\n O prwtos akeraios {0}, o defteros akeraios {1}", args[0], args[1], megistoskoinosdiaireths); Console.ReadKey(); break; case 3: for (i=100;j<=999;j++) { int sum=0; Number=j; for (i=0;i<3;i++) { sum+=number%10; Number=Number/10;} if (j%sum==0) { Console.WriteLine(string.Format("Ο {0} einai arithmos harshad.",j)); } else { Console.WriteLine(string.Format("o {0} den einai arithmos harshad\n",j)); case 0: Console.WriteLine("Bye."); break; default: Console.WriteLine("Invalid selection. Please select 1, 2,3 or 0."); break; } } if (Number != 0) Console.WriteLine("Please insert {0} .", Number); Console.WriteLine("Thank you for your business."); } } } }[quote][/quote] αυτο ειναι το προγραμμα που εφτιαξα και βγαζει 9 συντακτκα λαθοι (ετσι λεει τουλαχιστον) μπορειται να ριξετε μια ματια?
Anubis13 Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 Λοιπον βλεπω μια προσπαθεια οποτε ξεκιναω Χρησιμοποιω το ideone γιατι βαριεμαι να ανοιξω το visual studio και λεει 3. Πρωτο λαθος: prog.cs(48,32): error CS0136: A local variable named `i' cannot be declared in this scope because it would give a different meaning to `i', which is already used in a `parent' scope to denote something else prog.cs(15,17): (Location of the symbol related to previous error) int S = 0, i = ARXH; Δεν μπορεις να ξαναορισεις ως integer τον i γιατι τον εχεις ξαναορισει στην γραμμη 15 δηλαδη εδω int i=0; Απο το case 3 και μετα τα brackets σου και τα if - else εχουν καταστρεψει τον κοσμο. Στο case 3 δεν κλεινεις τα for. Επισης διαβασε αυτο https://wiki.cse.unsw.edu.au/info/CoreCourses/StyleGuide Διορθωσε αυτα και συνεχιζουμε
limpi Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 >using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace project1 { class Program { const int ARXH = 1, VHMA = 2; static void Main(string[] args); void harshad() { int j=0; int i=0; int Number; double apotelesma = 0.0; bool Flag = false; char pr, answer = 'K'; int N; int mkd, x, y, arithmos = 0; float megistoskoinosdiaireths; mkd = 0; x = 0; y = 0; Console.WriteLine("Dwse to username"); string toUsernameMou = Console.ReadLine(); Console.WriteLine("Dwse to password"); string toPasswordMou = Console.ReadLine(); Console.WriteLine("Username : " + toUsernameMou + ",password : " + toPasswordMou); Console.WriteLine("Username :{0},password :{1}", toUsernameMou, toPasswordMou); Console.ReadKey(); Console.WriteLine("Poses prospa8eies yparxoun:"); Console.Write("Oi prospa8eies einai treis:"); pr = (char)Console.Read(); if (pr == answer) Console.WriteLine("**Right**"); else Console.WriteLine("...Sorry,you are wrong."); Console.ReadKey(true); switch (args) { case 1: do { Console.WriteLine("Dwse to N:"); N = Int32.Parse(Console.ReadLine()); } while (N < 1 || N % 2 == 0); int S = 0; do { S += i; i += VHMA; } while (i <= N); Console.WriteLine("S=" + S); Console.ReadKey(); break; case 2: while (arithmos != -1) { Console.WriteLine("Dwse ton {0} aritmo:", x + 1); arithmos = Int32.Parse(Console.ReadLine()); if (arithmos >= 0 && arithmos <= 10) { mkd = mkd + arithmos; x = x + 1; y = y + 1; } } megistoskoinosdiaireths = (float)mkd / x + y; Console.WriteLine("\n O prwtos akeraios {0}, o defteros akeraios {1}", args[0], args[1], megistoskoinosdiaireths); Console.ReadKey(); break; case 0: Console.WriteLine("Bye."); break; default: Console.WriteLine("Invalid selection. Please select 1, 2,3 or 0."); break; } if (Number != 0) Console.WriteLine("Please insert {0} .", Number); Console.WriteLine("Thank you for your business."); } } } } [code] [/code] εβγαλα εντελως την case 3 γιατι μπερδεψα τα μπουτι μου.εσβησα το i και εβγαλε 2 λαθοι... ειχα ξεχασει να σβησω μια αγκυλη.τωρα λεει the name args does not exist...ενας θεος ξερει τι εχω κανει η κακομοιρη
Star_Light Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 Kακόμοιρη ενα συνήθειο να βάζεις περιττά tags το χεις πάντως . ΟΙ αγκύλες πρέπει να ειναι άρτιος αριθμος γιατι πανε ζευγαράκια!
Anubis13 Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 Το βλεπω αλλα ετσι οπως παει περα απο εσενα θα μαθω και εγω C# σημερα. >using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace project1 { class Program { const int ARXH = 1, VHMA = 2; static void Main(string[] args) { int j=0; int i=0; int Number; double apotelesma = 0.0; bool Flag = false; char pr, answer = 'K'; int N; int mkd, x, y, arithmos = 0; float megistoskoinosdiaireths; mkd = 0; x = 0; y = 0; Console.WriteLine("Dwse to username"); string toUsernameMou = Console.ReadLine(); Console.WriteLine("Dwse to password"); string toPasswordMou = Console.ReadLine(); Console.WriteLine("Username : " + toUsernameMou + ",password : " + toPasswordMou); Console.WriteLine("Username :{0},password :{1}", toUsernameMou, toPasswordMou); Console.ReadKey(); Console.WriteLine("Poses prospa8eies yparxoun:"); Console.Write("Oi prospa8eies einai treis:"); pr = (char)Console.Read(); if (pr == answer) Console.WriteLine("**Right**"); else Console.WriteLine("...Sorry,you are wrong."); Console.ReadKey(true); switch (args) { case 1: do { Console.WriteLine("Dwse to N:"); N = Int32.Parse(Console.ReadLine()); } while (N < 1 || N % 2 == 0); int S = 0; do { S += i; i += VHMA; } while (i <= N); Console.WriteLine("S=" + S); Console.ReadKey(); break; case 2: while (arithmos != -1) { Console.WriteLine("Dwse ton {0} aritmo:", x + 1); arithmos = Int32.Parse(Console.ReadLine()); if (arithmos >= 0 && arithmos <= 10) { mkd = mkd + arithmos; x = x + 1; y = y + 1; } } megistoskoinosdiaireths = (float)mkd / x + y; Console.WriteLine("\n O prwtos akeraios {0}, o defteros akeraios {1}", args[0], args[1], megistoskoinosdiaireths); Console.ReadKey(); break; // case 3: // βαλε εδω οτι εχει το case 3 // break; case 0: Console.WriteLine("Bye."); break; default: Console.WriteLine("Invalid selection. Please select 1, 2,3 or 0."); break; } if (Number != 0) { Console.WriteLine("Please insert {0} .", Number); Console.WriteLine("Thank you for your business."); } } } } Κατα πρωτον βαλε το menu. Διοτι το if (Number != 0) oπως λεει και ο compiler prog.cs(80,17): error CS0165: Use of unassigned local variable `Number' δεν υπαρχει πουθενα. Αρα φτιαχνεις το menu διαβαζεις ενα integer και αυτον τον περνας στα cases και στο if. EDIT 2: Βαλε το login. Τσεκαρε αν το login ειναι ιδιο με αυτο που θες σαν username η password με ενα if και αν ισχυει τοτε τυπωσε στην οθονη το menu και παρε τις επιλογες. Ελα λοιπον εχεις μπλεξει τα μπουτια σου και τα δικα μας μαζι. Δεν κατανοεις, αυτο ειναι το κακο. http://ideone.com/aWIyX >using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace project1 { class Program { const int ARXH = 1, VHMA = 2; static void Main(string[] args) { int j=0; int i=0; int Number; double apotelesma = 0.0; bool Flag = false; char pr, answer = 'K'; int N; int mkd, x, y, arithmos = 0; float megistoskoinosdiaireths; mkd = 0; x = 0; y = 0; Console.WriteLine("Dwse to username"); string username = Console.ReadLine(); Console.WriteLine("Dwse to password"); string password = Console.ReadLine(); //Console.WriteLine("Username : " + toUsernameMou + ",password : " + toPasswordMou); //Console.WriteLine("Username :{0},password :{1}", toUsernameMou, toPasswordMou); //Console.ReadKey(); //Console.WriteLine("Poses prospa8eies yparxoun:"); //Console.Write("Oi prospa8eies einai treis:"); // pr = (char)Console.Read(); //if (pr == answer) // Console.WriteLine("**Right**"); //else // Console.WriteLine("...Sorry,you are wrong."); //Console.ReadKey(true); if (username == "admin" && password == "admin") { Console.WriteLine("You are now logged!!!\n"); Console.WriteLine("1-Ypologismos Ginomenou"); Console.WriteLine("2-Megistos Koinos Diaireths"); Console.WriteLine("3-3psifioi Arthmoi Harshad"); Console.WriteLine("0-Exit\n"); Console.Write("Epiloges (1,2,3,or 0):"); string menu; menu = Console.ReadLine(); int number = int.Parse(menu); switch (number) { case 1: do { Console.WriteLine("Dwse to N:"); N = Int32.Parse(Console.ReadLine()); } while (N < 1 || N % 2 == 0); int S = 0; do { S += i; i += VHMA; } while (i <= N); Console.WriteLine("S=" + S); Console.ReadKey(); break; case 2: while (arithmos != -1) { Console.WriteLine("Dwse ton {0} aritmo:", x + 1); arithmos = Int32.Parse(Console.ReadLine()); if (arithmos >= 0 && arithmos <= 10) { mkd = mkd + arithmos; x = x + 1; y = y + 1; } } megistoskoinosdiaireths = (float)mkd / x + y; Console.WriteLine("\n O prwtos akeraios {0}, o defteros akeraios {1}", args[0], args[1], megistoskoinosdiaireths); Console.ReadKey(); break; case 0: Console.WriteLine("Bye."); break; default: Console.WriteLine("Invalid selection. Please select 1, 2,3 or 0."); break; } } else { Console.WriteLine("Invalid Username Or Password !!!"); Console.ReadLine(); } } } } Αυτο τρεχει οπως βλεπεις. Σβηνεις τα σχολια δεν χρειαζονται ειναι περιττος κωδικας. Βαζεις το case και μετα το ξανασυζηταμε αν εχεις θεμα. Αντε να τελειωσουμε και εμεις τις εργασιες μας.
Star_Light Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 @Anubis13 Ωραίος! @limpi αν θες και σχολια στον κωδικα σου πες το. ή εξηγηση σε κανα σημειο (πχ αν σας ζητησε ο καθηγητης και παρουσιαση)
limpi Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 χαχαχαχαχαχα οκ παιδια θα το βρω που θα μου παει...ευχαριστω για την βοηθεα παντως :wub:
Star_Light Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 χαχαχαχαχαχα οκ παιδια θα το βρω που θα μου παει...ευχαριστω για την βοηθεα παντως :wub: Το θεό Good luck.
Anubis13 Δημοσ. 21 Απριλίου 2012 Δημοσ. 21 Απριλίου 2012 megistoskoinosdiaireths = (float)mkd / x + y; φανταζομαι οτι θα πρεπει να ειναι ετσι megistoskoinosdiaireths = (float)mkd /( x + y);
limpi Δημοσ. 24 Απριλίου 2012 Δημοσ. 24 Απριλίου 2012 αν ο χρησητης πατηση 2 πρεπει να εμφανιζει το μεγιστο κοινο διαιρετη με την προυποθεση οτι και οι 2 ειναι θετικοι.η ερωτηση μου ειναι :τι βαζω στη while συνθηκη¨?? >case 2: while (arithmos != -1) { Console.WriteLine("Dwse ton {0} aritmo:", x + 1); arithmos = Int32.Parse(Console.ReadLine()); if (arithmos >= 0 && arithmos <= 10) { mkd = mkd + arithmos; x = x + 1; y = y + 1; } } megistoskoinosdiaireths = (float)mkd / x + y; Console.WriteLine("\n O prwtos akeraios {0}, o defteros akeraios {1}", args[0], args[1], megistoskoinosdiaireths); Console.ReadKey(); break;
Star_Light Δημοσ. 25 Απριλίου 2012 Δημοσ. 25 Απριλίου 2012 Aν θέλω να ελένξω απο κάποιο ν πχ μέχρι και το 10 ποίοι είναι οι άρτιοι αριθμοί για παράδειγμα... θα γράψω κώδικα της μορφής : > while( number <= 10 ) { if ( εδω μπαίνει ο έλεγχος των αριθμών ) { // εδω μπαινει η ενέργεια αν ειναι τελικά άρτιοι // } else { // εδω μπαινει η ενέργεια αν τελικα ΔΕΝ ειναι άρτιοι // (προαιρετικό) } αύξηση του number ; (Για να έχει νοημα η συνθήκη ελέγχου μεσα στο while και να μην καταλήξεις σε ατέρμονα βρόχο ) } Εσυ τι θέλεις ακριβώς να ελένξεις ? Αναλογα με αυτο που θέλεις να ελένξεις θα διαμορφώσεις και την συνθήκη ελέγχου μεσα στο while. Οπως βλέπεις οι παρενθέσεις πάνε ζευγαράκια. Αν θυμαμαι καλα ηταν ένα απο τα αρχικα σου προβλήματα αυτο. Γενικα ειναι κοινο προβλημα οταν μπλέκονται πολλες προτάσεις for , while κτλπ να υπάρχει ένα θεμα με τις αγκύλες που οδηγεί σε συντακτικό λάθος και κτυπάει ο compiler.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα