помогите откомпиллировать программу

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
@lenk@
Сообщения: 19
Зарегистрирован: 23 май 2010, 16:35

люди добрые !!! срочно нужна ваша помощь, помогите исправить программу, она не компиллируется((((

Код: Выделить всё

/* programm cikly.cpp
Даны вещественные b и c.
найти кол-во точек плоскости с 
целочисленными координатами , 
попадающими в фигуру, ограниченную 
линиями y=x*x+2bx+c и y=b*b+c.
*/

#include <iostream.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <conio.h>
float f1(float b,c,x)
 {
      f1=x*x+2b*x+c;
 } 
float f2(float b,c)
 {
        f2=b*b+c;
   }  
int main()
  {
          int x,y,k;
          float d,x0,y0,x1,y1;
          /*vyvod coobsheniya-podskazki na ekran*/
          cout <<" VVedite b=";
          /*vvod s klavy*/
          cin >> b;
          
          cout <<" VVedite c=";
          /*vvod s klavy*/
          cin >> c;
          /*найдем вершину параболы y:=x^2+2bx+c*/
          x0=-2*b/2;
          k=0;
          y0=x0*x0+2*b*x0+c;/*<---Нижняя граница по y*/

           /*найдем точки пересечения прямой и параболы*/
         d=2*b*2*b+4*1*b*b;        /*дискриминант*/
         x1=(-2*b+sqrt(d))/2;/*<---Верхняя граница по x */
         x2=(-2*b-sqrt(d))/2;/*<---Нижняя граница по x*/
         y1=b*b+c;/*<---Верхняя граница по y прямая y=b^2+c*/
         cout << "b=" <<b <<endl;
         cout << "c=" <<c <<endl;
         for (x=trunc(x2); x<trunc(x1); x++) 
         {
           for (y=trunc(y0); y<trunc(y1)-1; y++)
           { 
            if  (y>f1(b,c,x) )
            {
                k++;
            }
           }
        }   
           cout <<" kolichestvo tochek ravno" <<k;
       return (0);                    
          
          }


Dragon
Сообщения: 99
Зарегистрирован: 01 окт 2009, 11:21
Откуда: Odessa
Контактная информация:

Код: Выделить всё

if  (y>f1(b,c,x)
Скобку 1 забыл
@lenk@
Сообщения: 19
Зарегистрирован: 23 май 2010, 16:35

ахха) вот ток все равно не компилится((((
Dragon
Сообщения: 99
Зарегистрирован: 01 окт 2009, 11:21
Откуда: Odessa
Контактная информация:

Вобщем не знаю, что ты пытаешься сделать, но почитай про функции, возвращающие значения.

Код: Выделить всё

float f1(float b,float c, float x)
 {
      return x*x+2*b*x+c;
}
float f2(float b,float c)
 {
        return b*b+c;
   }
...
cin >> b;
...
cin >> c;
...
x2=(-2*b-sqrt(d))/2;/*<---Нижняя граница по x*/
Необъявленные переменные b, c и x2.

Вобщем просмотрите еще раз свою программу, где какие переменные используются, какие нужно дообъявить, какие могут быть лишними...

Еще компилятор ругается на пробразование double в int:
for (x=trunc(x2); x<trunc(x1); x++)
и
for (y=trunc(y0); y<trunc(y1)-1; y++)
Но опять же, я толком не пойму, что вы тут за вычисления напроизводили :)
@lenk@
Сообщения: 19
Зарегистрирован: 23 май 2010, 16:35

там где for (x=trunc(x2); x<trunc(x1); x++)
{
for (y=trunc(y0); y<trunc(y1)-1; y++)
....
я пытаюсь найти принадлежность точки фигуре trunc в паскале это целая часть от числа, а в си данная функция используется или у нее есть другое название?
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

В С++ функции для транкейшена нету. Возможность сделать транкейшн зашита в самом языке, а не в стандартной библитотеке. Достаточно сделать приведение типа:

Код: Выделить всё

float f = 2.5;
std::cout << f << std::endl; // 2.5 on the screen
int i = (int)f;
std::cout << i << std::endl; // 2 on the screen
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
BulldozerBSG
Сообщения: 270
Зарегистрирован: 09 янв 2010, 04:14
Контактная информация:

А не кто не запрещал использовать С функции, и trunc там присутствует в заголовочном файле math.h
@lenk@
Сообщения: 19
Зарегистрирован: 23 май 2010, 16:35

спасибо всем !!!!)) работает ,родимая!
Ответить