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

Найти в заданной стpоке максимальное двоичное число - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не коректная работа http://www.cyberforum.ru/cpp-beginners/thread136295.html
Вот код #include<iostream.h> #include<conio.h> #include<math.h> #include<fstream.h> void main () { int i,y,x={2,-3,5,-1,4}; ofstream out_file("file1.dat"); for (i=0;i<5;i++) out_file.write((char *) & x,sizeof(x));
C++ Окно ошибки Делал на днях проект. Сегодня случайно удалил. Удалось почти все установить кроме нескольких вещей Не выводит должным образом окно ошибки. Если в полях ничего не вводить. Выводит окно. Если ввести только в поле а:0.8 Выводит окно. Если ввести в и в полое b:1.4 Окно не выводит. Выбрасывает с программы, глобальные ошибки. Компилятор беситься. Написал вроде все так как и было. Помогите... http://www.cyberforum.ru/cpp-beginners/thread136294.html
C++ Графическая интерпритация алгоритмов сортировки
Нужно реализовать графическую интерпретацию работы алгоритмов сортировки. Сижу, ломаю голову не зная как к этому подступиться. Опыта по С++ мало, с алгоритмами более менее всё ясно. Побывал сделать вывод в виде графика через элементы формы, к примеру через GroupBox , получается криво, если десяток символов помещается более менее без проблем, то 10000 туда уже никак не загонишь. Подскажите как...
Ошибка при вводе даных в файл C++
Компилируется прога хорошо, но почему то не вводимые слова не записываются в файл не понимаю что я не так сделала? #include "stdafx.h" #include <string.h> #include <locale.h> #include <stdlib.h> #include <math.h> #include <conio.h> #include <stdio.h> #include <iostream> #include <fstream>
C++ Осуществить "вращение" квадрата вокруг его центра http://www.cyberforum.ru/cpp-beginners/thread136269.html
вот есть не сложная задачка для Си: Осуществить "вращение" квадрата вокруг его центра. кто сможет сделать такое,буду очень благодарен =)
C++ Выход за пределы массива Столкнулся со следующей проблемой. Ввожу по формату: N1 a..a N2 b..b N3 c..c Мой код при выполнении выдаёт ошибку. Выход за пределы массива (Access Violation). Не могу понять почему, и расширял кол-во элементов, всё-равно. Вот код: #include <iostream.h> подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
 Аватар для Mr.X
2807 / 1583 / 248
Регистрация: 03.05.2010
Сообщений: 3,688
27.05.2010, 02:38     Найти в заданной стpоке максимальное двоичное число
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//Найти в заданной стpоке максимальное двоичное число и вывести его на экpан 
//в десятичном виде.
#include <string>
#include <algorithm>
#include <iostream>
#include <locale>
#include <iomanip>
 
typedef std::string  T_str;
 
long double  get_max_dvoichn_chislo(const T_str& str)
{
    bool         is_dv_chislo = false;
    long double  cur_num = 0;
    long double  max_num = 0;
    for(T_str::const_iterator str_it = str.begin(); str_it != str.end(); ++str_it)
    {        
        bool is_dv_dig = *str_it == '0' || *str_it == '1';
        //Если двоичная цифра, то:
        if(is_dv_dig)
        {
            if(!is_dv_chislo) is_dv_chislo = true;
            (cur_num *= 2) += (*str_it - '0');
        }
        //если не двоичная цифра, то:
        else if(is_dv_chislo)
        {
            is_dv_chislo = false;
            max_num = std::max(cur_num, max_num);
            cur_num = 0;            
        }//else
    }//for
    return std::max(cur_num, max_num);    
}
 
int main()
{
    std::locale::global(std::locale("rus"));
    T_str  str;
    for(;;)
    {
        std::cout << "Введите строку, содержащую запись двоичных чисел: "
                  << std::endl;        
        std::cin >> str;
        std::cout << "Максимальное двоичное число в строке в десятичном виде: "
                  << std::noshowpoint              
                  << std::setprecision(15)
                  << get_max_dvoichn_chislo(str)
                  << std::endl
                  << std::endl
                  << std::endl;
    }
    return 0;
}
 
Текущее время: 08:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru