1. Плохое форматирование. 2. Логика программа ужасна. 3. Переменная типа float не может использоваться как индекс массива (см. переменные i, j, m). Если у Вас этот код компилируется, выкиньте Ваш компилятор, он не соответствует стандарту. 4. По вашей ошибке - возможные варианты: - выражение mass[i]-mass[j] действительно равно нулю. Это возможно когда mass[i] действительно равно mass[j], i не равно j. Частный случай - mass[i] = mass[j] = 0, вероятен при вводе ерунды вместо осмысленной информации при чтении с помощью scanf. - i равно j - Выход за пределы массива/выход за пределы тех элементов массива, которые заполнены с помощью scanf (оставшиеся элементы вплоть до 99-го заполнены нулями, т.к. массив объявлен как глобальный). 5. Для помощи Вам, помимо текста программы и строки возникновения ошибки, необходим также набор вводимых данных, приводящий к ошибке. У меня, например, вариант 2, 1, 2, 3, 4 ошибки не дает. 6. Нет никакой проверки на осмысленность вводимых данных, нет подсказки, что первое число - фактически определяет кол-во наборов координат x, y (что бы они ни значили).
-- Ср окт 14, 2009 10:26:56 --
Вашу программу проще переписать, с нормальной логикой, чем править эту - поверьте, никакого толка от нее, даже исправленной, не будет - она противоречит здравому смыслу написания программ, и я это говорю вовсе не для того, чтобы Вас обидеть.
|