![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 28.09.2012
Сообщений: 12
|
![]()
Снова всем привет!
в моей задаче нужно из числа вычеркнуть первую цифру и приписать в конце. если мы пишем 1234, то должны получить 2341. вот код: #include <stdio.h> #include <iostream> #include <math.h> class zad { public: int a,i,b,c,otv; void rew() {c=a; for (i;a>0; i++) { a=a/10; } b=c/pow(10,i-1); a=c%pow(10,i-1); otv=a*10+b; } }; int main() { zad u1; u1.a=123456; u1.i=0; u1.b=0; u1.c=0; u1.otv=0; u1.rew(); } здесь не работает b=c/pow(10,i-1); почему? и еще вопрос: можно ли не писать эти строки: u1.i=0; u1.b=0; u1.c=0; u1.otv=0; по умолчанию данные переменные не принимают значение 0? спасибо!!! |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 28.09.2012
Сообщений: 12
|
![]()
вот что выдает
t.cpp: In member function 'void zad::rew()': Line 16: error: call of overloaded 'pow(int, int)' is ambiguous compilation terminated due to -Wfatal-errors. |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,370
|
![]()
В С++ математические функции могут быть и float и double а у вас аргументы int, вот компилятор и не знает какую функцию звать. Приведитее аргументы к одному из двух типов.
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 28.09.2012
Сообщений: 12
|
![]()
Waleri,
Я видимо Вас не понял мне эти переменные нужно объявить как float или double? |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,370
|
![]()
Аргументы pow должны быть float или double. Для этого не обязательно объявлять переменные этим типом, можно сделать typecast.
http://en.wikipedia.org/wiki/Type_conversion |
![]() |
![]() |
![]() |
#6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,428
|
![]()
И можно избавиться от pow.
(не знаю, как описывать классы) Код:
Еще вы можете накапливать сразу степень Но все это косметика ![]()
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 05.04.2012
Сообщений: 134
|
![]()
Мой вариант.
Код:
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка pow(x,y); | cas2010 | Помощь студентам | 26 | 12.05.2012 19:51 |
Функция pow | |Dima| | Общие вопросы C/C++ | 16 | 19.07.2011 13:07 |
C. Что-то с math.h. Не работает pow. | CofeIn | Помощь студентам | 7 | 18.02.2011 22:55 |
не работает ф-я pow | Denni$ | Общие вопросы C/C++ | 2 | 09.06.2009 02:44 |
delphi pow? | Happyman | Помощь студентам | 2 | 13.05.2008 19:40 |