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

Можно ли переделать маcсив под вектор? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Правило ЖИ, ШИ, ЧА, ЩА http://www.cyberforum.ru/cpp-beginners/thread959546.html
В русском языке, как правило, после букв Ж, Ч, Ш, Щ пишется И, А, У, а не Ы, Я, Ю. Проверить заданный текст на соблюдение этого правила и исправить ошибки (с учетом исключений: ЖЮРИ, БРОШЮРА, ПАРАШЮТ). Помогите сделать программу
C++ c++ Индекс массы тела Всем привет. сразу скажу что мой уровень знаний языков программирования практически 0 Пару дней назад начал читать книгу по c++ и вот сегодня решил написать программу в консольном приложении по расчету индекса массы тела. 1.#include <iostream> 2.#include <math.h> 3.using namespace std; 4.int main() 5.{ 6.setlocale(LC_ALL,"rus"); 7.double Вес, Рост; http://www.cyberforum.ru/cpp-beginners/thread959540.html
C++ С чего начать?
Сначала сделать выбор между одз, а потом найти в первом уравнении меньший или наоборот?
Что за ошибка? C++
Вроде все правильно #include "stdafx.h" #include<iostream> #include<math.h> #include<conio.h> using namespace std; int _tmain(int argc, _TCHAR* argv)
C++ СТЭК не фурычит http://www.cyberforum.ru/cpp-beginners/thread959530.html
Привет! Такая проблема, решил написать стэк, в элементах которого лежат указатели на массив строк.Но что-то не так либо пишет мусор либо еще что. А если в стэке(fname) лежит просто string то после нескольких вводов он пишет \320 . но после тем не менее продолжает заполнять стэк именами#include <iostream> #include<stdio.h> #include<stdlib.h> #include<string.h> using namespace std; ...
C++ Один класс не видит другой. Преобразование класса Всем доброго времени суток. В общем вот есть такой код: #include <cmath> using namespace std; class Decart; class Polar { private: double distance, angle; подробнее

Показать сообщение отдельно
Croessmah
Модератор
Эксперт CЭксперт С++
12698 / 7172 / 800
Регистрация: 27.09.2012
Сообщений: 17,683
Записей в блоге: 2
Завершенные тесты: 1
23.09.2013, 00:42     Можно ли переделать маcсив под вектор?
Цитата Сообщение от mixon-21 Посмотреть сообщение
целую колоду карт из 52 штук?
угрюмый пример:
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
 
 
class Card {
public:
   enum SUITS {
      spades , //Пики
      hearts , //Червы
      clubs , //Трефы
      diamonds , //Бубны
   } ;
 
   enum NOMINALS {
      two = 2 , // 2
      threee ,
      four ,
      five ,
      six ,
      seven ,
      eight ,
      nine ,
      ten , //10
      jack , //Валет
      queen , //Дама
      king , //Король
      ace , //Туз
   } ;
   SUITS suit ( ) {
      return mSuit ;
   }
   NOMINALS nominal ( ) {
      return mNominal ;
   }
   Card ( SUITS argSuit , NOMINALS argNominal ) : mSuit ( argSuit ) , mNominal ( argNominal ) {
   }
   std::string to_string ( ) {
      //the NOMINAL of SUIT
      static const std::string suit_names[] = { "spades" , "hearts" , "clubs" , "diamonds" } ;
      static const std::string nominal_names[] = { "none" , "none" , "two" , "three" , "four" , "five" , "six" , "seven" , "eight" , "nine" , "ten" , "jack" , "quin" , "king" , "ace" } ;
      return "the " + nominal_names [ mNominal ] + " of " + suit_names [ mSuit ];
   }
private:
   SUITS mSuit ;
   NOMINALS mNominal ;
} ;
 
 
class CardDeck {
   std :: vector < Card > deck ;
public:
   CardDeck ( ) {
      recreate ( ) ;
   }
   void recreate ( ) {
      deck.clear ( ) ;
      for ( int i = Card::SUITS::spades ; i <= Card::SUITS::diamonds ; ++i ) {
         for ( int j = Card::NOMINALS::two ; j <= Card::NOMINALS::ace ; ++j )
            deck.push_back ( Card ( Card::SUITS ( i ) , Card::NOMINALS ( j ) ) ) ;
      }
   }
   void shuffle ( ) {
      std :: random_shuffle ( deck.begin ( ) , deck.end ( ) ) ;
   }
   Card operator[] ( size_t index ) const {
      return deck [ index ] ;
   }
   size_t count ( ) {
      return deck.size ( ) ;
   }
} ;
 
 
int main(){
   CardDeck deck ;
   for ( size_t i = 0 ; i < deck.count ( ) ; ++i )
      std :: cout << deck [ i ].to_string ( ) << std :: endl ;
   std::cout << "\n\nafter suffle:\n" ;
   deck.shuffle ( ) ;
   for ( size_t i = 0 ; i < deck.count ( ) ; ++i )
      std :: cout << deck [ i ].to_string ( ) << std :: endl ;
}
 
Текущее время: 17:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru