Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
8 / 8 / 5
Регистрация: 19.11.2012
Сообщений: 438

Ошибка при отображении графика: "List index out of bounds (1)"

11.06.2015, 03:31. Показов 1344. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При попытке отображения графика выбивает "List index out of bounds (1)". Лазил по форуму, пишут, мол, выход за пределы массива. Сам пробовал строить - ниечего не получилось. Помогите кто чем может, пожалуйста. Предполагаемое место ошибки:
C++
1
for(i = 1, i<= n; i++){ x[i-1] = StrToInt(StrinpGrid1 -> Cells[0][i]); y[i-1] = StrToInt(StrinpGrid1 -> Cells[1][i]);}
Массив 2х3, в первом столбце имени переменных "х" и "у", ЭН = 2.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.06.2015, 03:31
Ответы с готовыми решениями:

RadioGroup: ошибка List index of bounds (-1) при снятии галочки
***Дополнение radio_gr_cfg это CheckListBox Вопрос вроде и прост но понять не могу почему так, есть вектор значений, содержащий значения,...

При запросе из 2 таблиц ошибка list index out of bounds 1
Добрый вечер. делаю запрос из двух табли stud и rod. текс программы datamodule2.adoquery2.active:=false; ...

Ошибка при создании неквадратной матрицы: List index (10) out of bounds
Сформируйте двумерный массив K(10,12) из случайных чисел, принадлежа-щих отрезку . Определите в каждом столбце количество простых чисел и...

8
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
11.06.2015, 10:21
Попробуйте для начала вот так:
C++
1
for( i = 1; i<=n; i++ ){x[i-1] = StrToInt(StringGrid1 -> Cells[0][i]);y[i-1] = StrToInt(StringGrid1 -> Cells[1][i]);}
А потом вылаживайте полностью свой код.
1
8 / 8 / 5
Регистрация: 19.11.2012
Сообщений: 438
11.06.2015, 14:11  [ТС]
SatanaXIII, вот код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
float X[100],Y[100];//масиви вузлів
int n=2;//початкове значення кількості вузлів
 
       //функція- інтерполяційний многочлен Лагранжа 
float L(float x,float X[100],float Y[100],int n)
{
    if(n<=100)
    {
        float S=0;
        for(int i=0;i<n;i++)
        {
           float P=1;
           for(int j=0;j<n;j++)
             if(j!=i)
               P=P*(x-X[j])/(X[i]-X[j]);
           S=S+Y[i]*P;
         }
      return S;
    }
}
 
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
     //Вихід
void __fastcall TForm1::N6Click(TObject *Sender)
{
   Form1->Close();        
}
//---------------------------------------------------------------------------
     //при активації форми
void __fastcall TForm1::FormActivate(TObject *Sender)
{
    StringGrid1->Cells[0][0]="  X";
    StringGrid1->Cells[0][1]="  Y";
 
}
//---------------------------------------------------------------------------
        //зміна кількості вузлів
void __fastcall TForm1::UpDown1Click(TObject *Sender, TUDBtnType Button)
{
    StringGrid1->ColCount=UpDown1->Position+1;
    n=UpDown1->Position;
}
//---------------------------------------------------------------------------
          //натиснення клавіші на клавіатурі
void __fastcall TForm1::StringGrid1KeyPress(TObject *Sender, char &Key)
{
  if(Key==13) //клавіша ENTER
  {
     Series1->Clear();
     Series2->Clear();
     for(int i=0;i<n;i++)
        if(StringGrid1->Cells[i][0]!="")
           if(StringGrid1->Cells[i][1]!="")
             {     //заповнюємо масиви вузлів
                X[i]=StrToFloat(StringGrid1->Cells[i+1][0]);
                Y[i]=StrToFloat(StringGrid1->Cells[i+1][1]);
             }
 
     for(int i=0;i<n;i++)
       Series1->AddXY(X[i],Y[i]);//виводимо вузли
 
     float a=StrToFloat(StringGrid1->Cells[1][0]);//ліва границя
     float b=StrToFloat(StringGrid1->Cells[n][0]);//права границя
     float d=(b-a)/200;  //крок виводу графіку
     for(int i=0;i<200;i++)//виводимо інтерполяційний многочлен
        Series2->AddXY(a+d*i,L(a+d*i,X,Y,n));
 
  }
 
}
//---------------------------------------------------------------------------
        //збереження графіку у файл
void __fastcall TForm1::N2Click(TObject *Sender)
{
    if(SavePictureDialog1->Execute())
         Chart1->SaveToBitmapFile(SavePictureDialog1->FileName+".bmp");
}
//---------------------------------------------------------------------------
       //показати довідку
void __fastcall TForm1::N4Click(TObject *Sender)
{
   Form2->ShowModal();        
}
//---------------------------------------------------------------------------
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
11.06.2015, 15:23
Не, тут все ништяк.
1
8 / 8 / 5
Регистрация: 19.11.2012
Сообщений: 438
11.06.2015, 19:23  [ТС]
SatanaXIII, что ему тогда нужно от меня?

Добавлено через 2 минуты
SatanaXIII, вечерком кину проэкт глянете что там не по феншую? А то я уже не знаю, что и делать.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33378 / 21502 / 8236
Регистрация: 22.10.2011
Сообщений: 36,898
Записей в блоге: 11
11.06.2015, 19:26
Цитата Сообщение от qozyrek Посмотреть сообщение
кину проэкт
С этого надо было начинать вообще-то.
1
8 / 8 / 5
Регистрация: 19.11.2012
Сообщений: 438
12.06.2015, 00:48  [ТС]
volvo, яб сбросил, но сижу с кнопочного телефона и не могу с него скидывать.
SatanaXIII, вот проект.
Вложения
Тип файла: rar A-spaces.ru.rar (504.3 Кб, 3 просмотров)
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33378 / 21502 / 8236
Регистрация: 22.10.2011
Сообщений: 36,898
Записей в блоге: 11
12.06.2015, 01:09
Лучший ответ Сообщение было отмечено qozyrek как решение

Решение

qozyrek, ошибка здесь:
C++
1
2
     Chart1->Series[1]->Clear();
     Chart1->Series[2]->Clear();
у тебя серии не созданы, а ты к ним обращаешься... Это первое. Чтобы не было второй ошибки, даже после создания двух серий - говорю сразу: индексация начинается с 0, а не с 1-цы, так что при двух сериях в чарте на второй приведенной выше строке также будет ошибка, меняй индексы...
1
8 / 8 / 5
Регистрация: 19.11.2012
Сообщений: 438
12.06.2015, 01:28  [ТС]
volvo, точно, спасибо большое. Из-за этой мелочи не спал, психовал всю ночь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.06.2015, 01:28
Помогаю со студенческими работами здесь

При запуске программы появляется ошибка: list index out of bounds (0)
но к сожалению файл не читает и выдает такую ошибку, сама программа запускается Вот что выдает в тесте, выбираю какой либо ответ, он...

Ошибка list index out of bounds (0) при открытии данного фрейма
Ошибка list index out of bounds (0) при открытии данного фрейма. Что делать? frame51.Show; windowsmediaplayer1.Visible:=false; ...

Ошибка : Estringlisterror with message list index out of bounds(0) при работе с циклом
Здравствуйте,подскажите пожалуйста в чем может быть проблема... Задали в университете написать программу по методичке,до этого не...

Ошибка: list index out of bounds 0
при создании или открытии Windows приложения и других выдает такую ошибку list index out of bounds 0

Ошибка: list index out of bounds -1
Нужно ввести в StringGrid1 И StringGrid2 вещественные числа , потом присвоить массивам у меня что-то не выходит и выскакивает ошибка list...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru