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

Перевод числа из 10 с.с. в 8 с.с. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
pntuga
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 14
12.11.2010, 16:08     Перевод числа из 10 с.с. в 8 с.с. #1
не пойму как создать программу по переводу числа из 10 с.с. в 8 с.с. . Дали несколько задач на расчётно-графическую работу,а учитель толком не объясняет,хотя дата сдачи - через неделю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2010, 16:08     Перевод числа из 10 с.с. в 8 с.с.
Посмотрите здесь:

Бинарные числа! Перевод простого числа в бираное и расчет. C++
C++ Перевод числа из 10 в 2 сс
C++ Перевод числа в строку
перевод числа C++
C++ Перевод 10-го числа в 2-ое
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Lerny
 Аватар для Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
12.11.2010, 17:54     Перевод числа из 10 с.с. в 8 с.с. #2
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
#include <string>
#include <algorithm>
#include <iostream>
 
string DecToOct(int x)
{
        string s1="";
        int t=0;
        while (x>=1)
        {
                t=x%8;
                x=(x-t)/8;
                s1+=IntToStr(t).c_str();
        }
        reverse(s1.begin(),s1.end());
        return s1;
}
int main()
{
        int r;
        cin >> r;
        cout << "ToOct: "<<DecToOct(r)<<endl;
        return 0;
}
Добавлено через 14 минут
Если без IntToStr:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
string DecToOct(int x){
        char ch;
        string s1="";
        int t=0;
        while (x>=1)
        {
                t=x%8;
                x=(x-t)/8;
                s1+=itoa(t, &ch, 10);
 
        }
        reverse(s1.begin(),s1.end());
        return s1;
}
pntuga
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 14
18.11.2010, 17:52  [ТС]     Перевод числа из 10 с.с. в 8 с.с. #3
Цитата Сообщение от Lerny Посмотреть сообщение
string DecToOct(int x)
выдает ошибку Declaration syntax error
Lerny
 Аватар для Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
18.11.2010, 18:05     Перевод числа из 10 с.с. в 8 с.с. #4
Цитата Сообщение от pntuga Посмотреть сообщение
выдает ошибку Declaration syntax error
C++
1
2
3
4
#include <string>
#include <algorithm>
#include <iostream>
using namespace std;
pntuga
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 14
18.11.2010, 18:07  [ТС]     Перевод числа из 10 с.с. в 8 с.с. #5
всё равно, теперь и там, где добавил выдает такую же ошибку
Lerny
 Аватар для Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
18.11.2010, 18:12     Перевод числа из 10 с.с. в 8 с.с. #6
Где ж вы там добавляете?
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
#include <conio>
#include <string>
#include <algorithm>
#include <iostream>
using namespace std;
 
string DecToOct(int x){
        char ch;
        string s1="";
        int t=0;
        while (x>=1)
        {
                t=x%8;
                x=(x-t)/8;
                s1+=itoa(t, &ch, 10);
 
        }
        reverse(s1.begin(),s1.end());
        return s1;
}
 
int main(int argc, char* argv[])
{
        int r;
        cin >> r;
        cout << "ToOct: "<<DecToOct(r)<<endl;
        getch();
        return 0;
}
Вот эта выдаёт ошибку в строке "using namespace std;"?
pntuga
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 14
18.11.2010, 18:32  [ТС]     Перевод числа из 10 с.с. в 8 с.с. #7
сделал все,как вы отписали выше, но все равно, ошибка осталось той же.
Цитата Сообщение от Lerny Посмотреть сообщение
string DecToOct(int x)
Lerny
 Аватар для Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
18.11.2010, 18:40     Перевод числа из 10 с.с. в 8 с.с. #8
Ну явно string не видит. Вы в чём пишете? Попробуйте заменить string на std::string
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
18.11.2010, 18:40     Перевод числа из 10 с.с. в 8 с.с. #9
вывод числа в 8 с.ч.
C++
1
2
3
4
5
6
7
8
#include <iostream>
int main(){
   int x;
   cout<<"Enter digit: ";
   cin>>x;
   cout<<"Digit in oct: "<<oct<<x;
   system("pause");
   return 0;
судя по:
Вот эта выдаёт ошибку в строке "using namespace std;"
ваш компилятор не знает, что такое пространство имен, поэтому в моем коде его нет.
Lerny
 Аватар для Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
18.11.2010, 18:45     Перевод числа из 10 с.с. в 8 с.с. #10
Цитата Сообщение от Kastaneda Посмотреть сообщение
cout<<"Digit in oct: "<<oct<<x;
однако...)
Zirgo
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 4
18.11.2010, 18:54     Перевод числа из 10 с.с. в 8 с.с. #11
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
#include<string>
#include<algorithm>
#include <iostream>
 
using namespace std;
 
string DecToOct(int x){
        char ch;
        string s1="";
        int t=0;
        while (x>=1)
        {
                t=x%8;
                x=(x-t)/8;
                s1+=itoa(t, &ch, 10);
 
        }
        reverse(s1.begin(),s1.end());
        return s1;
}
 
int main(int argc, char* argv[])
{
        int r;
        cin >> r;
        cout << "ToOct: "<<DecToOct(r)<<endl;
        return 0;
}
пробуй
pntuga
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 14
18.11.2010, 18:57  [ТС]     Перевод числа из 10 с.с. в 8 с.с. #12
function 'system' should have a prototype
Zirgo
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 4
18.11.2010, 18:58     Перевод числа из 10 с.с. в 8 с.с. #13
в чём вобще пишешь?
попробуй getch();
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
18.11.2010, 19:00     Перевод числа из 10 с.с. в 8 с.с. #14
Цитата Сообщение от pntuga Посмотреть сообщение
function 'system' should have a prototype
Прототип находится в stdlib.h, но его подключать не надо. Компилятор его сам подключит.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2011, 17:48     Перевод числа из 10 с.с. в 8 с.с.
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
dim206
0 / 0 / 0
Регистрация: 16.03.2011
Сообщений: 15
22.03.2011, 17:48     Перевод числа из 10 с.с. в 8 с.с. #15
C++
1
2
3
4
5
6
7
8
9
10
cin>>dec; // Десятичное число
while(dec>1)
             {
                bin+=(dec%8)*pow(10, i);
                dec/=8;
                i++;
             }
        bin+=dec*pow(10, i);
 
       cin<<din; // 8 число
Я вот такое решение находил. Только вот не могу разобраться как 8сс перевести обратно в 10сс. Если кто то знает подскажите.
Yandex
Объявления
22.03.2011, 17:48     Перевод числа из 10 с.с. в 8 с.с.
Ответ Создать тему
Опции темы

Текущее время: 16:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru