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

Строки. Проверьте код, пожалуйста. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Изображение физического маятника http://www.cyberforum.ru/cpp-beginners/thread416669.html
здравствуйте, есть исходник на делфи программы по изображению физического маятника, какими способами ее можно реализовать на с++? unit Unit1; interface
C++ Подмена операции сложения на умножение. Си!!! Добрый вечер, господа! Вынужден обратиться снова к вам за помощью. Мне дали одно интересное задание: подменить операцию сложения на умножение. Я сначала написал на С++ через классы и перегрузку операторов, но преподаватель сказал, что нужно что-то похожее реализовать на языке си с подменой адресов. Т.е., как я понял, нужно найти адреса операций и обменять их через указатели. Возможно ли такое... http://www.cyberforum.ru/cpp-beginners/thread416654.html
Нотации массивов и указателей C++
Айвор Хортон в своей книге Beginning Visual C++ 2010 утверждает (стр. 183, 2-й абзац сверху) что нотация указателей работает быстрее нотации массивов. Хочется, чтобы опытные люди подтвердили это или опровергли.
C++ функция символьной строки
Дана символьная строка.Написать программу, которая оставляет в исходной строке латинские буквы. Обработку строки оформить в виде функции, ввод и вывод данных - в основной программе. тут непонятно как оставить все буквы. выделять какие то по отдельности умею но не перечислять же их всех.
C++ задача с матрицей http://www.cyberforum.ru/cpp-beginners/thread416636.html
Задача:даны марица А и массив B. Надо написать программу,которая вычисляет массив С, состаящий из элементов А, расположенных между первым и последним положительным элементами каждого столбца, если сумма элементов, распложенных между первым и последним положительными элементами отсутствуует в массиве В.Ввод данных,вывод результата и вычислений оформить в виде отдельных функций. мой вариант:...
C++ Преобразование в строку Здравствуйте, уважаемые господа. Задача такая: мне необходимо объединить два числа, содержащие только 0 и 1 (по 5 цифр в каждом), в одно, а через некоторое время разбить получившееся число снова на два разных. Начальные числа (те, что содержат только 0 и 1), разумеется, всегда разные — зависит это от условий. Лучше всего для этого способа подошёл бы такой подход: подробнее

Показать сообщение отдельно
Wanderer1
23 / 23 / 4
Регистрация: 26.03.2011
Сообщений: 54
25.12.2011, 01:00     Строки. Проверьте код, пожалуйста.
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
55
56
57
58
59
#include <iostream>
#include <string>
#include <fstream>
#include <set>
 
int main()
{
    setlocale( LC_ALL, ".1251" );
    std::ifstream in( "input.txt" );
    std::ofstream out( "output.txt", std::ios::out );
 
    char c;
    std::cout << "Введите символ: ";
    std::cin >> c;
 
    std::string s;
    unsigned int index = 0;
        
        // Читаем файл до конца по строкам
    while ( std::getline( in, s ) )
    {
                // Если есть нужный символ в строке
        if ( s.find( c ) != std::string::npos )
        {
            std::cout << index + 1 << " строка, позиции: ";
            for ( size_t i = 0; i < s.length(); i++ )
                if ( s[ i ] == c )
                    std::cout << i + 1 << " ";
            std::cout << std::endl;
        }
                // Увеличиваем индекс прочитанных строк
        index++;
    }
    in.close();
    std::set < char > charset;
    in.clear();
    in.open( "input.txt" );
    if(!in){std::cout<<"Error not opened file"<<std::endl;}
    while ( std::getline( in, s ) )
    {
        unsigned int i = 0;
        bool Checker( false );
 
                // Пока не конец строки...
        while ( i < s.length() )
        {   
            // Проверяем, есть ли повторные символы            
                                // Если нет, то добавляем символ к множеству
            if(charset.find( s[ i ] ) == charset.end()){
                out<<s[i];charset.insert( s[ i ] );}
            i++;
        }
        out<<std::endl;     
        charset.clear();
    }        
    in.close();
    out.close();
    return 0;
}
 
Текущее время: 15:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru