D
d3fToR
У меня такая проблема:
Ниже я вставил код программы, в которой определена функция, которая переводит число из 10-чной Системы счисления(сс) в n-ичную сс, где n<=25.
Если вы запустите программу, то увидите, что число переводится правильно ( только в массиве запись не верна ), но если речь идёт о, допустим 12-ичной, то после 9ти идёт А,В и так далее. Так вот, после подсчёта остатков после деления, он не переводит остаток из числа в символ, допустим если у меня остаток 12, то он не переводит в С. Вместо этого он оставляет пробелы.. Я не понимаю почему, спросил у преподователя, он тоже не смог найти ошибку. Надеюсь на вас. Код компилируется ( у меня MinGW ), синтаксических ошибок нету, поэтому можете скомпилировать и посмотреть, что на том месте где должен быть символ, появляется пробел, а после него, для наглядности я поставил это "-|".
Огромное спасибо, за то что хотябы уделили мне своё внимание.
Ниже я вставил код программы, в которой определена функция, которая переводит число из 10-чной Системы счисления(сс) в n-ичную сс, где n<=25.
Если вы запустите программу, то увидите, что число переводится правильно ( только в массиве запись не верна ), но если речь идёт о, допустим 12-ичной, то после 9ти идёт А,В и так далее. Так вот, после подсчёта остатков после деления, он не переводит остаток из числа в символ, допустим если у меня остаток 12, то он не переводит в С. Вместо этого он оставляет пробелы.. Я не понимаю почему, спросил у преподователя, он тоже не смог найти ошибку. Надеюсь на вас. Код компилируется ( у меня MinGW ), синтаксических ошибок нету, поэтому можете скомпилировать и посмотреть, что на том месте где должен быть символ, появляется пробел, а после него, для наглядности я поставил это "-|".
Огромное спасибо, за то что хотябы уделили мне своё внимание.
C++:
#include "stdio.h"
void perevod4isla(int x, int n)
{
char a[]="0123456789ABCDEFGHIJKLMNO";
int mass[10],i;
puts("Введите число в десятичной системе счисления");
scanf("%i", &x);
puts("Введите систему счисления");
scanf("%i", &n);
if(x<=0)
{
puts("Второе число должно быть положительное!");
scanf("%i", &x);
};
for(i=0;i<=10;i++)
{
mass[i]=x%n;
x/=n;
printf("%i", mass[i]);
};
for(i=0;i<=10;i++)
printf("%c-|", a[mass[i]]);
};
void main()
{
int x,n;
perevod4isla(x,n);
}