Добавить в Избранное


Обучение персонала
(семинары, тренинги) в Киеве,
Одессе, на выезде по направлениям:

- Законодавство України про землю
- Бухгалтерские Семинары Курсы для Бухгалтеров
- Семинары |тренинги| по налогообложению
- Юридические Семинары для Юристов
- Семинары Тренинги для Кадровиков
- Секретарей Офис-менеджеров
- Судебная Практика | Судова Практика
- Семинары для Директора
- Внешнеэкономическая деятельность
- ВЭД-контракты, налогообложение ВЭД, таможенная стоимость
- Земельные отношения |Земельні відносини|
- Деловодство Діловодство
- Архив Архів
- Тендери PROZORRO
- Банкротство (Банкрутство)
- Проверки предприятий
- Строительство |разрешительная документация| стоимость строительства, лицензирование
- Семинары для сметчиков
- Безопасность бизнеса
- Исполнительное производство | Виконавче провадження

тел.
(044) 451-88-12
(050) 312-34-73
(067) 403-45-46
(044) 393-14-66
seminar@desyatka.com.ua
www.desyatka.com.ua



Темы, программы семинаров
(в т.ч. их отдельные фрагменты)
и материалы семинаров
являются объектами авторского
права и охраняются в
соответствии с
законодательством Украины
ЗУ "Об авторском праве
и смежных правах", ст.36 ГКУ

 

© Все права защищены. При
использовании материалов
ссылка на сайт desyatka.com.ua
обязательна


G Analytics

Код программы с комментариями

//ПРОГРАММА ПЕРЕВОДА ДЕСЯТИЧНОГО ЧИСЛА В РАЗНЫЕ СИСТЕМЫ СЧИСЛЕНИЯ

//в программе предусмотрено выведение на экран пятиразрядного числа

//для увеличения количества разрядов нужно соответственно изменить

//размер массивов sample и sample2, а также значение Sumr.

 

#include<iostream>

#include<cmath>

usingnamespacestd;

 

int Dig=1; //Dig - этоисходноедесятичноечисло.

       int M=1;  //M - вспомогательная переменная, используемая в вычислениях.

       int sample[5];   //Эта инструкция резервирует память для 5 элементов типа int.

       int t;

       char sample2[5];  //Эта инструкция резервирует память для 5 элементов типа char.

       char r;

      

int main()

{

       setlocale(LC_ALL, "rus");

int Osis; //Osis - основание системы счисления.

int Sumr=5 ;//Sumr - число разрядов выводимого числа, в нашем случае равное 5-ти.

int Pr;  //Pr - вспомогательная переменная, используемая в вычислениях.

cout<<"\n\n\n\tПРОГРАММА ПЕРЕВОДА ДЕСЯТИЧНОГО ЧИСЛА В РАЗНЫЕ СИСТЕМЫ СЧИСЛЕНИЯ\t";

cout<<"\n\n\nВведите основание системы счисления (СС) от 2 до 35:\t";

cin>>Osis;

       cout<<"\n\n";

 

Pr=Osis;

for(inti=1; i<Sumr; i++)

{

Pr*=Osis;       //Здесь Pr в результате работы цикла принимает нужное значение,

               //равное пятой степени основания системы счисления.Например 2 в 5 степени равно 32.

              //Это значение будет использовано, как начальное для работы в следующем цикле,

             //осуществляющем заполнение разрядов вычисляемого числа.          

       }   

       cout<<"Внимание!  Программа корректно работает с десятичными числами от 0 до "<<Pr;

       cout<<"\n";

       cout<<"так как основание СС в 5-й степени (5-количество разрядов) составляет "<<Pr;

 

       cout<<"\n\n\nВведите десятичное число от 0 до "<<Pr<<":\t";

 

       cin>>Dig;

 

       cout<<"\n\n";

      

        //В результате работы цикла, помещаем в массив intsample [5]  5 значений, соответствующих

       //разрядам вычиляемого числа в заданной системе счисления. Причем заполнение происходит от старшего

      //разряда к младшему.

 

       for(t=0;t<Sumr;++t)

       {

           M=Pr/=Osis; sample[t] = Dig/M; Dig = (Dig - M*sample[t]);

       }

       {

             //На основании таблицы ASCII, заполняем элементами массив типа char sample2

             //в соответствии с элементами полученного ранее массива типа int sample .

             //Цель - вывести на экран буквенные символы вместо чисел.

 

       sample2[0]=sample[0]+48+7*(sample[0]/10)-7*(sample[0]/20)-7*(sample[0]/30);

       sample2[1]=sample[1]+48+7*(sample[1]/10)-7*(sample[1]/20)-7*(sample[1]/30);

       sample2[2]=sample[2]+48+7*(sample[2]/10)-7*(sample[2]/20)-7*(sample[2]/30);

       sample2[3]=sample[3]+48+7*(sample[3]/10)-7*(sample[3]/20)-7*(sample[3]/30);

       sample2[4]=sample[4]+48+7*(sample[4]/10)-7*(sample[4]/20)-7*(sample[4]/30);

       }

       //Отображаем массив sample2, то есть выводим на экран полученное решение.

 

       cout<<"\n\n Ответ:  ";

 

       for(r=0;r<Sumr;++r)

             cout<<sample2 [r] <<' ';

       cout<<"\n\n\n\n\n";

       return 0;

}