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

Стек: Ошибка в объявлении getch - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сумма элементов массива, имеющих в своей записи все одинаковые цифры http://www.cyberforum.ru/cpp-beginners/thread1170424.html
Определить сумму элементов массива, имеющих в своей записи все одинаковые цифры и расположенных между двумя элементами с максимальным значением, не включая сами эти элементы
C++ C++ Шифр Цезаря Help нужно написать программу на С++, которая шифрует русские и английские слова. Делает запрос на сдвиг. Зашифрованный код переводил обратно в нормальный текст. (С запросами и выводами).(Шифр Цезаря). Уровень реализации новичка. Заранее благодарен. http://www.cyberforum.ru/cpp-beginners/thread1170411.html
C++ Дана строка до точки, группа символов в которой между пробелами считается словом
Дана строка до точки, группа символов в которой между пробелами считается словом, знаки препинания от слова пробелом не отделяются. Удалить из строки все пробелы, расположенные перед знаком препинания.
Организация исходников C++
Не нашел в гугле толковый инфы. Вот есть у меня допустим два класса, нейрон и перцептрон. Описал я их в .h. Реализовал в .cpp одном. Но может лучше реализовать в разных .cpp? Т.е. нейрон в neyron.cpp, а перцептрон в perceptron.cpp? Или если описаны в одном хэдере, то и реализовывать в одном cpp? Как лучше в общем? Проект небольшой, около 2к строк.
C++ Создание классов в С++. Раздельная компиляция http://www.cyberforum.ru/cpp-beginners/thread1170367.html
При создании класса C++ в VS создается два файла, "<имя_класса>.h" и "<имя_класса>.cpp", зачем они ? В каком сам класс писать? Простите за глупый вопрос, но только начал разбираться и вот сразу такой момент в моей книге про это не слова :-) Даже странно.
C++ Метод "игрок берет все карты" не срабатывает как надо void Player::MoveAllCardFromArea(Player x) //переместить карты из полей обоих игроков в собственность игрока, вызывающего функцию (игрок берет карты) { while (GetAreaSize()>0) //пока есть карты в поле в AddCard(GetAndDeleteArea()); //срабатывает нормально while (x.GetAreaSize()>0) AddCard(x.GetAndDeleteArea()); //ВОТ - возвращает... подробнее

Показать сообщение отдельно
deadlinishe
 Аватар для deadlinishe
7 / 7 / 1
Регистрация: 03.05.2014
Сообщений: 143
08.05.2014, 22:59     Стек: Ошибка в объявлении getch
system("payse");


Добавлено через 1 минуту
Реализация стека
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
//---------------------------------------------------------------------------
 
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
 
 
int main(int argc, char* argv[])
{
  int * x; // стек
  int * y ; // удаляемые / добавляемые элементы
  int * z ; // результат
 
  int N , L , K ;
 
  do
  {
  cout << "N="; cin >> N;
  cout << "L="; cin >> L;
  cout << "K="; cin >> K;
  }
  while ( (L + K) > N || L < 1 || L > N ) ; // ввод пока некорректные данные
 
  // выделение памяти
  x = new int [N];
  y = new int [K];
 
  cout << "\n\nVvod steka" << endl;
 
  for (int i = 0 ; i < N ; i++)
  {
        cout << "x[" << i <<"]="; cin >> x[i];
  }
 
  cout << "\n\n1-dobavlenie" << endl;
  cout << "2-udalenie" << endl;
 
  int index;
  cin >> index;
 
  clrscr();
 
 
  // dobavlenie
  if ( index  == 1)
  {
      z = new int [K + N] ; // результат
      for (int i = 0 ; i < K ; i++)
      {
            cout << "Element[" << i <<"]="; cin >> y[i];
      }
 
    // извлекаем из стека элементы от N до L в обратном порядке
    for (int i = N - 1 ; i >= L ; i--)
      z[i + K] = x[i];
 
    // добавляемые и добавляем в результат
    for (int i = 0 ; i < K ; i++)
      z[L + i] = y[i];
 
      // добавляем оставшиеся элементы
    for (int i = L-1 ; i >= 0 ; i--)
      z[i] =x[i];
 
      cout << "\n\nResultat: " << endl;
      for (int i = 0 ; i < N + K; i++)
      cout << z[i] << " ";
  }
  else  // удаление
  {
 
      z = new int [N- K] ; // результат
      
          // извлекаем из стека элементы от N - 1 до L+K  и добавляем в результат
    for (int i = N - 1 ; i >= L + K ; i--)
      z[i - K] = x[i];
 
      // извлекаем удаляемые элементы и добавляем в массив
    for (int i = L + K -1  ; i >= L ; i--)
      y[i - L] = x[i];
 
      //   добавляем оставшиеся в результат
        for (int i = L -1  ; i >= 0 ; i--)
        z[i] = x[i];
 
        cout << "\n\nResultat: " << endl;
      for (int i = 0 ; i < N- K ; i++)
      cout << z[i] << " ";
 
      cout << "\n\nUdaleno: " << endl;
      for (int i = 0 ; i < K; i++)
      cout << y[i] << " ";
  }
 
  
   getch();
  delete [] x;
  delete [] y;
  delete [] z ; // освобождение памяти
 
 
return 0;
}
//---------------------------------------------------------------------------
 
Текущее время: 01:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru