0 / 0 / 0
Регистрация: 25.03.2020
Сообщений: 25
|
|
1 | |
Индекс находился вне границ массива24.03.2021, 18:55. Показов 429. Ответов 5
Пишу код для заполнения массива. Останавливается выполнение с ошибкой "Индекс находился вне границ массива". Ошибку не вижу (переменные i, n объявлены ранее). Надеюсь на вашу помощь. Заранее благодарю.
Console.Write("\nКоличество уравнений: "); int yrav = Convert.ToInt32(Console.ReadLine()); Console.Write("Количество переменных в системе: "); int per = Convert.ToInt32(Console.ReadLine()); int[,] x = new int[yrav, per]; for(n=0;n<yrav;n++) { Console.WriteLine("Уравнение {0}", n+1); for(i=0;i<per;i++) {n=0 Console.Write("X{0}= ", i+1); x[yrav,per]=Convert.ToInt32(Console.ReadLine()); } } for (; n < yrav; n++) { for (; i < per; i++) { Console.Write(x[yrav, per] + "\v"); } }
0
|
24.03.2021, 18:55 | |
Ответы с готовыми решениями:
5
Индекс находился вне границ массива Индекс находился вне границ массива индекс находился вне границ массива Индекс находился вне границ массива |
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
|
|
24.03.2021, 22:16 | 2 |
в приведенном виде оно даже не скомпилируется
0
|
0 / 0 / 0
Регистрация: 25.03.2020
Сообщений: 25
|
|
25.03.2021, 15:24 [ТС] | 3 |
Вот полный код
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Симплекс_метод { class Program { static void Main(string[] args) { int i = 0, n=0; Console.Write("Количество переменных в функции: "); int perF = Convert.ToInt32(Console.ReadLine()); int[] xf = new int[perF]; Console.Write("Функция:\n"); for (; i < perF; i++) { Console.Write("X{0}= ", i + 1); xf[i] = Convert.ToInt32(Console.ReadLine()); } Console.Write("F = {0}X1", xf[0]); for (i = 1; i < perF; i++) { if (xf[i] > 0) Console.Write("+{0}X{1}", xf[i], i); else if (xf[i] < 0) Console.Write("-{0}X{1}", Math.Abs(xf[i]), i); else i++; } Console.Write("\nКоличество уравнений: "); int yrav = Convert.ToInt32(Console.ReadLine()); Console.Write("Количество переменных в системе: "); int per = Convert.ToInt32(Console.ReadLine()); int[,] x = new int[yrav, per]; for(n=0;n<yrav;n++) { Console.WriteLine("Уравнение {0}", n+1); for(i=0;i<per;i++) { Console.Write("X{0}= ", i+1); x[yrav,per]=Convert.ToInt32(Console.ReadLine()); } } for (; n < yrav; n++) { for (; i < per; i++) { Console.Write(x[yrav, per] + "\v"); } } Console.Read(); } } }
0
|
601 / 485 / 185
Регистрация: 19.04.2016
Сообщений: 1,885
|
||||||||||||||||
25.03.2021, 15:41 | 4 | |||||||||||||||
Если это так, то ошибка тут
Не по теме: Console.Read(); ? Добавлено через 5 минут Тут такая же ошибка
И вообще что это ))
0
|
0 / 0 / 0
Регистрация: 25.03.2020
Сообщений: 25
|
|
25.03.2021, 15:49 [ТС] | 5 |
Ожидание, чтобы не закрывалось окно сразу после выполнения
Добавлено через 2 минуты Мне нужно чтобы вводились несколько коэффициентов уравнений(с предварительной записью "Уравнение 1,2..."), а в системе запись шла в массив
0
|
601 / 485 / 185
Регистрация: 19.04.2016
Сообщений: 1,885
|
|
25.03.2021, 17:54 | 6 |
Ann562002,
Решение есть. 1. Сначала надо понять задачу. 2. Подумать, что надо сделать и что использовать для ее решения 3. Сделать выводы, и разбить задачу на этапы 4. Решить как будет осуществлен каждый из этапов 5. Приступить к поэтапному решению
0
|
25.03.2021, 17:54 | |
25.03.2021, 17:54 | |
Помогаю со студенческими работами здесь
6
Индекс находился вне границ массива Индекс находился вне границ массива Индекс находился вне границ массива Индекс находился вне границ массива Индекс находился вне границ массива Индекс находился вне границ массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |