n );=yx;//виділення дійсної частини числа ( частину після мантиси =% f n , y1); _ DecToBin (y1); ( Двійкове подання дробової частини числа після мантиси: ); (in_arr lt; N) {(% d raquo ;, dr_arr [in_arr]);//висновок двійкового представлення//дійсної частини чісла_arr ++;
}
printf ( n );
//шифрування мантиси
//printf ( Зашифрування ціла частина числа: n ); _ (arr, 1);//Зашифрування ціла частина числа
//запис результату шифрування в файл=fopen (filename1, mode1);//відкриття файлу (i=0; i lt; i_arr; i ++)//цикл для запису цілої частини числа в файл
{(file, % d n raquo ;, Result [i]);//запис цілої частини числа в файл
}
//fprintf (file, n );//переклад рядка (file);//закриття файлу
//шифрування частини наступної за мантисою, тобто дробової частини числа=fopen (filename2, mode1);//відкриття файлу на запісь_ (dr_arr, 2);//Зашифрування дрібна частина числа
//запис результату шифрування у файл (i=0; i lt; 10; i ++)//цикл для запису дробової частини числа в файл
{(file, % d n raquo ;, Result1 [i]);//запис дробової частини числа в файл
} (file);//закриття файлу=fopen (filename3, mode1);// відкриваю файл для запису кількість цифр//цілої частини числа в двійковому поданні (file, % d n raquo ;, i_arr);//запис кількість цифр цілої частини числа в//двійковому поданні (file);//закриття файлу ( запис результату шифрування в файл n ) ;;
//завершення роботи на клієнті
} 2: {
//зчитування інформації на сервері ( зчитування з файлу закодованого числа n );
//зчитування з файлу цілої частини закодованого числа
i=0;=fopen (filename1, mode); (fscanf (file, % d raquo ;, amp; x)!=EOF)
{[i]=x; ++;
} (file);
//зчитування з файлу дробової частини закодованого числа
i=0;=fopen (filename2, mode); (fscanf (file, % d raquo ;, amp; x)!=EOF)
{[i]=x; ++;
} (file);
//зчитування з файлу кількості цифр цілої частини числа в двійковому//поданні=0;=fopen (filename3, mode);// відкриваю файл для зчитування кількості//цифр цілої частини числа в двійковому поданні
while (fscanf (file, % d raquo ;, amp; i_arr)!=EOF)
{++;
} (file); ( перевірка зчитування закодованої цілої частини числа n ); (i=0; i lt; i_arr; i ++)//вивід на екран розкодованої цілої частини числа
{(% d , Result [i]);
} ( n );
printf ( перевірка зчитування закодованої дробової частини числа n ); (i=0; i lt; 10; i ++)//вивід на екран розкодованої цілої частини числа
{(% d , Result1 [i]);
} ( n );
//раскодирование дробової частини числа ( раскодирование дробової частини числа: n ); _ (Result1,2); (i=0; i lt; 10; i ++)//вивід на екран розкодованої дробової частини числа
{(% d , Result1 [i]);
} ( n );
//раскодирование цілої частини ( раскодирование цілої частини числа: n ); _ (Result, 1); (i=0; i lt; i_arr; i ++)//вивід на екран розкодованої цілої частини числа
{(% d , Result [i]);
} ( n );
//Переклад з двійкової СС в десятому СС
printf ( Переклад цілої частини з другого в десятому уявлення% d n , BinToDec (Result, i_arr));
printf ( Переведення частини наступної за мантисою з другого в десятому уявлення% f n , Dr_BinToDec (Result1)); 0;// Успішне завершення
} DecToBin (int n)//переклад з десяткової в двійкову сс мантиси (цілої частини числа)
{(N gt; 0)
{[in_stack]=n% 2; _stack ++; (n/2);
} 0;
} BinToDec (int arr_arr [], int l)//переклад із двійкової в десяткову сс//мантиси (цілої частини числа)
{summ=0, i; (i=l; i gt;=0; i -)
{
summ +=arr_arr [i] * stepen (2, i);
} summ;
}
/* Зняти значення зі стека */
int pop () {(in_stack == 0) {
printf ( Стек порожній, помилка. n );
return (- 1);
} _ stack -; [in_stack]=stack [in_stack];