Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите с кодом программы (http://www.tehnari.ru/f41/t258772/)

Smai 22.03.2018 20:55

Помогите с кодом программы
 
Реализовать на одном из языков программирования (с++ желательно) алгоритм перевода числа из 7 системы счисления в 5 систему счисления 5.
Преподаватель помог написать программу на c++, но где то есть ошибка которую не могу найти
Помогите исправить и объяснить мне что и как)
int main()
{
int a = 615;
int osn_i = 9;
int b[10];
int ch=1;
int s = 0;
int c[10];
int osn_l = 8;
int i = 0;
int j = 0;
int osn_k;
while (ch > 0)
{
ch = a / 10;
b[i] = a - ch * 10;
a = ch;
i = i + 1;
}
for (int j = 0; j < i; j++)
{
s = s + b[j] * pow((double)osn_i, j);
}
ch = osn_k;
i = 0;
while (ch >= osn_k)
{
ch = s / osn_k;
c[i] = s - ch*osn_k;
s = ch;
i = i + i;
}
c[i] = ch;
for (int j = 0; j < i; j++)
cout << c[i];
system("pause");
return 0;
}

Vladimir_S 22.03.2018 22:39

Жаль, на СИ не пишу, поэтому отладить и оттестировать не могу, но вот что вижу:
1. У Вас не те основания систем: вместо 7 и 5 там 9 и 8. Но это пустяки, основания могут быть любыми.
2. А вот это уже существенней. Вместо основания osn_l, которому присвоено значение 8, Вы почему-то начинаете работать с величиной osn_k, которой вообще никакого значения не присвоено.
Как-то так.


Часовой пояс GMT +4, время: 03:56.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.