פורסם 2011 במאי 2414 שנים אני רוצה ליצור תוכנית שקולטת עשרה מספרים ומסדרת אותם מהקטן לגדול.כתבתי תוכנית אבל אני מקבל שגיאה ואני לא יודע איך לדבג אותה:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace T220{ class Program { static void Main(string[] args) { //define array int[] numbers = new int[5]; int temp = 0; int count = 0; //read numbers into array Console.WriteLine("Enter 10 Numbers: "); for (int i = 0; i < 5; i++) { int num = int.Parse(Console.ReadLine()); numbers[i] = num; } //while (count < 5) //{ for (int i = 0; i < 5; i++) { if (numbers[i] > numbers[i + 1]) { temp = numbers[i]; numbers[i] = numbers[i + 1]; numbers[i + 1] = temp; } } // count++; //} //print all numbers in ascending order for (int i = 0; i < 5; i++) { Console.WriteLine(numbers[i]); } Console.ReadLine(); } }}
פורסם 2011 במאי 2414 שנים 1) יעזור אם תרשום מה השגיאה שאתה מקבל.2) מיון בועות אמור להיראות כמו לולאה בתוך לולאה. הלולאה החיצונית שלך נמצאת בהערה. תוריד את ההערה, ותחשוב איך לשנות אותה ואת הלולאה הפנימית שלך כדי שיתקיים מיון בועות. תתחיל מזה שתבין איך מיון בועות עובד ותבין מה קורה בכל איטרציה של הלולאה החיצונית.
פורסם 2011 במאי 2514 שנים מחבר אוקיי אני יבדוק אבל איך אני מפעיל את האופציה של לראות כמה כל ערך מקבל בכל איטרציה ?
פורסם 2011 במאי 2514 שנים מחבר משום מה יש לי מספר חסר בתוצאה ונכנס במקומו המספר 0, אני לא מצליח למצוא את הבאג.using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace T220{ class Program { static void Main(string[] args) { //define array int[] numbers = new int[200]; int temp = 0; //define how many numbers will follow Console.Write("Enter Numbers Of Numbers For Sorting: "); //array numbers to read int NumberCount = int.Parse(Console.ReadLine()); //read numbers into array for (int i = 0; i < NumberCount; i++) { int num = int.Parse(Console.ReadLine()); numbers[i] = num; } for (int i = 0; i < NumberCount; i++) { if (numbers[i] > numbers[i+1]) { temp = numbers[i]; numbers[i] = numbers[i+1]; numbers[i+1] = temp; } } //print all numbers in ascending order Console.WriteLine("Bubble Sort Results: "); for (int i = 0; i < NumberCount; i++) { Console.WriteLine(numbers[i]); } Console.ReadLine(); } }}
פורסם 2011 במאי 2514 שנים מחבר אני לא מול המחשב עם הקוד ואין לי פה סביבת פיתוח אבל יכול להיות שזה צריך להיות for (int i = 0; i < NumberCount+1; i++) במקום for (int i = 0; i < NumberCount; i++) ?
פורסם 2011 במאי 2514 שנים נניח שיש לך 100 איברים במערך. כלומר, הם נמצאים במקומות 0 עד 99.כל פעם אתה מחליף בין האיבר ה-i לאיבר ה-i+1. כלומר, באיטרציה ה-50 אתה מחליף בין האיבר ה-50 ל-51.במקרה שלך, אתה ממשיך עד i=99 - ובשלב הזה אתה מחליף בין האיבר ה-99 לאיבר ה-100, שהוא לא חלק מהרשימה שלך.(הערה: אם מראש היית בונה את המערך כך שגודלו שווה ל-NumerCount, הטעות הייתה מתבטאת בשגיאה של חריגה מגבולות המערך, והיה קל יותר להבין מה היא)
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.