Форум программистов, компьютерный форум CyberForum.ru

Перевод из 2 в 10 сс компактнее - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Почему в адресе сайта http://qt.nokia.com/products/ присутствует слово nokia? http://www.cyberforum.ru/cpp-beginners/thread419774.html
Почему в адресе сайта http://qt.nokia.com/products/ присутствует слово nokia?
C++ Вывести наибольшее простое число до миллиона Полный текст задания: Вывести на экран самое большое простое число меньше 1000000 Если можно с комментариями. http://www.cyberforum.ru/cpp-beginners/thread419771.html
C++ Написать функцию FRAME, которая выводит на экран рамку
3 задание Даны матрицы: А размером m*k и В размером k*n.Получить матрицуС=A*В. 2 задания Написать функцию FRAME, которая выводит на экран рамку. В качестве параметра функции должны передаваться координаты левого верхнего угла и размер рамки. 1 задание Написать программу, которая вычисляет, сколько раз введенное с клавиатуры число встречается в массиве
C++ Сколько книг достаточно, чтобы выучить c++ (если можно напишите какие)?
Сколько книг достаточно, чтобы выучить c++ (если можно напишите какие)?
C++ классы и обработка исключений http://www.cyberforum.ru/cpp-beginners/thread419754.html
можете пожалуйста привести пример ,как внутри функции класса обрабатывать исключительные ситуации(я не понимаю как должен выглядеть и где должен находится специальный класс в котором будет записана эта самая обработка ситуаций)
C++ После максимального элемента списка L вставить заданный элемент a. 1) После максимального элемента списка L вставить заданный элемент a. 2) Для заданного бинарного дерева поиска проверить условие: • для каждой вершины высота левого поддерева отличается от высоты правого поддерева не более чем на 2 (по абсолютной величине). Помогите пожалуйста. Сегодня к вечеру нужно сделать, иначе незачёт( Добавлено через 1 час 27 минут Апну пожалуй подробнее

Показать сообщение отдельно
romster
 Аватар для romster
5 / 3 / 1
Регистрация: 25.11.2011
Сообщений: 78
28.12.2011, 17:42     Перевод из 2 в 10 сс компактнее
Здравствуйте, вот у меня есть программа, которая переводит из 2 сс в 10 сс, учитывая и дробные числа... Но хочется узнать, можно ли написать прогу компактнее? И объясните, пожалуйста, как эта прога переводит дробную часть
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include<string.h>
 
using namespace std;
 
int main()
{
    string str;
    int i=0;
    float str2,sum,des = 0;
    cout << "Dvoichnoe: " << endl;
    cin >> str;
 
    for (int i=0; i<str.size(); i++)
if (str[i]>'1') {cout<<"error";return 1;}
cout<<"Desyatichnoe "<<endl;
        cin>>str2;
    /*целая часть*/
    while (( i < str.length() && (str[i] == '0' || str[i] == '1' )))
 
    { des *= 2;
    if (str[i++] == '1')
            des += 1;}
    // дробная часть
    if (i < str.length() && str[i++] == '.')
    {  float F = 1;
        while ( i < str.length() && (str[i] == '0' || str[i] == '1' ))
        {F /= 2;
        if ( str[i++] == '1')
                des += F;}}
 
        cout << endl << str << " -> " << des << endl;
        sum=str2*des;
        cout<<str2<<"*"<<des<<"="<<sum;
 
}
Добавлено через 14 минут
Нуждаюсь в помощи

Добавлено через 19 минут
Объясните, кто может построчно, пожалуйста

Добавлено через 42 минуты
Ну кто-нибудь
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru