פורסם 2011 באוגוסט 714 שנים אני צריך פונקציה אשר בודקת לי במטריצה רק על mat.lentgh (1) אם מספר חוזר פעמיים במטריצה לכל שורה (תוכנת לוטו ואני רוצה לוודא שמספר לא חוזר על עצמו פעמיים)זה מה שאני עשיתי ולא עובד כי זה לולאה שתמיד מניבה שהמספר חוזר על עצמוstatic bool CheckRows(int[,] mat, int row, int j) { bool check = true; for (int x = mat[row, 0]; x < mat.GetLength(1); x++) { if (mat[row, j] ==x) check = false; } return check; }
פורסם 2011 באוגוסט 714 שנים מחבר static bool CheckRows(int[,] mat, int row, int j) { bool check = true; for (int x = mat[row, 0]; x < mat.GetLength(1); x++) { if (mat[row, j] ==x) check = false; } return check; }
פורסם 2011 באוגוסט 714 שנים ברוך הבא לפורום!קרא בבקשה את ההנחיות לפרסום הודעות בפורום וערוך את הכותרת וההודעה בהתאם.אין יותר מדי הגיון בלולאה שעשית - אתה מאתחל את x להיות הערך שיושב במטריצה במקום row,0 ומקדם אותו עד לרוחב המטריצה. חוץ מזה, לא ברור לי איזה תפקיד משחק כאן j, ומה אתה מנסה לבדוק.
פורסם 2011 באוגוסט 714 שנים מחבר אני יכול לצרף את כל התוכנית אני רוצה לבדוק בסך הכל אם מהמספרים שאני קולט מהמשתמש על כל מספר שבאותו רגע מוזן אם יש מספר החוזר על עצמו פעמייםת אם המשתמש ברגע זה הזין מספר שכבר היה להדפיס למשתמש הודעה, זוהי פונקציה שתועתק גם לפונקציה דומה אשר בוחרת מספרים אקראיים ובודקת אם מספר חוזר על עצמו פעמיים אם כן אז היא תגריל מספר חדש ושוב תבדוק אם הוא חוזר פעמיים על מספר שכבר היה
פורסם 2011 באוגוסט 714 שנים באמת יעזור אם תנסה להסביר את עצמך יותר טוב, כי כרגע אי אפשר להבין מילה ממה שאתה כותב. תכתוב משפטים באופן מסודר (עם סימני פיסוק...), תסביר מה התפקידים של row ו-j ומה בדיוק הפונקציה צריכה לעשות.
פורסם 2011 באוגוסט 714 שנים מחבר אני יכול לצרף את כל התוכנית... אני רוצה לבדוק בסך הכל אם מהמספרים שאני קולט מהמשתמש, על כל מספר שבאותו רגע מוזן, אם יש מספר החוזר על עצמו פעמיים. אם המשתמש ברגע זה הזין מספר שכבר היה, להדפיס למשתמש הודעה. זוהי פונקציה שתועתק גם לפונקציה דומה אשר בוחרת מספרים אקראיים ובודקת אם מספר חוזר על עצמו פעמיים, אם כן אז היא תגריל מספר חדש ושוב תבדוק אם הוא חוזר פעמיים על מספר שכבר היה... ROW זה מספר הטורים של הלוטו שהמשתמש רוצה למלא אותו הוא מזין מראש בתחילת התוכנית, J זה המקום של ההזנה בתוך הטור של המטריצה אותה אנחנו בודקים ברגע זה, זאת אומרת ש "mat[row, j]" זה המספר אותו בודקים ברגע זה, אם הוזן כבר מספר זה או לא.
פורסם 2011 באוגוסט 714 שנים מחבר זה הקוד המלא אולי תוכל להיעזר בו הפונקציה מוצבת בתוכו static void InitManualTur(int[,] mat) { Console.WriteLine("Enter number of coles: "); int coles = int.Parse(Console.ReadLine()); mat = new int[coles, 6]; int goodnumber; string str; for (int i = 0; i < mat.GetLength(0); i++) { for (int j = 0; j < mat.GetLength(1); j++) { do { goodnumber = 1; Console.WriteLine("Enter number between 1 to 45: "); str = Console.ReadLine(); for (int m = 0; m < str.Length; m++) { if ((str[m] < '0') || (str[m] > '9')) { Console.WriteLine("this is not a number, please insert a number between 1 to 45:"); goodnumber = 0; break; } } int num=int.Parse(str); if ((num < 1) || (num > 45)) { Console.WriteLine("Wrong number, please insert number between 1 to 45:"); goodnumber = 0; }
פורסם 2011 באוגוסט 714 שנים בקיצור, הבעיה היא עם הלולאה שלך - אם אתה רוצה לעבור על שורה מסוימת במטריצה, אז אתה צריך שהאינדקס שלך ירוץ מ-0 ועד אורך השורה.
פורסם 2011 באוגוסט 714 שנים מחבר הוא רץ לאורך השורה אבל מה זאת אומרת מ0? אני צריך לבדוק לגביי כל מספר שהוזן באותו הרגע אם הוא שווה לכל המספרים לפניו לגביי כל מספר שמוזן
פורסם 2011 באוגוסט 714 שנים אבל הקוד הנוכחי שלך רץ מהערך [mat[row,0. כלומר, אם התא הזה מכיל את הערך 200, אז הלולאה שלך תרוץ החל מ-200 - ואין בזה שום הגיון.תתחיל ממשהו יותר פשוט: נניח שיש לך מערך A, ואתה רוצה לבדוק האם הוא מכיל את המספר 5. איך תעשה את זה?
פורסם 2011 באוגוסט 714 שנים מה זה מריץ את המערך כולו? ומה זה ARR אצלך? כתוב קוד (ועשה טובה, יש תגית לקוד, נצל אותה ) [ code ] [ / code ] without spaces
פורסם 2011 באוגוסט 714 שנים מחבר bool isfive=falseint [] arr=new int[mat.getlenght(1)]; for (int i = 0; i <arr.Length; i++){if(arr[i]==5){ ;isfive=true}}return isfive;
פורסם 2011 באוגוסט 714 שנים סבבה.עכשיו, נניח שבמקום מערך יש לנו מטריצה, ואנחנו רוצים לבדוק אם השורה השביעית שלה מכילה את המספר 5. אז מה תכתוב?
פורסם 2011 באוגוסט 714 שנים מחבר bool isfive=false[row,coles]int [,] mat=new int[)]; for (int i = 0; i <mat.Length(0); i++){)if(mat[6,coles]==5)}{ ;isfive=true}}return isfive;
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.