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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
#1

Что не правильно? - C++

10.04.2009, 13:31. Просмотров 958. Ответов 12
Метки нет (Все метки)

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
#include <iostream>
using namespace std;
class kompas
{
      int gradus;
      float minut;
      char b;
      public:
             void vvod(int gradus,int minut,char b)
             {
                  cout<<"vvedite gradus,minut i naprvlenie!=";
                  cin>>gradus>>minut>>b;
             }
             void display()
             {
                  cout<<"Gradus+Shirita"<<gradus<<'\xF8'<<minut<<b;
             }
};
int main()
{
    kompas s1;
    s1.vvod(175,34,'W');
    s1.display();
    for(;;)
{
    s1.vvod(int gradus,int minut,char b);
    s1.display();
}
    return 0;
}
Вот Ошибочки:
1.expected primary-expression before "int"
2.expected primary-expression before "int"
3.expected primary-expression before "char"
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2009, 13:31     Что не правильно?
Посмотрите здесь:

Что не правильно в коде, что посоветуете дописать - C++
Дано задание (Ввести натуральное число N и последовательность действительных чисел Y1, , …,Yn . Рассчитать сумму Z1...Zn. Где Zi...

что не правильно ? - C++
С новым годом всех!Подскажите пожалуйста ,что в этом коде не правильно написано и что лишнее. #define _USE_MATH_DEFINES ...

что не правильно? - C++
Я написал программу с помощью функций для транспонирования квадратной матрицы, но не пойму, как исправить ошибки. Подскажите, пожалуйста. И...

Что я делаю не правильно? - C++
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;vector&gt; using namespace std; int main() { enum...

Не понимаю что не правильно - C++
Задание : Даны целые числа a1, … ,an, k. Если в последовательности a1, … ,an нет ни одного члена со значением k, то все члены этой...

непонятно что не правильно - C++
#include &lt;conio.h&gt; #include &lt;math.h&gt; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2788 / 1374 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
10.04.2009, 13:47     Что не правильно? #2
Цитата Сообщение от Tiami Посмотреть сообщение
void vvod(int gradus,int minut,char b)
все из-за этого.... аргументы в функции совпадает с именами класса... переименуй..

Добавлено через 1 минуту 40 секунд
C++
1
2
3
4
5
6
void vvod(int g, float m, char z)
{
   gradus = g;
   minut = m;
   b = z;
}
Добавлено через 1 минуту 10 секунд
не надо в функцию-метод передавать параметры и требовать ввода... так нельзя..если передал, то уже тогда присваевай членам класса данные сразу...
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
10.04.2009, 13:47     Что не правильно? #3
Да и этот участок страноват
C++
1
2
3
4
5
for(;;)//вечный цыкл
{
        s1.vvod(int gradus,int minut,char b);//тут ошибка
        s1.display();
}
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
10.04.2009, 14:35  [ТС]     Что не правильно? #4
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
#include <iostream>
using namespace std;
class kompas
{
      int gradus;
      float minut;
      char b;
      public:
             void vvod(int g, float m, char z)
             {
                  gradus = g;
                  minut = m;
                  b = z;
                  cout<<"vvedite gradus,minut i naprvlenie!=";
                  cin>>gradus>>minut>>b;
             
             }
             void display()
             {
                  cout<<"Gradus+Shirita"<<gradus<<'\xF8'<<minut<<b;
             }
};
int main()
{
    kompas s1;
    s1.vvod(175,34,'W');
    s1.display();
    for(;;)
{
    s1.vvod();
    s1.display();
}
    return 0;
}
Переделал вот!
но пишет ошибку в 30 строчке
1. no matching function for call to `kompas::vvod()'
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
10.04.2009, 14:59     Что не правильно? #5
Tiami, ну так ты ей аргументы не передаешь)
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
10.04.2009, 15:18  [ТС]     Что не правильно? #6
Цитата Сообщение от Gravity Посмотреть сообщение
Tiami, ну так ты ей аргументы не передаешь)
Ну а как тогда)
denix
63 / 63 / 2
Регистрация: 11.01.2009
Сообщений: 130
10.04.2009, 15:20     Что не правильно? #7
s1.vvod(55, 5.6, 'x');
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
10.04.2009, 15:20     Что не правильно? #8
Цитата Сообщение от Tiami Посмотреть сообщение
Ну а как тогда)
Так, как в 26 строке))
Rumata
4 / 4 / 0
Регистрация: 10.04.2009
Сообщений: 23
10.04.2009, 16:32     Что не правильно? #9
Глава 6, упражнение 7. Лафоре (ООП в С++).
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
#include "stdafx.h"         //директива предпроцессора
#include <iostream>         //для cin, cout
using namespace std;
char ch = 'a';
class angle {
private:
    int gradus;
    float min;
    char direct;
public:
    angle(int gr, float m, char dir): gradus(gr), min(m), direct(dir)
    {  }
    void getpoint()
    {
        cout << "Vvedite koordinatu v formate (xx/xx.xx X) ";
        cin >> gradus >> ch >> min >> direct;
    }
    void showpoint()const
    {
        cout << "Koordinati tochki: " << gradus << '\xF8' << min << "\' " << direct << endl;
    }
};
//////////////////////////////////////////////////////////////////
int main()
{
    angle napr1 (30, 26.37, 'W');
    napr1.showpoint();
    do {
        napr1.getpoint();
        napr1.showpoint();
        cout << "Povtorie? y/n "; cin >> ch;
    } while (ch != 'n');
return 0;
}
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
10.04.2009, 17:46  [ТС]     Что не правильно? #10
Цитата Сообщение от Rumata Посмотреть сообщение
Глава 6, упражнение 7. Лафоре (ООП в С++).
Почти также

Добавлено через 33 секунды
Ток я сам делалНе люблю ответы эти

Добавлено через 1 минуту 5 секунд
Цитата Сообщение от Rumata Посмотреть сообщение
#include "stdafx.h" //директива предпроцессора
И вот это от чего файл?)
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
10.04.2009, 17:53     Что не правильно? #11
Цитата Сообщение от Tiami Посмотреть сообщение
Ток я сам делалНе люблю ответы эти
вот это правильно.
Цитата Сообщение от Tiami Посмотреть сообщение
#include "stdafx.h" //директива предпроцессора
И вот это от чего файл?)
это студия любит генерировать всякую гадость
Rumata
4 / 4 / 0
Регистрация: 10.04.2009
Сообщений: 23
10.04.2009, 18:28     Что не правильно? #12
Цитата Сообщение от Tiami Посмотреть сообщение
Почти также
Ток я сам делалНе люблю ответы эти
Это правильно. Я тоже сам делал, но сейчас когда из архива вытаскивал, даже сократил немного от первоначального (правда компилить не пробовал, нет под рукой, но должно работать).
Цитата Сообщение от Tiami Посмотреть сообщение
И вот это от чего файл?)
Этот файлик нужен студии, но в принципе, можно без него обойтись.

Добавлено через 12 минут 19 секунд
Цитата Сообщение от Tiami Посмотреть сообщение
C++
1
2
3
4
5
6
public:
void vvod(int gradus,int minut,char b)
{
cout<<"vvedite gradus,minut i naprvlenie!=";
cin>>gradus>>minut>>b;
}
тебе нужен конструктор:
C++
1
kompas(int gr,int min,char napr): gradus(gr), minut(min), b(napr)
для
C++
1
s1.vvod(175,34,'W');
а для ввода метод без аргументов:
C++
1
2
3
4
5
void vvod()
{
cout<<"vvedite gradus,minut i naprvlenie!=";
cin>>gradus>>minut>>b;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2009, 19:24     Что не правильно?
Еще ссылки по теме:

что не правильно в коде? - C++
Здравствуйте, написал код, вроде все правильно, а ответ выдает нули, не подскажете, из-за чего?) И как найти среди всех элементов решения...

что у меня не правильно? =) - C++
if ( (a&lt;0) &amp;&amp; (a%2=0)) { s=++; } ошибка: 19 C:\Dev-Cpp\123321.cpp...

Что здесь не правильно? - C++
#include &lt;iosteam.h&gt; int main(){ float x = 1; cout &lt;&lt; &quot;sizeof (float) :&quot; &lt;&lt; sizeof (float); cout &lt;&lt; &quot;\nsizeof x :&quot; &lt;&lt;...

Что не правильно в функции? - C++
Я плохо прописываю функции и решил поучиться. Для примера решил написать функцию для сортировки одномерного массива по возрастанию. ...


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

Или воспользуйтесь поиском по форуму:
Monte-Cristo
2788 / 1374 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
10.04.2009, 19:24     Что не правильно? #13
Цитата Сообщение от Tiami Посмотреть сообщение
И вот это от чего файл?)
это препроцессорный файл в Visual C++ начиная с 2005 версии и заканчивая 2008...
при переносе на другии компиляторы, он не нужен...

Цитата Сообщение от Tiami Посмотреть сообщение
* * * * * * * * * * * * *void vvod(int g, float m, char z)
* * * * * * * * * * * * *{
* * * * * * * * * gradus = g;
* * * * * * * * * minut = m;
* * * * * * * * * b = z;
* * * * * * * * * * * * * * * * * cout<<"vvedite gradus,minut i naprvlenie!=";
* * * * * * * * * * * * * * * * * cin>>gradus>>minut>>b;
* * * * * * *
* * * * * * *}
у тебя получается что передаются парметры..устанавливаются..а потом снова вводятся с клавиатуры.... зачем??? раздели на два метода..перегрузи их...

Цитата Сообщение от Tiami Посмотреть сообщение
Ну а как тогда)
можешь перегрузить методы... например так:

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
#include <iostream>
using namespace std;
 
class kompas
{
  private:
    int gradus;
    float minut;
    char b;
    
  public:
    void vvod(int g, float m, char z)
    {
      gradus = g;
      minut = m;
      b = z;
    }
    
    void vvod()
    {
      cout<<"vvedite gradus,minut i naprvlenie!=";
      cin>>gradus>>minut>>b;      
    }
    
    void display()
    {
      cout<<"Gradus+Shirita"<<gradus<<'\xF8'<<minut<<b;
    }
};
 
int main()
{
  kompas s1;
  s1.vvod(175,34,'W');
  s1.display();
  for(;;)
  {
    s1.vvod();
    s1.display();
  }
    return 0;
}
Yandex
Объявления
10.04.2009, 19:24     Что не правильно?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru