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

vector, list, deque - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ поиска по строке Кнута-Морриса-Пратта http://www.cyberforum.ru/cpp-beginners/thread654429.html
но при компилировании выдает ошибку #include <iostream> #include <string.h> #include <time.h> #include <stdlib.h> using namespace std; int algorithm_KMP (char s, char q)
C++ доработать вот программа #include <stdio.h> #include <math.h> #include <iostream> typedef double (*Pfun)(const double, const double ); double cosh (const double x , const double eps); double a; int n,d; void printtabl (Pfun, const double Xn, const double Xk, const double dX, const double eps); int main(){ double Xn, Xk, dX, eps; http://www.cyberforum.ru/cpp-beginners/thread654426.html
C++ Присвоить целой переменной day целое значение 1,2, …, 6 или 7
Пусть n - целое число от 1 до 365. Присвоить целой переменной day целое значение 1,2, …, 6 или 7 в зависимости от того, на какой день недели (понедельник, вторник, …, субботу или воскресенье) приходится n-й день не високосного года, в котором первое января – понедельник. Если записать как day=n%7 то это подходит для всех чисел кроме кратных 7. т.е. при вводе чисел 7,14 и т.д. должно...
Если в строке левая и правая скобки идут рядом, удалить их из строки C++
Сгенерировать строку, длиной в 256 символов, которая состоит из случайной последовательности скобок разных видов: круглых, квадратных и фигурных. Проанализировать строку, и если в ней левая и права скобки одного вида идут рядом,удалить их из строки. Повторяйте процедуру, пока это возможно.
C++ класс Chess http://www.cyberforum.ru/cpp-beginners/thread654394.html
помогите пожалуйста разработать класс Chess. попробывал не получилось нужно его разработать под #include "ConsoleDrawHelper.h" ConsoleDrawHelper::ConsoleDrawHelper() : CellXSize(12), CellYSize(8), VerticalStandoff(0), HorizontalStandoff(0) { this->hOut = ::GetStdHandle(STD_OUTPUT_HANDLE); const COORD WindowSize = {150, 80}; // width and hight of the window
C++ setiosflags(ios::left) Почему setiosflags(ios::right) выравнивает числа по правой стороне а setiosflags(ios::left) не выравнивает по левой? for (int n=1; n<=10; n++) { int cube = n * n * n; cout << setw(2) << setiosflags(ios::right) << n; cout << setw(6) << setiosflags(ios::left) << cube << endl; // Не выравниваются цифры по левой стороне } подробнее

Показать сообщение отдельно
AnreyKazakov
Заблокирован
20.09.2012, 14:38  [ТС]     vector, list, deque
Еще вопрос по теме, в книжке сказано, что напрямую присвоить значение одного контейнера (например deque) другому (например vector) нельзя, если их тип отличается, а с помощью итераторов можно... главное чтобы их тип допускал преобразование например <char>-><int> и т.п. , можно либо методом assign(,), присвоить, либо при определении объекта, например:
C++
1
2
deque<char> deq1(10,"+100500");
vector<int> vec1(deq1.begin(),deq1.end());
Но, со списком, как я понимаю это не прокатывае, в связи с той же непоследовательностью элементов в памяти, вот бяку код выдает....
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <list>
#include <iterator>
#include <string>
using std::cout;using std::cin;using std::endl;using std::string;using std::getline;
using std::list;using std::vector;
int main(){
    list<string> list1(5,"+100500");
    cout<<"вывод списка:"<<endl;
    for(list<string>::iterator ix=list1.begin();ix!=list1.end();++ix)cout<<*ix<<" ";
    cout<<endl;
    vector<string> vec1(list1.begin(),list1.end());
    cout<<"вывод вектора"<<endl;
    for(vector<string>::iterator ix;ix!=vec1.end();++ix)cout<<*ix<<*ix<<" ";
    cout<<endl;
    return 0;
    }
Получается, что не все контейнеры можно присваивать друг другу?
 
Текущее время: 23:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru