Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Простая задачка, но туплю, помогите найти ошибку с new. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Помогите с массивом http://www.cyberforum.ru/cpp-beginners/thread363416.html
Короче, надо написать программу проверки графа на то что он двудольный. Смысл таков...надо пройтись по элементам поочередно относя каждый элемент сначала к одному подмножеству потом к...
C++ templates... Напишите шаблон с нетиповыми параметрами следующих видов: int, указатель на int, указатель на статическую переменную класса типа int, указатель на статическую функцию класса. С 3 и 4 заданиями... http://www.cyberforum.ru/cpp-beginners/thread363414.html
Помогите исправить ошибки в моей программе LU-разложение за Гауссом(Dev-C++) C++
Help me,please!!!!!!! У меня возникли трудности с реализацией этой задачи (Dev-C++):Задана квадратная матрица МА nxn (n – задаёт пользователь). элементы матрицы заполняются случайными...
C++ Моргание экрана (graphics.h)
Привет. Я уже наверное уже всех задолбал со своей "Жизнью" :) Извиняйте, ещё один вопрос, надеюсь, что последний. #ifndef LIFE_H #define LIFE_H class Life { public: Life (); ...
C++ Найти количество чисел. http://www.cyberforum.ru/cpp-beginners/thread363379.html
Добрый день, помогите пожалуйста составить программу: Вводятся числа a и b. Найти количество таких чисел в диапазоне , которые являются точными квадратами. У меня получилось, что-то вроде...
C++ Вычислить сумму нечётных чисел и количество чисел равных 0 в последовательности Дана последовательность чисел, окачивающихся 0. 1. Вычилсить сумму нечётных чисел. 2. Количество чисел равных 0. Используя конструкцию CASE организовать меню для выбора пользователем решаемой... подробнее

Показать сообщение отдельно
a6657203
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 4

Простая задачка, но туплю, помогите найти ошибку с new. - C++

09.10.2011, 12:48. Просмотров 365. Ответов 6
Метки (Все метки)

Написано в C++ Builder 6, для решения конкретного уравнения. Вводить число 0.3. Выдаёт ошибку в строке:
C++
1
float *temp=new float[count+1]; //Тут ошибка
Закаменченный кусок тоже не работает, переписывал для пробы, просто.

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
#include <stdio.h>
#include <math.h>
#pragma argsused
 
float* koef(float delta){
  float *k=new float[3];
  k[0]=1;
  k[1]=3*(2+delta);
  k[2]=(11+12*delta+3*(delta*delta));
  k[3]=(delta*delta*delta+6*delta+11*delta+6);
  return k;
}
bool fsign(float x, float *kf){
  return (pow(x,3)-kf[1]*pow(x,2)+kf[2]*x-kf[3]) > 0;
}
float* analit(float a, float b, float *kf){
  bool prev=fsign(a,kf);
  float *sq=NULL;
  float i=a+0.2;
  int count=0;
  while(i<=b){
    if(prev!=fsign(i,kf)){
      float *temp=new float[count+1]; //Тут ошибка
      int j;
      for(j=0;j<=count;j++)  *(temp+j)=*(sq+j);
      delete[] sq;
      sq=temp;
      count++;
      sq[count]=i;
      *(sq+count+1) = NULL;
      prev=fsign(i,kf);
/*
      float *temp=sq;
      sq=new float[count+1];
      int j;
      for(j=0;j<=count;j++) *(sq+j)=*(temp+j);
      *(sq + j++) = NULL;
      delete temp;
      count++;
      sq[count]=i;
      prev=fsign(i,kf);
*/
    }
    i+=0.2;
  }
  return sq;
}
 
int main(){
  float delt, a, b;
  float *kf=NULL;
  int i;
  puts("Vvedite delta\n");
  scanf("%f", &delt);
 
  kf=koef(delt);
 
  float maxA1=0, maxA2=0; //max pervih i vtorih koef
  for(i=0;i<4;i++){
    if(i<3 && maxA1<kf[i])    maxA1=kf[i];
    if(i!=0 && maxA2<kf[i])    maxA2=kf[i];
  }
 
  //otrezki a<=|z|<=b
  a=fabs(kf[3])/( fabs(maxA1)+fabs(kf[3]) );
  b=1+( fabs(maxA2)/fabs(kf[0]) );
 
  float *sq=analit(-1*a,b,kf);
 
  delete[] kf;
  delete[] sq;
  return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru