Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с функциями 
V
    Опции темы
Alexandr507
Дата 1.8.2009, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 19.7.2009

Репутация: -1
Всего: -1



Код

#include<iostream>

using namespace std;





class Pryamougolnik 

{
public:

    
    

    Pryamougolnik(int x, int y)
    {
        dlina=x;
        shirina=y;
    }
    
    ~Pryamougolnik(){}

    int vivDlina(){return dlina;}
    void oprDlina(int dl){dlina=dl;}

    int vivShirina(){return shirina;}
    void oprShirina(int sh){shirina=sh;}


    int plosad() {return dlina*shirina;}
    int perimetr() {return (dlina+shirina)*2;}



    void newParametri (int dl, int sh)
    {
        dlina=dl;
        shirina=sh;
    }

    
    
    



private:

int dlina;
int shirina;
};





int vvodMeny();
void vivPlosad(Pryamougolnik);
void vivPerimetr(Pryamougolnik);
void figura(Pryamougolnik);









int main ()  

{

Pryamougolnik Objekt(5,4);



    int vihod=0;

while (vihod==0)


{

    
int key=vvodMeny();
switch (key)

{
case 1:
    figura(Objekt);

break;



case 2:
    vivPlosad(Objekt);
break;

case 3:
    vivPerimetr(Objekt);
break;







case 4:  
    
    
    int x;
    int y;
    cout<<"Vvedite novie znacheniya storon"<<endl;
    cin>>x;
    cin>>y;


    Objekt.newParametri(x,y);


figura(Objekt);

break;











case 5: 
    vihod=1;
    break;

default: 
    cout<<"Error!!!"<<endl;
    vihod=1;
    break;

}
}



return 0;
}





  int vvodMeny()

{
    int key;

cout<<"***MENY***"<<endl;
cout<<"1 - Vivod na ekran"<<endl;
cout<<"2 - Plosad"<<endl;
cout<<"3 - Perimetr"<<endl;
cout<<"4 - Nov Parametri"<<endl<<endl;
cout<<"5 - Vihod"<<endl;


cin>>key;

return key;
}






void figura(Pryamougolnik Objekt)

{    
    int a=Objekt.vivDlina();
    int b=Objekt.vivShirina();

    for(int i=0; i<a; i++)
    {    
    
    for (int j=0; j<b; j++)
    cout<<"x";
    cout<<endl;
}



void vivPlosad(Pryamougolnik Objekt)

{
    cout<<"Plosad ravna "<<Objekt.plosad()<<endl;
}


void vivPerimetr(Pryamougolnik Objekt)

{
    cout<<"Perimetr raven "<<Objekt.perimetr()<<endl;
}



компилятор высветил такие ошибки

C:\Program Files\Microsoft Visual Studio\MyProjects\Class13\Class13.cpp(202) : error C2601: 'vivPlosad' : local function definitions are illegal
C:\Program Files\Microsoft Visual Studio\MyProjects\Class13\Class13.cpp(209) : error C2601: 'vivPerimetr' : local function definitions are illegal
C:\Program Files\Microsoft Visual Studio\MyProjects\Class13\Class13.cpp(212) : fatal error C1004: unexpected end of file found
Error executing cl.exe.


то есть функции vivPlosad и vivPerimetr  определенны как то неверно, и еще компилятор сообщил что неожиданный конец.

долго пытался найти ошибку, пробежался глазами весь код несколько раз, но так и не нашел , подскажите пожалуйста уважаемые программисты
PM MAIL   Вверх
mes
Дата 1.8.2009, 16:50 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



проверьте внимательно присутствие всех закрывающих фигурных скобок.

Добавлено через 1 минуту и 5 секунд
Цитата(Alexandr507 @  1.8.2009,  15:33 Найти цитируемый пост)

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

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



--------------------
PM MAIL WWW   Вверх
Gordon
Дата 1.8.2009, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 9.7.2006

Репутация: 1
Всего: 6



Цитата(mes @  1.8.2009,  17:50 Найти цитируемый пост)
проверьте внимательно присутствие всех закрывающих фигурных скобок.


да...

Код

void figura(Pryamougolnik Objekt)
{    
    int a=Objekt.vivDlina();
    int b=Objekt.vivShirina();

    for(int i=0; i<a; i++)
    {    
    
    for (int j=0; j<b; j++)
    cout<<"x";
    cout<<endl;
}



--------------------

  
     
PM MAIL WWW   Вверх
Alexandr507
Дата 1.8.2009, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 19.7.2009

Репутация: -1
Всего: -1



Так и думал что в какой то мелочи ошибка была. 
От долгого сидения  перед монитором, все сливается, ничего не получается, и чем больше сижу тем больше   не получается

Спасибо более опытные товарищи программисты)
PM MAIL   Вверх
Леопольд
Дата 1.8.2009, 23:55 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(Alexandr507 @  1.8.2009,  17:08 Найти цитируемый пост)
все сливается, ничего не получается


Цитата(mes @  1.8.2009,  16:50 Найти цитируемый пост)
приведите в порядок код, чтоб его легко было читать и все недостающие детали сами всплывут




--------------------
вопросов больше чем ответов
PM MAIL   Вверх
bsa
Дата 2.8.2009, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Alexandr507, код нужно правильно форматировать (ставить отступы, размещать фигурные скобки с новой строки):
Код
void figura(Pryamougolnik Objekt) //зачем передаешь объект по значению? по ссылке быстрей!
{    
    int a=Objekt.vivDlina();
    int b=Objekt.vivShirina();

    for(int i=0; i<a; ++i)
    {    
       for (int j=0; j<b; ++j) //префиксная форма операторов ++ и -- предпочтительней, если не нужна функциональность постфиксной
          cout<<"x";
       cout<<endl;
    }
}

PM   Вверх
Alexandr507
Дата 2.8.2009, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 19.7.2009

Репутация: -1
Всего: -1



Обязательно учту.
PM MAIL   Вверх
bsa
Дата 2.8.2009, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196




M
bsa
Alexandr507, если ответ на вопрос получен, то пометь тему решенной


PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

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


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1052 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.