Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2012, 21:02   #1
usflash
Новичок
Джуниор
 
Регистрация: 18.04.2012
Сообщений: 2
По умолчанию Системы счисления

Задано положительное действительное число up в системе счисления с основанием p с фиксированной точкой, и основание q (p, q ≠ 2, 8, 10, 16). Требуется:
1. Перевести число up в систему счисления с основанием q (при проверке работы программы числа up и q задаются преподавателем).
2. Перевести число up в 32-разрядный двоичный код, после чего это число с по-мощью разбиения на тетрады (т.е. на четверки цифр) перевести в шестнадца-теричный код.
3. Представить число up в двоично-десятичном коде.
4. Считая число up отрицательным, представить его в двоичном коде с плаваю-щей точкой, после чего нормализовать это число (2 знаковых разряда – один разряд для знака мантиссы, один - для знака порядка, 7 разрядов - для пред-ставления порядка числа и 23 разряда – для мантиссы).
5. Представить отрицательное число up в прямом, обратном и дополнительном кодах.

Помогите пожалуйста!
В первом пункте, при переводе числа в 10-ичную с.с., результат получается неверный...Что здесь не так?

#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
int main()
{
float p, q, ch, celch=0, drch=0;
float udes=0;
char u[20]={'\0'};
cout<<"Input initial numeric system [2...16]\n";
cin>>p;
cout<<"Input final numeric system [2...16]\n";
cin>>q;
getchar();
cout<<"Input number\n";
gets(u);
for (int i=0; i<20; i++){
if (isalnum(u[i])) celch++;
else if (ispunct(u[i]))
for (i; i<20-celch; i++)
if (isalnum(u[i])) drch++;}
ch=celch+drch;
for (int i=0; i<ch; i++)
if (u[i]!=',' && u[i]!='.'){
udes+=u[i]*pow(p,(celch-1));
celch--;}
cout<<udes;
system("pause");
return 0;
}
usflash вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Системы счисления monogramm Помощь студентам 11 20.04.2011 14:25
Системы Счисления amki6 Помощь студентам 0 11.03.2010 18:32
Системы счисления glupayastudentka Помощь студентам 3 28.06.2009 21:13
Системы счисления vdv08 Паскаль, Turbo Pascal, PascalABC.NET 1 08.05.2008 17:32